JP4892072B2 - ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法 - Google Patents
ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法 Download PDFInfo
- Publication number
- JP4892072B2 JP4892072B2 JP2010068512A JP2010068512A JP4892072B2 JP 4892072 B2 JP4892072 B2 JP 4892072B2 JP 2010068512 A JP2010068512 A JP 2010068512A JP 2010068512 A JP2010068512 A JP 2010068512A JP 4892072 B2 JP4892072 B2 JP 4892072B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- data
- block data
- address
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
(1)ホスト装置は書き込みデータをストレージ装置に転送する。
(2)ストレージ装置は、ホスト装置からのデータに基づき、当該データの代表値を生成する。
(1)ホスト装置は、書き込みデータに基づき、当該データの代表値を生成する。
(2)ホスト装置は、ストレージ装置に格納済みのデータの代表値を、ストレージ装置から読み込む。なお、ストレージ装置に代表値のインデックスを格納しておくことにより、ホスト装置による代表値の読み込み・比較の高速化を図るのが一般的である。
現在の主流は第1の手法だが、例えば非特許文献2には、第2の手法が開示されている。
図1は本発明の一実施形態に係るストレージシステムの構成を示すブロック図である。このストレージシステムは、ストレージ装置10とホスト装置20とから構成されている。ストレージ装置10とホスト装置20とは、例えばSANのようなネットワーク30によって接続されている。なお、ストレージ装置10とホスト装置20とが、ネットワーク30以外の接続手段により接続されていても構わない。また、ホスト装置20を含む複数のホスト装置が、ストレージ装置10と接続される構成、つまりストレージ装置10が複数のホスト装置によって共有される構成であっても構わない。
通信部11は、ホスト装置20とストレージ装置10との間の通信を行う。この通信は、ホスト装置20からのデータの書き込み要求及び読み出し要求の受信を含む。
比較部12は、ブロックデータ同士の比較を行い、同一性を判定する。
まず、データ書き込み処理の手順について、図5乃至図7のフローチャートを参照して説明する。図5はストレージ装置10にデータを書き込む際のホスト装置20側でのデータ書き込み処理の手順を示すフローチャート、図6及び図7はストレージ装置10にデータを書き込む際のストレージ装置10側での、それぞれ第1種及び第2種のデータ書き込み処理の手順を示すフローチャートである。
まず、ホスト装置20側でのデータ書き込み処理について、図5のフローチャートを参照して説明する。
今、ホスト装置20内のユーザ層27(より詳細には、ユーザ層27に属する、例えばアプリケーションのような要素)から当該ホスト装置20内のドライバ層26に対して、書き込み要求が発行されたものとする。このときホスト装置20は、ストレージ装置10に格納されている論理ディスクボリュームAまたはBのいずれか一方を、当該ホスト装置20からストレージ装置10に対する要求により、リザーブしているものとする。この場合、上記書き込み要求は、データと、当該データが書き込まれるべき(現在ホスト装置20によってリザーブされている)論理ディスクボリューム上のアドレス(開始アドレス)と、当該データのデータ長(セクタ数)とを引数として持つ。データは、ブロック(セクタ)を単位に処理可能である。
1.2.1.第1種のデータ書き込み処理
次に、ストレージ装置10側での第1種のデータ書き込み処理について、図6のフローチャートを参照して説明する。
今、ホスト装置20内の制御部25からストレージ装置10に対して、第1種の書き込み要求が通信部21経由で送信されたものとする。この第1種の書き込み要求は、ストレージ装置10内の通信部11で受信されて、当該ストレージ装置10内の制御部15に渡される。第1種の書き込み要求は、前述したように、書き込みブロックデータのアドレスと当該書き込みブロックデータとを引数として持つ。つまり第1種の書き込み要求は、書き込みブロックデータのアドレスと当該書き込みブロックデータとを含む。
次に、ストレージ装置10側での第2種のデータ書き込み処理について、図7のフローチャートを参照して説明する。
今、ホスト装置20内の制御部25からストレージ装置10に対して、第2種の書き込み要求が通信部21経由で送信されたものとする。この第2種の書き込み要求は、ストレージ装置10内の通信部11で受信されて、当該ストレージ装置10内の制御部15に渡される。第2種の書き込み要求は、前述したように、書き込みブロックデータのアドレスと当該書き込みブロックデータのブロック識別子とを引数として持つ。つまり第2種の書き込み要求は、書き込みブロックデータのアドレスとブロック識別子とを含む。
次に、上述のデータ書き込み処理の例について説明する。
1.3.1.データ書き込み処理の第1の例
まず、データ書き込み処理の第1の例について、図2乃至図7に加えて、図8乃至図10を参照して説明する。
今、ストレージ装置10によって構成される論理ディスクボリュームA及びBが図2の状態にあり、ホスト装置20が論理ディスクボリュームAをリザーブしているものとする。このとき、ストレージ装置10の格納部14には、図3に示される状態のブロックテーブル141及び論理ディスクボリュームテーブル142が格納され、ホスト装置20のキャッシュ部24には、図4に示される状態のブロックテーブルキャッシュ241及び論理ディスクボリュームテーブルキャッシュ242が格納されているものとする。
次に、データ書き込み処理の第2の例について、図5乃至図10に加えて、図11乃至図13を参照して説明する。
まず、図8乃至図10に示したような状態で、ホスト装置20が、例えば論理ディスクボリュームBの第2セクタ(アドレス2)にブロックデータ“DATAF”を書き込んだ後の、論理ディスクボリュームA及びBの状態を図11に示す。同様に、ブロックテーブルキャッシュ241及び論理ディスクボリュームテーブルキャッシュ242の状態を図12に示し、ブロックテーブル141及び論理ディスクボリュームテーブル142の状態を図13に示す。このとき、ホスト装置20が論理ディスクボリュームBをリザーブしているものとする。
次に、ストレージ装置10に格納されたデータを読み出すためのデータ読み出し処理の手順について、図14及び図15のフローチャートを参照して説明する。図14はストレージ装置10からデータを読み出す際のホスト装置20側でのデータ読み出し処理の手順を示すフローチャート、図15はストレージ装置10からデータを読み出す際のストレージ装置10側でのデータ読み出し処理の手順を示すフローチャートである。
2.1.ホスト装置側のデータ読み出し処理
まず、ホスト装置20側でのデータ読み出し処理について、図14のフローチャートを参照して説明する。
今、ホスト装置20内のユーザ層27(より詳細には、ユーザ層27に属する、例えばアプリケーションのような要素)から当該ホスト装置20内のドライバ層26に対して、読み出し要求が発行されたものとする。この読み出し要求は、読み出されるべきデータが格納されている論理ディスクボリューム上のアドレス(開始アドレス)と、当該データのデータ長(セクタ数)とを引数として持つ。
次にストレージ装置10側でのデータ読み出し処理について、図15のフローチャートを参照して説明する。
今、ホスト装置20内の制御部25からストレージ装置10に対して、読み出し要求が通信部21経由で送信されたものとする。この読み出し要求は、ストレージ装置10内の通信部11で受信されて、当該ストレージ装置10内の制御部15に渡される。読み出し要求は、前述したように、読み出されるべきブロックデータのアドレスを引数として持つ。つまり読み出し要求は、読み出されるべきブロックデータのアドレスを含む。
次に、データ読み込み処理の例について、図11乃至図15に加えて、図16乃至図18を参照して説明する。
今、ストレージ装置10によって構成される論理ディスクボリュームA及びBが図11の状態にあり、ホスト装置20が論理ディスクボリュームAをリザーブしているものとする。このとき、ホスト装置20のキャッシュ部24には、図12に示される状態のブロックテーブルキャッシュ241及び論理ディスクボリュームテーブルキャッシュ242が格納され、ストレージ装置10の格納部14には、図13に示される状態のブロックテーブル141及び論理ディスクボリュームテーブル142が格納されているものとする。
するとホスト装置20では、論理ディスクボリュームテーブル142のサブテーブルキャッシュ242Aに、論理ディスクボリュームAのアドレス2とブロックデータ“DATAA”のブロック識別子“IDA”との対が設定されたエントリが登録される(ステップ1410)。ここでは、図12に示されるサブテーブルキャッシュ242A内の、論理ディスクボリュームAの第4セクタ(アドレス4)のエントリが捨てられて、アドレス2とブロック識別子“IDA”との対が設定されたエントリが登録される。つまり、図12に示されるサブテーブルキャッシュ242A内の、論理ディスクボリュームAの第4セクタ(アドレス4)のエントリが、キャッシュエントリの置換により、図17に示すように、アドレス2とブロック識別子“IDA”の対が登録されたエントリ(サブテーブルキャッシュ242A内でハッチングが施されているエントリ)に置き換えられる。
次に、上記実施形態の第1の変形例について、図1を援用して説明する。
第1の変形例が上記実施形態と相違する点は、バッファ部28が用いられる点にある。バッファ部28は、図1に示すように、ホスト装置20のドライバ層26に備えられているものとする。このバッファ部28は、制御部25により制御される。制御部25は、ホスト装置20内のユーザ層27からドライバ層26に発行される、データ(書き込みデータ)を含む書き込み要求(例えばユーザ層27内のアプリケーションなどからの書き込み要求)を、バッファ部28内に格納(バッファリング)する。
次に、上記実施形態の第2の変形例について、図1を援用して説明する。
第2の変形例が上記実施形態と相違する点は、代表値生成部29が用いられる点にある。図1に示すように、代表値生成部29はホスト装置20のドライバ層26に備えられているものとする。代表値生成部29は、ホスト装置20の制御部25により利用される。
また第2の変形例によれば、ホスト装置20で生成したブロック代表値をストレージ装置10が利用する構成としているため、当該ストレージ装置10側でのブロック代表値生成が不要になる。
次に、上記実施形態の第3の変形例について、図1を援用して説明する。ここでは、ストレージ装置10が、ホスト装置20を含む複数のホスト装置によって共有されるものとする。
Claims (9)
- キャッシュを備えたホスト装置と連携して重複データを排除するストレージ装置であって、
ブロックデータごとに、当該ブロックデータに固有のブロック識別子と当該ブロックデータとを対応付けて格納する第1の記憶手段と、
ブロックデータのアドレスごとに、当該アドレスと当該アドレスに対応するブロックデータに固有のブロック識別子とを対応付けて格納する第2の記憶手段と、
前記ホスト装置からの書き込み要求を含む各種の要求を処理する制御手段と、
前記制御手段によって指定されたブロックデータに固有のブロック識別子を生成するブロック識別子生成手段と、
前記制御手段によって指定されたブロックデータを前記第1の記憶手段に格納されているブロックデータと比較する比較手段とを具備し、
前記制御手段は、
ブロックデータを単位に処理可能なデータの前記ストレージ装置への書き込みを指定する書き込み要求が前記ホスト装置で発生し、前記書き込みが指定されたデータに含まれている第1のブロックデータが、前記ホスト装置の前記キャッシュに格納されているブロックデータのいずれとも一致しないために、前記第1のブロックデータと当該第1のブロックデータの第1のアドレスとを含む第1種の書き込み要求が前記ホスト装置から前記ストレージ装置に送信された場合、前記第1のブロックデータを指定して前記比較手段によるブロックデータ比較を行わせ、このブロックデータ比較の結果、前記第1のブロックデータが、前記第1の記憶手段に格納されているブロックデータのいずれとも一致しない場合、前記ブロック識別子生成手段により当該第1のブロックデータに固有の第1のブロック識別子を生成させて、前記第1のブロック識別子と前記第1のブロックデータとを対応付けて前記第1の記憶手段に格納し、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて前記第2の記憶手段に格納する一方、前記第1のブロック識別子と前記第1のブロックデータとを対応付けて、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて、それぞれ前記ホスト装置の前記キャッシュに格納させるために、前記第1のブロック識別子を前記ホスト装置に送信し、
前記書き込みが指定されたデータに含まれている第2のブロックデータが、前記ホスト装置の前記キャッシュに格納されているブロックデータのいずれか1つと一致した結果、前記第2のブロックデータに固有の第2のブロック識別子と前記第2のブロックデータの第2のアドレスとを含む第2種の書き込み要求が前記ホスト装置から前記ストレージ装置に送信された場合、前記第2のアドレスと前記第2のブロック識別子とを対応付けて前記第2の記憶手段に格納する
ことを特徴とするストレージ装置。 - 前記制御手段は、前記ブロックデータ比較の結果、前記第1のブロックデータが、前記第1の記憶手段に格納されているブロックデータのうちの第3のブロックデータと一致した場合、前記第3のブロックデータと対応付けて前記第1の記憶手段に格納されている第3のブロック識別子を前記第1のアドレスと対応付けて前記第2の記憶手段に格納する一方、前記第3のブロック識別子と前記第3のブロックデータとを対応付けて、且つ前記第1のアドレスと前記第3のブロック識別子とを対応付けて、それぞれ前記ホスト装置の前記キャッシュに格納させるために、前記第3のブロック識別子を前記ホスト装置に送信することを特徴とする請求項1記載のストレージ装置。
- 前記制御手段は、ブロックデータを単位に処理可能なデータの前記ストレージ装置からの読み出しを指定する第1の読み出し要求が前記ホスト装置で発生し、前記読み出しが指定されたデータに含まれる第4のブロックデータが前記ホスト装置の前記キャッシュに格納されていないために、前記第4のブロックデータの第4のアドレスを含む第2の読み出し要求が前記ホスト装置から前記ストレージ装置に送信された場合、前記第4のアドレスに対応付けて前記第2の記憶手段に格納されている第4のブロック識別子を取得すると共に、前記第4のブロック識別子に対応付けて前記第1の記憶手段に格納されているブロックデータを前記第4のブロックデータとして取得して、前記取得した第4のブロック識別子及び前記第4のブロックデータを前記ホスト装置に送信することを特徴とする請求項2記載のストレージ装置。
- 前記第1の記憶手段には、ブロックデータに基づいて生成された、当該ブロックデータよりもサイズが小さいブロック代表値が、当該ブロックデータに固有のブロック識別子に加えて、当該ブロックデータに対応付けて格納されており、
前記第1種の書き込み要求は、前記第1のブロックデータに基づいて前記ホスト装置で生成された第1のブロック代表値を、前記第1のブロックデータ及び前記第1のアドレスに加えて含んでおり、
前記比較手段は、前記制御手段によってブロック代表値が指定された場合、当該指定されたブロック代表値を前記第1の記憶手段に格納されているブロック代表値と順次比較し、
前記制御手段は、前記第1のブロックデータを指定する前に、前記第1のブロック代表値を指定して前記比較手段によるブロック代表値比較を行わせ、このブロック代表値比較の結果、前記第1のブロック代表値が前記第1の記憶手段に格納されているブロック代表値のいずれとも一致しない場合、前記第1のブロック識別子と前記第1のブロック代表値と前記第1のブロックデータとを対応付けて前記第1の記憶手段に格納し、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて前記第2の記憶手段に格納することを特徴とする請求項1記載のストレージ装置。 - 前記制御手段は、前記ブロック代表値比較により、前記第1のブロック代表値に一致する第4のブロック代表値が検出された場合、前記第4のブロック代表値と対応付けて前記第1の記憶手段に格納されている第4のブロックデータを前記比較手段により前記第1のブロックデータと比較させ、前記第1のブロックデータと前記第4のブロックデータとが一致した場合、前記第4のブロックデータと対応付けて前記第1の記憶手段に格納されている第4のブロック識別子を前記第1のアドレスと対応付けて前記第2の記憶手段に格納する一方、前記第4のブロック識別子と前記第4のブロック代表値と前記第4のブロックデータとを対応付けて、且つ前記第1のアドレスと前記第4のブロック識別子とを対応付けて、それぞれ前記ホスト装置の前記キャッシュに格納させるために、前記第4のブロック識別子及び前記第4のブロック代表値を前記ホスト装置に送信することを特徴とする請求項4記載のストレージ装置。
- 前記制御手段は、前記ホスト装置で前記書き込み要求が発生した際に必要な重複排除のための処理のうちの一部の処理であって、前記書き込みが指定されたデータに含まれているブロックデータが前記ホスト装置の前記キャッシュに格納されているかの判定を含む一部の処理を前記ホスト装置に委譲するための指示を前記ホスト装置に与えることを特徴とする請求項1記載のストレージ装置。
- 前記制御手段は、前記ホスト装置からのストレージ装置に対するデータの書き込みまたは読み出しが他のホスト装置と競合しない場合に、前記委譲するための指示を前記ホスト装置に与えることを特徴とする請求項6記載のストレージ装置。
- ストレージ装置とホスト装置とを備え、前記ストレージ装置が前記ホスト装置と連携して重複データを排除するストレージシステムであって、
前記ストレージ装置は、
ブロックデータごとに、当該ブロックデータに固有のブロック識別子と当該ブロックデータとを対応付けて格納する第1の記憶手段と、
ブロックデータのアドレスごとに、当該アドレスと当該アドレスに対応するブロックデータに固有のブロック識別子とを対応付けて格納する第2の記憶手段と、
前記ホスト装置からの書き込み要求を含む各種の要求を処理する第1の制御手段と、
前記第1の制御手段によって指定されたブロックデータに固有のブロック識別子を生成するブロック識別子生成手段と、
前記第1の制御手段によって指定されたブロックデータを前記第1の記憶手段に格納されているブロックデータと比較する第1の比較手段とを具備し、
前記ホスト装置は、
ブロックデータごとに、当該ブロックデータに固有のブロック識別子と当該ブロックデータとを対応付けて格納する第1のキャッシュと、
ブロックデータのアドレスごとに、当該アドレスと当該アドレスに対応するブロックデータに固有のブロック識別子とを対応付けて格納する第2のキャッシュと、
前記ホスト装置で発生した書き込み要求を含む各種の要求を処理する第2の制御手段と、
前記第2の制御手段によって指定されたブロックデータを前記第1のキャッシュに格納されているブロックデータと比較する第2の比較手段とを具備し、
前記第2の制御手段は、
ブロックデータを単位に処理可能なデータの前記ストレージ装置への書き込みを指定する書き込み要求が前記ホスト装置で発生した場合、前記書き込みが指定されたデータを構成するブロックデータごとに、前記第2の比較手段によるブロックデータ比較を行わせ、
前記第2の比較手段によるブロックデータ比較の結果、前記書き込みが指定されたデータに含まれている第1のブロックデータが、前記ホスト装置の前記第1のキャッシュに格納されているブロックデータのいずれとも一致しない場合には、前記第1のブロックデータと当該第1のブロックデータの第1のアドレスとを含む第1種の書き込み要求を前記ホスト装置から前記ストレージ装置に送信し、
前記第2の比較手段によるブロックデータ比較の結果、前記書き込みが指定されたデータに含まれている第2のブロックデータが、前記ホスト装置の前記第1のキャッシュに格納されているブロックデータのいずれか1つと一致した場合には、前記一致したブロックデータと対応付けて前記第1のキャッシュに格納されている第2のブロック識別子と前記第2のブロックデータの第2のアドレスとを含む第2種の書き込み要求を前記ホスト装置から前記ストレージ装置に送信し、
前記第1種の書き込み要求に対する完了応答として前記第1のブロックデータに固有の第1のブロック識別子が前記ストレージ装置から返された場合、前記第1のブロック識別子と前記第1のブロックデータとを対応付けて前記第1のキャッシュに格納し、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて前記第2のキャッシュに格納し、
前記第2種の書き込み要求に対する前記ストレージ装置からの完了応答に応じて、前記第2のアドレスと前記第2のブロック識別子とを対応付けて前記第2のキャッシュに格納し、
前記第1の制御手段は、
前記第1種の書き込み要求が前記ストレージ装置で受信された場合、前記第1のブロックデータを指定して前記第1の比較手段によるブロックデータ比較を行わせ、このブロックデータ比較の結果、前記第1のブロックデータが、前記第1の記憶手段に格納されているブロックデータのいずれとも一致しない場合、前記ブロック識別子生成手段により当該第1のブロックデータに固有の前記第1のブロック識別子を生成させて、前記第1のブロック識別子と前記第1のブロックデータとを対応付けて前記第1の記憶手段に格納し、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて前記第2の記憶手段に格納する一方、前記第1種の書き込み要求に対する完了応答として前記第1のブロック識別子を前記ホスト装置に送信し、
前記第2種の書き込み要求が前記ストレージ装置で受信された場合、前記第2のアドレスと前記第2のブロック識別子とを対応付けて前記第2の記憶手段に格納する一方、前記第2種の書き込み要求に対する完了応答を前記ホスト装置に送信する
ことを特徴とするストレージシステム。 - 第1の比較手段、ブロック識別子生成手段及び第1の制御手段を含むストレージ装置と、第2の比較手段及び第2の制御手段を含むホスト装置とを備えたストレージシステムにおいて、前記ストレージ装置が前記ホスト装置と連携して重複データを排除するための重複排除方法であって、
ブロックデータを単位に処理可能なデータの前記ストレージ装置への書き込みを指定する書き込み要求が前記ホスト装置で発生した場合、前記書き込みが指定されたデータを構成するブロックデータごとに、前記第2の比較手段が、当該ブロックデータを、前記ホスト装置に含まれている第1のキャッシュに格納されているブロックデータと比較するステップと、
前記第2の比較手段によるブロックデータ比較の結果、前記書き込みが指定されたデータに含まれている第1のブロックデータが、前記第1のキャッシュに格納されているブロックデータのいずれとも一致しない場合、前記第1のブロックデータと当該第1のブロックデータの第1のアドレスとを含む第1種の書き込み要求を、前記第2の制御手段が前記ホスト装置から前記ストレージ装置に送信するステップと、
前記第1種の書き込み要求が前記ストレージ装置で受信された場合、前記第1の比較手段が、前記第1のブロックデータを、前記ストレージ装置に含まれている第1の記憶手段に格納されているブロックデータと比較するステップと、
前記第1の比較手段によるブロックデータ比較の結果、第1のブロックデータが、前記第1の記憶手段に格納されているブロックデータのいずれとも一致しない場合、前記ブロック識別子生成手段が当該第1のブロックデータに固有の第1のブロック識別子を生成するステップと、
前記第1の制御手段が、前記第1のブロック識別子と前記第1のブロックデータとを対応付けて前記第1の記憶手段に格納し、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて、前記ストレージ装置に含まれている第2の記憶手段に格納するステップと、
前記格納するステップの後、前記第1の制御手段が、前記第1種の書き込み要求に対する完了応答として前記第1のブロック識別子を前記ホスト装置に送信するステップと、
前記第1種の書き込み要求に対する完了応答を受けて、前記第2の制御手段が、前記第1のブロック識別子と前記第1のブロックデータとを対応付けて前記第1のキャッシュに格納し、且つ前記第1のアドレスと前記第1のブロック識別子とを対応付けて前記ホスト装置に含まれている第2のキャッシュに格納するステップと、
前記第2の比較手段によるブロックデータ比較の結果、前記書き込みが指定されたデータに含まれている第2のブロックデータが、前記第1のキャッシュに格納されているブロックデータのいずれか1つと一致した場合には、前記一致したブロックデータと対応付けて前記第1のキャッシュに格納されている第2のブロック識別子と前記第2のブロックデータの第2のアドレスとを含む第2種の書き込み要求を、前記第2の制御手段が前記ホスト装置から前記ストレージ装置に送信するステップと、
前記第2種の書き込み要求が前記ストレージ装置で受信された場合、前記第1の制御手段が、前記第2のアドレスと前記第2のブロック識別子とを対応付けて前記第2の記憶手段に格納するステップと、
前記第2のアドレスと前記第2のブロック識別子との格納の後、前記第1の制御手段が、前記第2種の書き込み要求に対する完了応答を前記ホスト装置に送信するステップと、
前記第2種の書き込み要求に対する完了応答を受けて、前記第2の制御手段が、前記第2のアドレスと前記第2のブロック識別子とを対応付けて前記第2のキャッシュに格納するステップと
を具備することを特徴とする重複排除方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010068512A JP4892072B2 (ja) | 2010-03-24 | 2010-03-24 | ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法 |
US13/069,921 US8447742B2 (en) | 2010-03-24 | 2011-03-23 | Storage apparatus which eliminates duplicated data in cooperation with host apparatus, storage system with the storage apparatus, and deduplication method for the system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010068512A JP4892072B2 (ja) | 2010-03-24 | 2010-03-24 | ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011203842A JP2011203842A (ja) | 2011-10-13 |
JP4892072B2 true JP4892072B2 (ja) | 2012-03-07 |
Family
ID=44657516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010068512A Active JP4892072B2 (ja) | 2010-03-24 | 2010-03-24 | ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8447742B2 (ja) |
JP (1) | JP4892072B2 (ja) |
Families Citing this family (170)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8621275B1 (en) | 2010-08-06 | 2013-12-31 | Open Invention Network, Llc | System and method for event-driven live migration of multi-process applications |
US8584145B1 (en) * | 2010-08-06 | 2013-11-12 | Open Invention Network, Llc | System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications |
US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
US8468318B2 (en) | 2010-09-15 | 2013-06-18 | Pure Storage Inc. | Scheduling of I/O writes in a storage environment |
US11275509B1 (en) | 2010-09-15 | 2022-03-15 | Pure Storage, Inc. | Intelligently sizing high latency I/O requests in a storage environment |
US8589655B2 (en) | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of I/O in an SSD environment |
US8589625B2 (en) | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of reconstructive I/O read operations in a storage environment |
US12008266B2 (en) | 2010-09-15 | 2024-06-11 | Pure Storage, Inc. | Efficient read by reconstruction |
US8732426B2 (en) | 2010-09-15 | 2014-05-20 | Pure Storage, Inc. | Scheduling of reactive I/O operations in a storage environment |
US8775868B2 (en) | 2010-09-28 | 2014-07-08 | Pure Storage, Inc. | Adaptive RAID for an SSD environment |
US9244769B2 (en) | 2010-09-28 | 2016-01-26 | Pure Storage, Inc. | Offset protection data in a RAID array |
US9317377B1 (en) * | 2011-03-23 | 2016-04-19 | Riverbed Technology, Inc. | Single-ended deduplication using cloud storage protocol |
US8639861B1 (en) * | 2011-03-31 | 2014-01-28 | Emc Corporation | Pseudo writing system and method |
US11636031B2 (en) | 2011-08-11 | 2023-04-25 | Pure Storage, Inc. | Optimized inline deduplication |
US8930307B2 (en) * | 2011-09-30 | 2015-01-06 | Pure Storage, Inc. | Method for removing duplicate data from a storage array |
US8589640B2 (en) * | 2011-10-14 | 2013-11-19 | Pure Storage, Inc. | Method for maintaining multiple fingerprint tables in a deduplicating storage system |
US8620886B1 (en) * | 2011-09-20 | 2013-12-31 | Netapp Inc. | Host side deduplication |
US8719540B1 (en) | 2012-03-15 | 2014-05-06 | Pure Storage, Inc. | Fractal layout of data blocks across multiple devices |
JP5853819B2 (ja) * | 2012-03-29 | 2016-02-09 | 富士通株式会社 | 制御プログラム、制御方法、記憶制御装置および情報処理システム |
US8996881B2 (en) | 2012-04-23 | 2015-03-31 | International Business Machines Corporation | Preserving redundancy in data deduplication systems by encryption |
US10133747B2 (en) | 2012-04-23 | 2018-11-20 | International Business Machines Corporation | Preserving redundancy in data deduplication systems by designation of virtual device |
US9262428B2 (en) | 2012-04-23 | 2016-02-16 | International Business Machines Corporation | Preserving redundancy in data deduplication systems by designation of virtual address |
US9779103B2 (en) | 2012-04-23 | 2017-10-03 | International Business Machines Corporation | Preserving redundancy in data deduplication systems |
US8930612B2 (en) | 2012-05-31 | 2015-01-06 | Seagate Technology Llc | Background deduplication of data sets in a memory |
US10037279B1 (en) * | 2012-06-20 | 2018-07-31 | EMC IP Holding Company LLC | Host device caching of a business process data |
US9465737B1 (en) * | 2012-07-02 | 2016-10-11 | Toshiba Corporation | Memory systems including a duplicate removing filter module that is separate from a cache module |
US8745415B2 (en) | 2012-09-26 | 2014-06-03 | Pure Storage, Inc. | Multi-drive cooperation to generate an encryption key |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
US9805048B2 (en) * | 2012-10-18 | 2017-10-31 | Oracle International Corporation | System and method for managing a deduplication table |
US11768623B2 (en) | 2013-01-10 | 2023-09-26 | Pure Storage, Inc. | Optimizing generalized transfers between storage systems |
US11733908B2 (en) | 2013-01-10 | 2023-08-22 | Pure Storage, Inc. | Delaying deletion of a dataset |
US9063967B2 (en) | 2013-01-10 | 2015-06-23 | Pure Storage, Inc. | Performing copies in a storage system |
US10908835B1 (en) | 2013-01-10 | 2021-02-02 | Pure Storage, Inc. | Reversing deletion of a virtual machine |
US9606910B2 (en) | 2013-01-17 | 2017-03-28 | Hitachi, Ltd. | Method and apparatus for data reduction |
US9817728B2 (en) | 2013-02-01 | 2017-11-14 | Symbolic Io Corporation | Fast system state cloning |
US9304703B1 (en) | 2015-04-15 | 2016-04-05 | Symbolic Io Corporation | Method and apparatus for dense hyper IO digital retention |
US9467294B2 (en) * | 2013-02-01 | 2016-10-11 | Symbolic Io Corporation | Methods and systems for storing and retrieving data |
US10133636B2 (en) | 2013-03-12 | 2018-11-20 | Formulus Black Corporation | Data storage and retrieval mediation system and methods for using same |
US10365858B2 (en) | 2013-11-06 | 2019-07-30 | Pure Storage, Inc. | Thin provisioning in a storage device |
US11128448B1 (en) | 2013-11-06 | 2021-09-21 | Pure Storage, Inc. | Quorum-aware secret sharing |
US10263770B2 (en) | 2013-11-06 | 2019-04-16 | Pure Storage, Inc. | Data protection in a storage system using external secrets |
US9516016B2 (en) | 2013-11-11 | 2016-12-06 | Pure Storage, Inc. | Storage array password management |
US9208086B1 (en) | 2014-01-09 | 2015-12-08 | Pure Storage, Inc. | Using frequency domain to prioritize storage of metadata in a cache |
US9792063B2 (en) * | 2014-01-15 | 2017-10-17 | Intel Corporation | Deduplication-based data security |
US10656864B2 (en) | 2014-03-20 | 2020-05-19 | Pure Storage, Inc. | Data replication within a flash storage array |
US9513820B1 (en) | 2014-04-07 | 2016-12-06 | Pure Storage, Inc. | Dynamically controlling temporary compromise on data redundancy |
US9779268B1 (en) | 2014-06-03 | 2017-10-03 | Pure Storage, Inc. | Utilizing a non-repeating identifier to encrypt data |
US11399063B2 (en) | 2014-06-04 | 2022-07-26 | Pure Storage, Inc. | Network authentication for a storage system |
US9218244B1 (en) | 2014-06-04 | 2015-12-22 | Pure Storage, Inc. | Rebuilding data across storage nodes |
US9218407B1 (en) | 2014-06-25 | 2015-12-22 | Pure Storage, Inc. | Replication and intermediate read-write state for mediums |
US10496556B1 (en) | 2014-06-25 | 2019-12-03 | Pure Storage, Inc. | Dynamic data protection within a flash storage system |
US10296469B1 (en) | 2014-07-24 | 2019-05-21 | Pure Storage, Inc. | Access control in a flash storage system |
US9558069B2 (en) | 2014-08-07 | 2017-01-31 | Pure Storage, Inc. | Failure mapping in a storage array |
US9495255B2 (en) | 2014-08-07 | 2016-11-15 | Pure Storage, Inc. | Error recovery in a storage cluster |
US9864761B1 (en) | 2014-08-08 | 2018-01-09 | Pure Storage, Inc. | Read optimization operations in a storage system |
US10430079B2 (en) | 2014-09-08 | 2019-10-01 | Pure Storage, Inc. | Adjusting storage capacity in a computing system |
US12175076B2 (en) | 2014-09-08 | 2024-12-24 | Pure Storage, Inc. | Projecting capacity utilization for snapshots |
JP6254293B2 (ja) * | 2014-09-15 | 2017-12-27 | 華為技術有限公司Huawei Technologies Co.,Ltd. | データ重複排除方法及びストレージアレイ |
US10164841B2 (en) | 2014-10-02 | 2018-12-25 | Pure Storage, Inc. | Cloud assist for storage systems |
US9489132B2 (en) | 2014-10-07 | 2016-11-08 | Pure Storage, Inc. | Utilizing unmapped and unknown states in a replicated storage system |
US10430282B2 (en) | 2014-10-07 | 2019-10-01 | Pure Storage, Inc. | Optimizing replication by distinguishing user and system write activity |
US9727485B1 (en) | 2014-11-24 | 2017-08-08 | Pure Storage, Inc. | Metadata rewrite and flatten optimization |
US9773007B1 (en) | 2014-12-01 | 2017-09-26 | Pure Storage, Inc. | Performance improvements in a storage system |
US9552248B2 (en) | 2014-12-11 | 2017-01-24 | Pure Storage, Inc. | Cloud alert to replica |
US9588842B1 (en) | 2014-12-11 | 2017-03-07 | Pure Storage, Inc. | Drive rebuild |
US9864769B2 (en) | 2014-12-12 | 2018-01-09 | Pure Storage, Inc. | Storing data utilizing repeating pattern detection |
US10545987B2 (en) | 2014-12-19 | 2020-01-28 | Pure Storage, Inc. | Replication to the cloud |
US9569357B1 (en) | 2015-01-08 | 2017-02-14 | Pure Storage, Inc. | Managing compressed data in a storage system |
US10296354B1 (en) | 2015-01-21 | 2019-05-21 | Pure Storage, Inc. | Optimized boot operations within a flash storage array |
US11947968B2 (en) | 2015-01-21 | 2024-04-02 | Pure Storage, Inc. | Efficient use of zone in a storage device |
US9710165B1 (en) | 2015-02-18 | 2017-07-18 | Pure Storage, Inc. | Identifying volume candidates for space reclamation |
US10082985B2 (en) | 2015-03-27 | 2018-09-25 | Pure Storage, Inc. | Data striping across storage nodes that are assigned to multiple logical arrays |
US10178169B2 (en) | 2015-04-09 | 2019-01-08 | Pure Storage, Inc. | Point to point based backend communication layer for storage processing |
US10061514B2 (en) | 2015-04-15 | 2018-08-28 | Formulus Black Corporation | Method and apparatus for dense hyper IO digital retention |
US10140149B1 (en) | 2015-05-19 | 2018-11-27 | Pure Storage, Inc. | Transactional commits with hardware assists in remote memory |
US9547441B1 (en) | 2015-06-23 | 2017-01-17 | Pure Storage, Inc. | Exposing a geometry of a storage device |
US10310740B2 (en) | 2015-06-23 | 2019-06-04 | Pure Storage, Inc. | Aligning memory access operations to a geometry of a storage device |
US9830273B2 (en) | 2015-07-30 | 2017-11-28 | Netapp, Inc. | Deduplicated host cache flush to remote storage |
KR20170028825A (ko) | 2015-09-04 | 2017-03-14 | 퓨어 스토리지, 아이앤씨. | 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색 |
US11269884B2 (en) | 2015-09-04 | 2022-03-08 | Pure Storage, Inc. | Dynamically resizable structures for approximate membership queries |
US11341136B2 (en) | 2015-09-04 | 2022-05-24 | Pure Storage, Inc. | Dynamically resizable structures for approximate membership queries |
US9843453B2 (en) | 2015-10-23 | 2017-12-12 | Pure Storage, Inc. | Authorizing I/O commands with I/O tokens |
US10133503B1 (en) | 2016-05-02 | 2018-11-20 | Pure Storage, Inc. | Selecting a deduplication process based on a difference between performance metrics |
US10452297B1 (en) | 2016-05-02 | 2019-10-22 | Pure Storage, Inc. | Generating and optimizing summary index levels in a deduplication storage system |
US10203903B2 (en) | 2016-07-26 | 2019-02-12 | Pure Storage, Inc. | Geometry based, space aware shelf/writegroup evacuation |
US10191662B2 (en) | 2016-10-04 | 2019-01-29 | Pure Storage, Inc. | Dynamic allocation of segments in a flash storage system |
US10756816B1 (en) | 2016-10-04 | 2020-08-25 | Pure Storage, Inc. | Optimized fibre channel and non-volatile memory express access |
US10613974B2 (en) | 2016-10-04 | 2020-04-07 | Pure Storage, Inc. | Peer-to-peer non-volatile random-access memory |
US10162523B2 (en) | 2016-10-04 | 2018-12-25 | Pure Storage, Inc. | Migrating data between volumes using virtual copy operation |
US10481798B2 (en) | 2016-10-28 | 2019-11-19 | Pure Storage, Inc. | Efficient flash management for multiple controllers |
US10185505B1 (en) | 2016-10-28 | 2019-01-22 | Pure Storage, Inc. | Reading a portion of data to replicate a volume based on sequence numbers |
US10359942B2 (en) | 2016-10-31 | 2019-07-23 | Pure Storage, Inc. | Deduplication aware scalable content placement |
US10452290B2 (en) | 2016-12-19 | 2019-10-22 | Pure Storage, Inc. | Block consolidation in a direct-mapped flash storage system |
US11550481B2 (en) | 2016-12-19 | 2023-01-10 | Pure Storage, Inc. | Efficiently writing data in a zoned drive storage system |
US11093146B2 (en) | 2017-01-12 | 2021-08-17 | Pure Storage, Inc. | Automatic load rebalancing of a write group |
US10528488B1 (en) | 2017-03-30 | 2020-01-07 | Pure Storage, Inc. | Efficient name coding |
US11403019B2 (en) | 2017-04-21 | 2022-08-02 | Pure Storage, Inc. | Deduplication-aware per-tenant encryption |
US12045487B2 (en) | 2017-04-21 | 2024-07-23 | Pure Storage, Inc. | Preserving data deduplication in a multi-tenant storage system |
US10944671B2 (en) | 2017-04-27 | 2021-03-09 | Pure Storage, Inc. | Efficient data forwarding in a networked device |
US10402266B1 (en) | 2017-07-31 | 2019-09-03 | Pure Storage, Inc. | Redundant array of independent disks in a direct-mapped flash storage system |
US10831935B2 (en) | 2017-08-31 | 2020-11-10 | Pure Storage, Inc. | Encryption management with host-side data reduction |
US10776202B1 (en) | 2017-09-22 | 2020-09-15 | Pure Storage, Inc. | Drive, blade, or data shard decommission via RAID geometry shrinkage |
US10789211B1 (en) | 2017-10-04 | 2020-09-29 | Pure Storage, Inc. | Feature-based deduplication |
US10884919B2 (en) | 2017-10-31 | 2021-01-05 | Pure Storage, Inc. | Memory management in a storage system |
JP6360956B1 (ja) * | 2017-11-01 | 2018-07-18 | 株式会社Osk | データ取込システム |
US10860475B1 (en) | 2017-11-17 | 2020-12-08 | Pure Storage, Inc. | Hybrid flash translation layer |
WO2019126072A1 (en) | 2017-12-18 | 2019-06-27 | Formulus Black Corporation | Random access memory (ram)-based computer systems, devices, and methods |
US11144638B1 (en) | 2018-01-18 | 2021-10-12 | Pure Storage, Inc. | Method for storage system detection and alerting on potential malicious action |
US10970395B1 (en) | 2018-01-18 | 2021-04-06 | Pure Storage, Inc | Security threat monitoring for a storage system |
US11010233B1 (en) | 2018-01-18 | 2021-05-18 | Pure Storage, Inc | Hardware-based system monitoring |
US10467527B1 (en) | 2018-01-31 | 2019-11-05 | Pure Storage, Inc. | Method and apparatus for artificial intelligence acceleration |
US11036596B1 (en) | 2018-02-18 | 2021-06-15 | Pure Storage, Inc. | System for delaying acknowledgements on open NAND locations until durability has been confirmed |
US11494109B1 (en) | 2018-02-22 | 2022-11-08 | Pure Storage, Inc. | Erase block trimming for heterogenous flash memory storage devices |
US11934322B1 (en) | 2018-04-05 | 2024-03-19 | Pure Storage, Inc. | Multiple encryption keys on storage drives |
US11995336B2 (en) | 2018-04-25 | 2024-05-28 | Pure Storage, Inc. | Bucket views |
US11153094B2 (en) * | 2018-04-27 | 2021-10-19 | EMC IP Holding Company LLC | Secure data deduplication with smaller hash values |
US10678433B1 (en) | 2018-04-27 | 2020-06-09 | Pure Storage, Inc. | Resource-preserving system upgrade |
US11385792B2 (en) | 2018-04-27 | 2022-07-12 | Pure Storage, Inc. | High availability controller pair transitioning |
US10678436B1 (en) | 2018-05-29 | 2020-06-09 | Pure Storage, Inc. | Using a PID controller to opportunistically compress more data during garbage collection |
US11436023B2 (en) | 2018-05-31 | 2022-09-06 | Pure Storage, Inc. | Mechanism for updating host file system and flash translation layer based on underlying NAND technology |
US10776046B1 (en) | 2018-06-08 | 2020-09-15 | Pure Storage, Inc. | Optimized non-uniform memory access |
US11281577B1 (en) | 2018-06-19 | 2022-03-22 | Pure Storage, Inc. | Garbage collection tuning for low drive wear |
US11869586B2 (en) | 2018-07-11 | 2024-01-09 | Pure Storage, Inc. | Increased data protection by recovering data from partially-failed solid-state devices |
US11194759B2 (en) | 2018-09-06 | 2021-12-07 | Pure Storage, Inc. | Optimizing local data relocation operations of a storage device of a storage system |
US11133076B2 (en) | 2018-09-06 | 2021-09-28 | Pure Storage, Inc. | Efficient relocation of data between storage devices of a storage system |
US10846216B2 (en) | 2018-10-25 | 2020-11-24 | Pure Storage, Inc. | Scalable garbage collection |
US11113409B2 (en) | 2018-10-26 | 2021-09-07 | Pure Storage, Inc. | Efficient rekey in a transparent decrypting storage array |
US10725853B2 (en) | 2019-01-02 | 2020-07-28 | Formulus Black Corporation | Systems and methods for memory failure prevention, management, and mitigation |
US11194473B1 (en) | 2019-01-23 | 2021-12-07 | Pure Storage, Inc. | Programming frequently read data to low latency portions of a solid-state storage array |
US11588633B1 (en) | 2019-03-15 | 2023-02-21 | Pure Storage, Inc. | Decommissioning keys in a decryption storage system |
US11334254B2 (en) | 2019-03-29 | 2022-05-17 | Pure Storage, Inc. | Reliability based flash page sizing |
US11397674B1 (en) | 2019-04-03 | 2022-07-26 | Pure Storage, Inc. | Optimizing garbage collection across heterogeneous flash devices |
US11775189B2 (en) | 2019-04-03 | 2023-10-03 | Pure Storage, Inc. | Segment level heterogeneity |
US10990480B1 (en) | 2019-04-05 | 2021-04-27 | Pure Storage, Inc. | Performance of RAID rebuild operations by a storage group controller of a storage system |
US12087382B2 (en) | 2019-04-11 | 2024-09-10 | Pure Storage, Inc. | Adaptive threshold for bad flash memory blocks |
US11099986B2 (en) | 2019-04-12 | 2021-08-24 | Pure Storage, Inc. | Efficient transfer of memory contents |
US11487665B2 (en) | 2019-06-05 | 2022-11-01 | Pure Storage, Inc. | Tiered caching of data in a storage system |
US11281394B2 (en) | 2019-06-24 | 2022-03-22 | Pure Storage, Inc. | Replication across partitioning schemes in a distributed storage system |
US10929046B2 (en) | 2019-07-09 | 2021-02-23 | Pure Storage, Inc. | Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device |
US12135888B2 (en) | 2019-07-10 | 2024-11-05 | Pure Storage, Inc. | Intelligent grouping of data based on expected lifespan |
US11422751B2 (en) | 2019-07-18 | 2022-08-23 | Pure Storage, Inc. | Creating a virtual storage system |
US11086713B1 (en) | 2019-07-23 | 2021-08-10 | Pure Storage, Inc. | Optimized end-to-end integrity storage system |
US11963321B2 (en) | 2019-09-11 | 2024-04-16 | Pure Storage, Inc. | Low profile latching mechanism |
US11403043B2 (en) | 2019-10-15 | 2022-08-02 | Pure Storage, Inc. | Efficient data compression by grouping similar data within a data segment |
US11657155B2 (en) | 2019-11-22 | 2023-05-23 | Pure Storage, Inc | Snapshot delta metric based determination of a possible ransomware attack against data maintained by a storage system |
US11615185B2 (en) | 2019-11-22 | 2023-03-28 | Pure Storage, Inc. | Multi-layer security threat detection for a storage system |
US12079502B2 (en) | 2019-11-22 | 2024-09-03 | Pure Storage, Inc. | Storage element attribute-based determination of a data protection policy for use within a storage system |
US12050683B2 (en) * | 2019-11-22 | 2024-07-30 | Pure Storage, Inc. | Selective control of a data synchronization setting of a storage system based on a possible ransomware attack against the storage system |
US12050689B2 (en) | 2019-11-22 | 2024-07-30 | Pure Storage, Inc. | Host anomaly-based generation of snapshots |
US11675898B2 (en) | 2019-11-22 | 2023-06-13 | Pure Storage, Inc. | Recovery dataset management for security threat monitoring |
US12079333B2 (en) | 2019-11-22 | 2024-09-03 | Pure Storage, Inc. | Independent security threat detection and remediation by storage systems in a synchronous replication arrangement |
US12248566B2 (en) | 2019-11-22 | 2025-03-11 | Pure Storage, Inc. | Snapshot deletion pattern-based determination of ransomware attack against data maintained by a storage system |
US11500788B2 (en) | 2019-11-22 | 2022-11-15 | Pure Storage, Inc. | Logical address based authorization of operations with respect to a storage system |
US11520907B1 (en) | 2019-11-22 | 2022-12-06 | Pure Storage, Inc. | Storage system snapshot retention based on encrypted data |
US12204657B2 (en) | 2019-11-22 | 2025-01-21 | Pure Storage, Inc. | Similar block detection-based detection of a ransomware attack |
US12067118B2 (en) | 2019-11-22 | 2024-08-20 | Pure Storage, Inc. | Detection of writing to a non-header portion of a file as an indicator of a possible ransomware attack against a storage system |
US11720714B2 (en) | 2019-11-22 | 2023-08-08 | Pure Storage, Inc. | Inter-I/O relationship based detection of a security threat to a storage system |
US12153670B2 (en) | 2019-11-22 | 2024-11-26 | Pure Storage, Inc. | Host-driven threat detection-based protection of storage elements within a storage system |
US11755751B2 (en) | 2019-11-22 | 2023-09-12 | Pure Storage, Inc. | Modify access restrictions in response to a possible attack against data stored by a storage system |
US11651075B2 (en) | 2019-11-22 | 2023-05-16 | Pure Storage, Inc. | Extensible attack monitoring by a storage system |
US12079356B2 (en) | 2019-11-22 | 2024-09-03 | Pure Storage, Inc. | Measurement interval anomaly detection-based generation of snapshots |
US11645162B2 (en) | 2019-11-22 | 2023-05-09 | Pure Storage, Inc. | Recovery point determination for data restoration in a storage system |
US11720692B2 (en) | 2019-11-22 | 2023-08-08 | Pure Storage, Inc. | Hardware token based management of recovery datasets for a storage system |
US11625481B2 (en) | 2019-11-22 | 2023-04-11 | Pure Storage, Inc. | Selective throttling of operations potentially related to a security threat to a storage system |
US11687418B2 (en) | 2019-11-22 | 2023-06-27 | Pure Storage, Inc. | Automatic generation of recovery plans specific to individual storage elements |
US11941116B2 (en) | 2019-11-22 | 2024-03-26 | Pure Storage, Inc. | Ransomware-based data protection parameter modification |
US11341236B2 (en) | 2019-11-22 | 2022-05-24 | Pure Storage, Inc. | Traffic-based detection of a security threat to a storage system |
US11169806B1 (en) * | 2020-08-10 | 2021-11-09 | Arm Limited | Data processing systems |
US11862211B1 (en) * | 2022-06-30 | 2024-01-02 | Western Digital Technologies, Inc. | Data storage device with flexible logical tracks and radius-independent data rate |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1996025801A1 (en) | 1995-02-17 | 1996-08-22 | Trustus Pty. Ltd. | Method for partitioning a block of data into subblocks and for storing and communicating such subblocks |
US6928526B1 (en) * | 2002-12-20 | 2005-08-09 | Datadomain, Inc. | Efficient data storage system |
JP4146380B2 (ja) * | 2004-03-29 | 2008-09-10 | 東芝ソリューション株式会社 | ストレージシステム、ブロック再配置制御方法及びプログラム |
JP5331323B2 (ja) * | 2007-09-26 | 2013-10-30 | 株式会社日立製作所 | ストレージサブシステム及びその制御方法 |
JP5026213B2 (ja) * | 2007-09-28 | 2012-09-12 | 株式会社日立製作所 | ストレージ装置及びデータ重複排除方法 |
JP5084551B2 (ja) * | 2008-02-26 | 2012-11-28 | Kddi株式会社 | 重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラム |
JP2009251725A (ja) * | 2008-04-02 | 2009-10-29 | Hitachi Ltd | 記憶制御装置及び記憶制御装置を用いた重複データ検出方法。 |
US20100088296A1 (en) * | 2008-10-03 | 2010-04-08 | Netapp, Inc. | System and method for organizing data to facilitate data deduplication |
JP4386459B1 (ja) * | 2009-04-20 | 2009-12-16 | 誠 後藤 | ファイル格納システム、サーバ装置及びプログラム |
US20100332401A1 (en) * | 2009-06-30 | 2010-12-30 | Anand Prahlad | Performing data storage operations with a cloud storage environment, including automatically selecting among multiple cloud storage sites |
-
2010
- 2010-03-24 JP JP2010068512A patent/JP4892072B2/ja active Active
-
2011
- 2011-03-23 US US13/069,921 patent/US8447742B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8447742B2 (en) | 2013-05-21 |
US20110238634A1 (en) | 2011-09-29 |
JP2011203842A (ja) | 2011-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4892072B2 (ja) | ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法 | |
US10078598B1 (en) | Maintaining a separate LRU linked list for each thread for multi-threaded access | |
US20210004355A1 (en) | Distributed storage system, distributed storage system control method, and storage medium | |
US9569367B1 (en) | Cache eviction based on types of data stored in storage systems | |
US8627012B1 (en) | System and method for improving cache performance | |
US9235524B1 (en) | System and method for improving cache performance | |
US9274956B1 (en) | Intelligent cache eviction at storage gateways | |
TWI771933B (zh) | 借助命令相關過濾器來進行重複資料刪除管理的方法、主裝置以及儲存伺服器 | |
US20090024795A1 (en) | Method and apparatus for caching data | |
CN103827843B (zh) | 一种写数据方法、装置和系统 | |
US9529731B1 (en) | Contention-free approximate LRU for multi-threaded access | |
JP2011503725A (ja) | 分散型共有メモリを備えるネットワーク | |
JP6254293B2 (ja) | データ重複排除方法及びストレージアレイ | |
EP3449351A1 (en) | Inline deduplication | |
US10768851B2 (en) | Instant-ready active-active storage nodes | |
US10860481B2 (en) | Data recovery method, data recovery system, and computer program product | |
US20220342816A1 (en) | System and Method for Lockless Reading of Metadata Pages | |
US8909886B1 (en) | System and method for improving cache performance upon detecting a migration event | |
US8554954B1 (en) | System and method for improving cache performance | |
US9053033B1 (en) | System and method for cache content sharing | |
US10191690B2 (en) | Storage system, control device, memory device, data access method, and program recording medium | |
US10423507B1 (en) | Repairing a site cache in a distributed file system | |
US20140188952A1 (en) | Reading data without an indirection logical reference identifier in a system that uses indirection access | |
JP6924671B2 (ja) | データ書込み要求処理方法及びストレージアレイ | |
CN112131145B (zh) | 应用于ceph的缓存方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111122 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111216 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4892072 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141222 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |