JP2022175713A - Storage device, information processing system, information processing method and program - Google Patents
Storage device, information processing system, information processing method and program Download PDFInfo
- Publication number
- JP2022175713A JP2022175713A JP2021082355A JP2021082355A JP2022175713A JP 2022175713 A JP2022175713 A JP 2022175713A JP 2021082355 A JP2021082355 A JP 2021082355A JP 2021082355 A JP2021082355 A JP 2021082355A JP 2022175713 A JP2022175713 A JP 2022175713A
- Authority
- JP
- Japan
- Prior art keywords
- data
- feature data
- write
- feature
- data corresponding
- 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.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims description 18
- 238000003672 processing method Methods 0.000 title claims description 6
- 238000012545 processing Methods 0.000 claims description 124
- 238000000034 method Methods 0.000 description 47
- 230000008569 process Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008030 elimination Effects 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、ストレージ装置、情報処理システム、情報処理方法、およびプログラムに関する。 The present invention relates to a storage device, an information processing system, an information processing method, and a program.
特許文献1には、重複排除処理を行う計算機システムが開示されている。この計算機システムのホスト計算機は、更新コンテンツを構成する全てのチャンクに対して重複判定処理を行い、コンテンツ管理テーブルを更新する。そして、ホスト計算機は、次回の重複排除処理の際に最新のコンテンツのデータに基づいた重複排除リストを作成する。これにより、ホスト装置からストレージ装置へ送信するチャンクの数を減らすことができる。 Patent Literature 1 discloses a computer system that performs deduplication processing. The host computer of this computer system performs duplication determination processing on all chunks that constitute update content, and updates the content management table. Then, the host computer creates a deduplication list based on the latest content data during the next deduplication process. As a result, the number of chunks transmitted from the host device to the storage device can be reduced.
ところで、重複排除を行うストレージ装置では、ライトデータとストレージ装置に既に記憶されているデータとが重複しているか否かを調べる際に、ライトデータを所定の管理単位のデータ(例えば一定長のチャンク)に分割し、上記管理単位のデータから算出されるハッシュ値などの特徴データと、ストレージ装置に既に記憶されている特徴データとを比較することが行われる。このような特徴データは、全てのライトデータにおける所定の管理単位のデータごとに記憶される必要があり膨大となる。その結果、ストレージ装置に記憶されている膨大な特徴データのなかから重複判定に用いる特徴データを特定することの負荷が大きく、ライト性能の向上が難しくなる場合がある。 By the way, in a storage device that performs deduplication, when checking whether write data overlaps with data already stored in the storage device, write data is divided into data in a predetermined management unit (for example, chunks of a certain length). ), and feature data such as a hash value calculated from the data in the management unit is compared with feature data already stored in the storage device. Such feature data must be stored for each data in a predetermined management unit in all write data, resulting in an enormous amount of data. As a result, the load of specifying feature data to be used for duplication determination from among the huge amount of feature data stored in the storage device is heavy, and it may be difficult to improve the write performance.
そこでこの発明は、上記課題を解決するストレージ装置、情報処理システム、情報処理方法、およびプログラムを提供することを目的としている。 SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a storage device, an information processing system, an information processing method, and a program that solve the above problems.
上記目的を達成するために、本発明の第1態様によれば、ストレージ装置は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けるライト命令処理手段と、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶手段に記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて前記記憶手段に記憶させる特徴データ登録手段と、第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行う判定処理手段と、を備える。 In order to achieve the above object, according to a first aspect of the present invention, a storage device associates feature data corresponding to each piece of data in a predetermined management unit included in a bundle or a series of write data. and when the feature data corresponding to the first data of the management unit included in the first write data are stored in the storage device, the feature data included in the first write data and subsequent to the first data. a feature data registering means for storing in the storage means the feature data corresponding to the second data of the management unit in which the feature data corresponds to the first data in association with the feature data corresponding to the first data; and duplication determination for the second write data is performed, duplicate determination is performed using the feature data corresponding to the first data, and the feature data corresponding to the second data is read based on association with the feature data corresponding to the first data. and determination processing means for performing overlap determination using the feature data corresponding to the second data.
上記目的を達成するために、本発明の第2態様によれば、情報処理システムは、ホストと、前記ホストと通信可能に接続されたストレージ装置と、を備える。前記ストレージ装置は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けるライト命令処理手段と、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶手段に記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて前記記憶手段に記憶させる特徴データ登録手段と、第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行う判定処理手段と、を含む。 To achieve the above object, according to a second aspect of the present invention, an information processing system includes a host and a storage device communicably connected to the host. The storage device comprises: write command processing means for associating characteristic data corresponding to each piece of data in a predetermined management unit included in a set or a series of write data; When the feature data corresponding to the first data is stored in the storage means, the feature data corresponding to the second data of the management unit, which is included in the first write data and succeeds the first data, is stored in the storage means. a feature data registering means for storing in the storage means in association with the feature data corresponding to the first data; and using the feature data corresponding to the first data when determining duplication for the second write data. read out the feature data corresponding to the second data based on the association with the feature data corresponding to the first data; and perform overlap determination using the feature data corresponding to the second data. and determination processing means for performing.
上記目的を達成するために、本発明の第3態様によれば、情報処理方法は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付け、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて記憶させ、第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行う、ことを含む。 In order to achieve the above object, according to a third aspect of the present invention, an information processing method provides, for each data of a predetermined management unit included in a set or a series of write data, feature data corresponding to the data. When storing the feature data corresponding to the first data of the management unit included in the first write data, the first data of the management unit included in the first write data and subsequent to the first data is stored. When the feature data corresponding to the second data is stored in association with the feature data corresponding to the first data, and the duplication determination is performed for the second write data, the feature data corresponding to the first data is stored. to determine duplication, read out the feature data corresponding to the second data based on the association with the feature data corresponding to the first data, and use the feature data corresponding to the second data to determine duplication including making decisions.
上記目的を達成するために、本発明の第4態様によれば、プログラムは、コンピュータに、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けることと、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて記憶させることと、第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行うことと、を実行させる。 In order to achieve the above object, according to the fourth aspect of the present invention, a program is provided in a computer for each data in a predetermined management unit included in a set or a series of write data, characteristic data corresponding to the data and when storing the feature data corresponding to the first data of the management unit included in the first write data, the management unit that is included in the first write data and succeeds the first data and storing the feature data corresponding to the second data in association with the feature data corresponding to the first data; duplicate determination is performed using the feature data corresponding to the first data, the feature data corresponding to the second data is read out based on the association with the feature data corresponding to the first data, and the feature data corresponding to the second data is read. and performing a duplicate determination using .
本発明によれば、重複判定に用いる特徴データを特定することの負荷の低減を図ることができ、ライト性能の向上を図ることができる。 According to the present invention, it is possible to reduce the load of specifying feature data used for duplication determination, and to improve write performance.
以下、本発明の一実施形態によるストレージ装置を含む情報処理システムについて図面を参照して説明する。 An information processing system including a storage device according to an embodiment of the present invention will be described below with reference to the drawings.
<1.情報処理システムの構成>
図1は、本実施形態による情報処理システムを示す概略構成図である。情報処理システムSは、例えば、ディスクアレイ装置1と、ホスト2とを含む。ディスクアレイ装置1は、「ストレージ装置」の一例である。
<1. Configuration of information processing system>
FIG. 1 is a schematic configuration diagram showing an information processing system according to this embodiment. The information processing system S includes, for example, a disk array device 1 and a
ディスクアレイ装置1は、データを不揮発に記憶可能なストレージ装置である。ディスクアレイ装置1は、ホスト2からの制御命令に基づき、データの書き込み、読み出し、または消去などの処理を実行する。例えば、ディスクアレイ装置1は、ホスト2からライト命令を受信する場合、ライト命令に対応するライトデータを、ディスクアレイ装置1の内部の記憶部Mに書き込む。ディスクアレイ装置1は、ホスト2からリード命令を受信する場合、ディスクアレイ装置1の内部の記憶部Mに記憶されているデータを読み出してホスト2へ送信する。ディスクアレイ装置1は、例えば、バックアップ環境や仮想マシン環境のように同じデータが複数コピーされるシステムで使用され得る。ディスクアレイ装置1については、詳しく後述する。
The disk array device 1 is a storage device capable of storing data in a non-volatile manner. The disk array device 1 performs processing such as writing, reading, or erasing data based on control commands from the
ホスト2は、例えば通信ケーブルを介して、ディスクアレイ装置1と通信可能に接続される。ホスト2は、例えば、1つ以上のホスト装置21によって構成される。各ホスト装置21は、サーバ装置でもよく、パーソナルコンピュータやその他のコンピュータでもよい。以下の記載において特段の説明がない限り、ライト命令およびリード命令は、ホスト2からディスクアレイ装置1へ送信されるライト命令およびリード命令を意味する。
The
<2.ディスクアレイ装置>
次に、ディスクアレイ装置1について説明する。
図1に示すように、ディスクアレイ装置1は、例えば、I/O処理部(入出力処理部)11と、メモリ12と、重複排除ボリューム13と、プールボリューム14と、管理ボリューム15とを備える。本実施形態では、重複排除ボリューム13と、プールボリューム14と、管理ボリューム15とにより、記憶部Mが構成されている。記憶部Mは、「記憶手段」の一例である。
<2. Disk array device>
Next, the disk array device 1 will be explained.
As shown in FIG. 1, the disk array device 1 includes, for example, an I/O processing unit (input/output processing unit) 11, a
I/O処理部11は、重複排除ボリューム13およびプールボリューム14に対するデータの書き込み、読み出し、および消去などを管理する。例えば、I/O処理部11は、ホスト2からライト命令およびリード命令を受信する。I/O処理部11は、ライト命令に応じたライト処理またはリード命令に応じたリード処理が完了すると、ホスト2にレスポンスを返却する。本実施形態では、I/O処理部11は、ライト命令処理部111と、リード命令処理部112と、ハッシュ値判定処理部113と、重複排除処理部114とを備える。
The I/
ライト命令処理部111は、I/O処理部11が重複排除ボリューム13へのライト命令を受信すると、当該ライト命令によりライト処理が要求されたライトデータを一定長のチャンクに分割する。チャンクは、「所定の管理単位のデータ」の一例である。チャンクのサイズよりも大きいサイズのライトデータは、「ひと纏まりのライトデータ」の一例である。
When the I/
本実施形態では、ライト命令処理部111は、ハッシュ値算出部1111を備える。ハッシュ値算出部1111は、ライト命令処理部111により分割された各チャンクからハッシュ値を算出し、算出したハッシュ値をメモリ12に保存する。ハッシュ値は、「特徴データ」の一例である。各チャンクからハッシュ値を算出することは、各チャンクに対して特徴データを対応付けることの一例である。ただし、特徴データは、ハッシュ値に限らず、各チャンクに応じて登録される特有の情報などでもよい。ライト命令処理部111は、「ライト命令処理手段」の一例である。
In this embodiment, the write
リード命令処理部112は、I/O処理部11がリード命令を受信すると、チャンクアドレス変換テーブル151(図2参照)に基づき、リード命令の対象となる各チャンクのデータを読み出し、ホスト2にリードデータを返却する。チャンクアドレス変換テーブル151は、各チャンクのデータの格納位置を示す情報が登録されたテーブルである。以下では、各チャンクのデータを「チャンクデータ」と称する場合があり、チャンクデータの格納位置を「チャンク格納位置」と称する場合があり、チャンク格納位置を示す情報を「チャンク格納位置情報」と称する場合がある。なお説明の便宜上、文脈の中で「チャンク格納位置」を「チャンク格納位置情報」の意味で用いている場合がある。
When the I/
図2は、チャンクアドレス変換テーブル151の内容の一例を示す図である。チャンクアドレス変換テーブル151は、例えば、後述する重複排除ボリューム13に保存されるチャンクアドレス(重複排除LDチャンクアドレス)と、当該チャンクアドレスに対応するチャンクデータが保存されるプールボリューム14の格納位置(チャンク格納位置)との対応関係の一覧を記憶するテーブルである。「LD」は、論理ディスク(Logical Disk)を意味する。チャンク格納位置は、例えば、チャンクが格納された論理ディスク番号(LDN:Logical Disk Number)を示すチャンク格納LDNと、チャンクが格納されたアドレスを示すチャンク格納アドレスとを含む。例えば、チャンク格納位置は、プールボリューム14のボリューム番号と、プールボリューム14上のアドレスとを含む。チャンクアドレス変換テーブル151は、後述する重複排除処理部114により生成される。
FIG. 2 is a diagram showing an example of the contents of the chunk address conversion table 151. As shown in FIG. The chunk address conversion table 151 includes, for example, a chunk address (deduplicated LD chunk address) stored in the deduplicated
ハッシュ値判定処理部113は、ライト命令が受信され、ライト命令処理部111がライトデータをチャンクに分割してハッシュ値を算出すると、ライト範囲(ライトデータ)の先頭チャンクから順に全てのチャンクについて、ハッシュ値算出部1111が算出したハッシュ値のハッシュテーブル152(図3参照)における登録の有無の判定を行い、ハッシュ値の登録の有無と、ハッシュ値が登録されている場合にはハッシュ値が登録されているハッシュエントリ1521(図3参照)の位置情報をメモリ12に記憶する。本実施形態では、ハッシュ値判定処理部113は、ハッシュ値の登録があるチャンクについては、後続チャンクのハッシュ値と、後続チャンクのハッシュ値の格納位置を示す情報とをメモリ12に記憶する。ハッシュ値判定処理部113は、「判定処理手段」の一例である。以下、この内容について詳しく説明する。
When the write command is received and the write
ハッシュ値判定処理部113は、例えば、ハッシュ値判定方法決定部1131と、ハッシュ値検索部1132と、後続ハッシュ値比較部1133とを備える。
The hash value
ハッシュ値判定方法決定部1131は、メモリ12を参照することで、後述する後続ハッシュ値の事前取得の有無を判定する。「後続ハッシュ値」とは、あるチャンクに対して、その後続となるチャンク(例えば、次のアドレスのチャンク)に対応するハッシュ値である。本実施形態では、後続ハッシュ値は、ハッシュ値判定処理部113による処理対象のチャンク(以下「処理中チャンク」と称する場合がある)よりも前方のチャンク(例えば1つ前方のチャンク)に関して実施された処理のなかで事前に取得される。
The hash value determination
本実施形態では、ハッシュ値判定方法決定部1131は、後続ハッシュ値がメモリ12に格納されていない場合、後続ハッシュ値の事前取得が無いと判定する。この場合、ハッシュ値判定方法決定部1131は、ハッシュ値の判定方法として、ハッシュ値検索部1132によるハッシュ値判定を選択する。一方で、ハッシュ値判定方法決定部1131は、後続ハッシュ値がメモリ12に格納されている場合、後続ハッシュ値の事前取得があると判定する。この場合、ハッシュ値判定方法決定部1131は、ハッシュ値の判定方法として、後続ハッシュ値比較部1133によるハッシュ値判定を選択する。
In this embodiment, the hash value determination
ハッシュ値検索部1132は、後述するハッシュテーブル152(図3参照)をリードすることで、ハッシュ値判定処理部113の処理対象のチャンク(処理中チャンク)のハッシュ値が登録されているか否かを調べ、ハッシュ値の登録の有無を判定する。
The hash
図3は、ハッシュテーブル152の内容の一例を示す図である。ハッシュテーブル152は、ディスクアレイ装置1に記憶済みのチャンクデータに対応する全てのハッシュ値を記憶するテーブルである。ハッシュテーブル152は、全てのライトデータのチャンクに対応するハッシュ値を記憶する必要があり膨大となる。一方で、ハッシュテーブル152は、できるだけテーブルサイズを抑ながら高速に所望のハッシュ値を検索できるように、階層管理を用いたアルゴリズムが採用される。ハッシュテーブル152は、「テーブル情報」の一例である。 FIG. 3 is a diagram showing an example of the contents of the hash table 152. As shown in FIG. The hash table 152 is a table that stores all hash values corresponding to chunk data already stored in the disk array device 1 . The hash table 152 needs to store hash values corresponding to all chunks of write data, and becomes enormous. On the other hand, the hash table 152 employs an algorithm using hierarchical management so that a desired hash value can be searched at high speed while keeping the table size as small as possible. The hash table 152 is an example of "table information".
図3に示すように、ハッシュテーブル152は、例えば、ハッシュ値を検索するための情報(例えばツリー検索情報TS)と、ハッシュ値に関連する情報を記憶するハッシュエントリ1521とを含む。図3に示す例では、ハッシュテーブル152は、3階層のツリー検索情報TS(TS1~TS3)を含む。
As shown in FIG. 3, the hash table 152 includes, for example, information for searching for hash values (eg, tree search information TS) and
ツリー検索情報TSには、ハッシュ値を検索する際に次にリードすべきツリー検索情報TSの位置情報が含まれており、最上位階層から順にツリー検索情報TSをリードすることでハッシュテーブル152におけるハッシュ値の登録の有無を調べることができる。最下位(最下層)のツリー検索情報TS3にはハッシュ値が登録されているハッシュエントリ1521の位置情報が格納されている。このため、ハッシュ値が登録されている場合は、ハッシュエントリ1521の位置情報も取得することができる。
The tree search information TS includes position information of the tree search information TS to be read next when searching for a hash value. You can check whether the hash value is registered or not. The position information of the
図4は、ハッシュエントリ1521の内容の一例を示す図である。ハッシュエントリ1521には、ハッシュ値、後続ハッシュ値、後続ハッシュエントリ位置、およびチャンク格納位置が登録されている。後続ハッシュエントリ位置は、後続ハッシュ値に対応するハッシュエントリ1521の位置情報である。チャンク格納位置は、例えば、チャンクが格納された論理ディスク番号を示すチャンク格納LDNと、チャンクが格納されたアドレスを示すチャンク格納アドレスとを含む。
FIG. 4 is a diagram showing an example of the contents of the
ハッシュ値検索部1132は、処理中チャンクのハッシュ値がハッシュテーブル152に登録されている場合、ハッシュ値の登録の有無と、ハッシュ値が登録されているハッシュエントリ1521の位置情報を、ハッシュ値判定結果情報121(図5参照)の一部としてメモリ12に保存する。さらに、ハッシュ値検索部1132は、処理中チャンクのハッシュエントリ1521の位置情報を取得すると、ハッシュエントリ1521をリードすることで、後続ハッシュ値および後続ハッシュエントリ位置を取得する(すなわち事前に取得する)。ハッシュ値検索部1132は、処理中チャンクに関して実施された処理のなかで取得された後続ハッシュ値および後続ハッシュエントリ位置を示す情報を、後続ハッシュ情報122(図6参照)としてメモリ12に保存する。
When the hash value of the chunk under processing is registered in the hash table 152, the hash
図5は、1つのライトデータに対応するハッシュ値判定結果情報121の内容の一例を示す図である。ハッシュ値判定結果情報121は、ライトデータごとに生成されてメモリ12に保存される。ハッシュ値判定結果情報121では、1つのライトデータに関して、ライト範囲内のチャンク番号と、ハッシュ値と、ハッシテーブル152におけるハッシュ値の登録の有無と、ハッシュエントリ1521の位置情報とが対応付けられて登録されている。
FIG. 5 is a diagram showing an example of the content of hash value determination result
図6は、1つの処理中チャンクに対応する後続ハッシュ情報122の内容の一例を示す図である。後続ハッシュ情報122は、処理中チャンクごとに生成されてメモリ12に保存される。後続ハッシュ情報122では、処理中チャンクに関して実施された処理のなかで事前に取得された後続ハッシュ値と後続ハッシュエントリ位置とが対応付けられて登録されている。
FIG. 6 is a diagram showing an example of the content of the
後続ハッシュ値比較部1133は、ハッシュ値判定処理部113の処理対象のチャンク(処理中チャンク)のハッシュ値と、処理中チャンクの1つ前方のチャンクに関して実施された処理のなかで事前に取得されてメモリ12に保存された後続ハッシュ値(後続ハッシュ情報122に含まれるハッシュ値)とを比較する。後続ハッシュ値比較部1133は、処理中チャンクのハッシュ値と後続ハッシュ値とが一致する場合、当該ハッシュ値のハッシュエントリ1521(後続ハッシュ情報122に含まれる後続ハッシュエントリ位置)をリードして、当該ハッシュ値のハッシュエントリ1521が有効であるか否か判定する。後続ハッシュ値比較部1133は、ハッシュエントリ1521が有効であればハッシュ値の登録がありと判定する。一方で、後続ハッシュ値比較部1133は、ハッシュエントリ1521が有効でない場合、または、上記比較した2つのハッシュ値が一致しない場合、ハッシュ値検索部1132によるハッシュ値判定を実施する。
The subsequent hash
後続ハッシュ値比較部1133は、ハッシュエントリ1521が有効である場合、ハッシュ値検索部1132と同様に、所定の情報をメモリ12に保存する。すなわち、後続ハッシュ値比較部1133は、ハッシュ値の登録の有無と、ハッシュ値が登録されているハッシュエントリ1521の位置情報を、ハッシュ値判定結果情報121(図5参照)の一部としてメモリ12に保存する。さらに、後続ハッシュ値比較部1133は、処理中チャンクのハッシュエントリ1521の位置情報を取得すると、ハッシュエントリ1521をリードすることで、後続ハッシュ値および後続ハッシュエントリ位置を取得する。後続ハッシュ値比較部1133は、処理中チャンクに関して実施された処理のなかで取得された後続ハッシュ値および後続ハッシュエントリ位置を示す情報を、後続ハッシュ情報122(図6参照)としてメモリ12に保存する。
If
重複排除処理部114は、ライト範囲(ライトデータ)の先頭チャンクから順に、メモリ12に記憶済みのハッシュ値判定結果情報121に基づき、重複排除を行ったライト処理を行う。例えば、重複排除処理部114は、ハッシュ値判定結果情報121にハッシュ値の登録が既にあるチャンクについては重複データと判定し、当該ハッシュ値が登録されているハッシュエントリ1521からチャンク格納位置情報を取得する。そして、重複排除処理部114は、ハッシュエントリ1521から取得したチャンク格納位置情報に基づき、チャンクアドレス変換テーブル151(図2参照)のチャンク格納位置情報を登録する。一方で、重複排除処理部114は、ハッシュ値判定結果情報121にハッシュ値の登録がないチャンクについては非重複データと判定し、当該チャンクのデータのライト処理を実施する。そして、重複排除処理部114は、チャンクのデータを格納したチャンク格納位置に応じて、チャンクアドレス変換テーブル151のチャンク格納位置情報を登録する。
The
詳しく述べると、重複排除処理部114は、ハッシュ値登録部1141と、チャンクデータライト部1142とを備える。
Specifically, the
ハッシュ値登録部1141は、ハッシュ値判定結果情報121にハッシュ値の登録がない非重複チャンクについて、ハッシュテーブル152の新たなハッシュエントリ1521に、ハッシュ値、後続ハッシュ値、後続ハッシュエントリ位置、およびチャンク格納位置情報を登録する。このとき、ハッシュ値登録部1141は、ハッシュ値判定処理部113がメモリ12に保存した後続ハッシュ情報122から後続ハッシュ値および後続ハッシュエントリ位置を取得する。例えば図8に示す例では、ハッシュ値登録部1141は、チャンク番号0000のハッシュ値AAAAAAを登録するハッシュエントリ1521の後続ハッシュ値には、チャンク番号0001のハッシュ値であるBBBBBBを登録する。ハッシュ値登録部1141は、「特徴データ登録手段」の一例である。ハッシュ値が登録されるハッシュエントリ1521に、後続ハッシュ値も併せて登録することは、第2データに対応する特徴データを、第1データに対応する特徴データと関連付けて記憶部Mに記憶させることの一例である。
The hash
チャンクデータライト部1142は、非重複と判定されたチャンクのデータをプールボリューム14にライトする。ここでのライト先が上述したチャンクアドレス変換テーブル151およびハッシュエントリ1521に登録されるチャンク格納位置となる。
The chunk
メモリ12は、各種の制御情報(例えばハッシュ値判定結果情報121および後続ハッシュ情報122)を一時的に保存する揮発性の記憶デバイスである。ライト処理にてメモリ12に保存される制御情報(例えばハッシュ値判定結果情報121および後続ハッシュ情報122)は、ライト処理が完了した時点で不要となる。この場合、ライト処理にて保存される制御情報はメモリ12から消去される。これにより、ライト処理にて保存される制御情報が保存されていたメモリ12内の領域は、他用途に使用可能な領域となる。
The
重複排除ボリューム13は、ホスト2がアクセス可能な、重複排除を行う記憶領域(例えば論理ディスク)である。重複排除ボリューム13には、各ライトデータにおける各チャンクのアドレス(重複排除LDチャンクアドレス)が格納される。重複排除ボリューム13は、例えば異なるボリューム番号が割り振られた複数の重複排除ボリューム131を含む。
The
プールボリューム14は、重複排除ボリューム13が保存するデータを一定長のチャンクごとに記憶する記憶領域(例えば論理ディスク)である。プールボリューム14は、I/O処理部11によって読み書きが可能である。プールボリューム14は、例えば異なるボリューム番号が割り振られた複数のプールボリューム141を含む。
The
管理ボリューム15は、チャンクアドレス変換テーブル151およびハッシュテーブル152が保存される記憶領域(例えば論理ディスク)である。管理ボリューム15は、I/O処理部11によって読み書きが可能である。管理ボリューム15は、例えば異なるボリューム番号が割り振られた複数の管理ボリューム151を含む。
The
<3.処理の流れ>
<3.1 ライト処理の流れ>
図7および図8を参照し、重複排除ボリューム13のライト処理について説明する。
図7は、重複排除ボリューム13のライト処理の流れを示すフローチャートである。まず、ディスクアレイ装置1のI/O処理部11は、ホスト2からライト命令および当該ライト命令に対応するライトデータを受信する(S500)。ライト命令処理部111は、I/O処理部11がホスト2からライト命令を受信すると、当該ライト命令によりライト処理が要求されたライトデータをチャンク単位に分割する(S501)。そして、ハッシュ値算出部1111は、分割したチャンクごとにハッシュ値を算出し、算出したハッシュ値をメモリ12に保存する(S502)。
<3. Process Flow>
<3.1 Flow of Write Processing>
Write processing of the
FIG. 7 is a flowchart showing the flow of write processing for the
続いて、ハッシュ値判定処理部113は、メモリ12に保存されたハッシュ値がそれぞれハッシュテーブル152に保存済みであるか否か(すなわち、ハッシュテーブル152に登録があるか否か)を判定するハッシュ値判定処理を実施する(S503)。ハッシュ値判定処理の詳細は、図8を参照して説明する。
Subsequently, the hash value
図8は、ハッシュ値判定処理の流れの詳細を示すフローチャートである。ハッシュ値判定処理では、ライト範囲のチャンクに対応するハッシュ値(メモリ12に保存されたハッシュ値)について、先頭チャンクから順に1つずつハッシュ値判定が行われる。まず、ハッシュ値判定方法決定部1131は、メモリ12を参照し、ハッシュ値判定の処理対象のチャンク(処理中チャンク)の1つ前方のチャンクで実施したハッシュ値判定処理で後続ハッシュ値の取得が行われているか否かを調べる(S600)。すなわち、ハッシュ値判定方法決定部1131は、メモリ12内に、処理中チャンクに対する後続ハッシュ情報122が事前に保存されているか否かを判定する。
FIG. 8 is a flowchart showing the details of the flow of hash value determination processing. In the hash value determination process, hash values corresponding to chunks in the write range (hash values stored in the memory 12) are determined one by one in order from the first chunk. First, the hash value determination
ハッシュ値判定方法決定部1131は、処理中チャンクに対応する後続ハッシュ値が取得されている場合(すなわち後続ハッシュ情報122が存在する場合、S600:YES)、後続ハッシュ値によるハッシュ値判定を選択する。一方で、ハッシュ値判定方法決定部1131は、処理中チャンクに対応する後続ハッシュ値が取得されていない場合(すなわち後続ハッシュ情報122が存在しない場合、S600:NO)、ハッシュテーブル検索によるハッシュ判定を選択する。ライト範囲の最初のチャンクは、後続ハッシュ値の取得が行われていないので、必ずハッシュテーブル検索によるハッシュ値判定が選択されることになる。
The hash value determination
ハッシュ値判定方法決定部1131がハッシュテーブル検索によるハッシュ値判定を選択した場合(S600:NO)、ハッシュ値検索部1132は、管理ボリューム15のハッシュテーブル152を検索してハッシュ値の登録の有無を調べる。本実施形態では、ハッシュ値検索部1132は、ハッシュ値の検索として、ハッシュテーブル152の最上位階層から順にツリー検索情報TSをリードすることを行う。ツリー検索情報TSには、検索するハッシュ値に対応する次の階層のリード場所に関する情報が格納されている。このため、最下位層まで(図3に示す例では第三階層TS3まで)リードすることでハッシュ値の登録の有無を判定し、ハッシュ値が登録されているハッシュエントリ1521の位置情報を取得することができる(S601~S603)。
When the hash value determination
ハッシュ値検索部1132は、上述したハッシュ値の検索を行うことで、ハッシュテーブル152にハッシュ値の登録がされているか否かを判定する(S604)。ハッシュ値検索部1132は、ハッシュ値の登録がある場合(S604:YES)、ハッシュ値が登録されているハッシュエントリ1521をリードし(S605)、後続ハッシュ値および後続ハッシュエントリ位置を取得する(S606)。この場合、ハッシュ値検索部1132は、取得した後続ハッシュ値および後続ハッシュエントリ位置を、次の後続ハッシュ情報122としてメモリ12に保存する。
The hash
一方で、ハッシュ値判定方法決定部1131が後続ハッシュ値によるハッシュ値判定を選択した場合は(S600:YES)、後続ハッシュ値比較部1133は、メモリ12に記憶されている後続ハッシュ情報122に含まれる後続ハッシュ値と、処理中チャンクのハッシュ値とを比較する(S611)。そして、後続ハッシュ値比較部1133は、比較された2つのハッシュ値が一致するか否かを判定する(S612)。
On the other hand, if the hash value determination
後続ハッシュ値比較部1133は、これらハッシュ値が一致した場合(S612:YES)、メモリ12に記憶されている後続ハッシュ情報122に含まれる後続ハッシュエントリ位置に存在するハッシュエントリ1521を管理ボリューム15からリードする(S613)。そして、後続ハッシュ値比較部1133は、リードしたハッシュエントリ1521が有効であるか否かを判定する(S614)。例えば、後続ハッシュ値比較部1133は、ハッシュエントリ1521に登録されているハッシュ値が処理中チャンクのハッシュ値と一致するか否かでハッシュエントリ1521の有効性を判定することができる。
If these hash values match (S612: YES), the subsequent hash
後続ハッシュ値比較部1133は、ハッシュエントリ1521が有効である場合(S614:YES)、ハッシュ値が登録されていると判定し、ハッシュエントリ1521に登録されている後続ハッシュ値および後続ハッシュエントリ位置をメモリ12に取得する(S606)。すなわち、後続ハッシュ値比較部1133は、取得した後続ハッシュ値および後続ハッシュエントリ位置を、次の後続ハッシュ情報122としてメモリ12に保存する。
If the
一方で、ハッシュエントリ1521が無効である場合(S614:NO)、または、後続ハッシュ情報122に含まれる後続ハッシュ値と処理中チャンクのハッシュ値とが不一致の場合(S612:NO)、ハッシュ値検索部1132は、上述したハッシュテーブル152の検索(S601~S606)を行い、ハッシュ値の登録の有無を判定する。
On the other hand, if the
ハッシュ値判定処理部113は、処理中チャンクのハッシュ値の登録の有無が判明したら、処理中チャンクのハッシュ値の登録の有無と、登録がある場合におけるハッシュエントリ位置を示す情報とを、ハッシュ値判定結果情報121の一部としてメモリ12に記憶する(S607)。ハッシュ値判定処理部113は、ライト範囲のすべてのチャンクに対してハッシュ値の登録の有無をメモリ12に記憶させる処理が完了したら、ハッシュ値判定処理を完了する(S608:YES)。
When it is determined whether or not the hash value of the chunk being processed is registered, the hash value
次に、図5に戻り、ライト処理に関する残りの処理について説明する。
重複排除処理部114は、ハッシュ値判定処理(S503)が完了したら、ライト範囲の先頭チャンクから順にハッシュ値の登録の有無に従い処理を行う。具体的には、重複排除処理部114は、重複排除処理部114による処理対象のチャンクのハッシュ値の登録の必要性の有無を判定する(S504)。
Next, referring back to FIG. 5, the rest of the write process will be described.
When the hash value determination process (S503) is completed, the
重複排除処理部114は、ハッシュテーブル152に処理対象のチャンクのハッシュ値の登録がある場合(S504:YES、例えば図5のチャンク0001)、重複データと判定する。この場合、重複排除処理部114は、当該ハッシュ値のハッシュエントリ1521からチャンク格納位置情報を取得する(S505)。一方で、重複排除処理部114は、ハッシュテーブル152に処理対象のチャンクのハッシュ値の登録が無い場合(S504:NO、例えば図5のチャンク0000)、非重複データと判定する。この場合、ハッシュ値登録部1141は、ハッシュテーブル152の新たなハッシュエントリ1521に、処理対象のチャンクのハッシュ値およびチャンク格納位置を登録する(S511)。チャンク格納位置は、例えば、プールボリューム14の未使用箇所であれば決定方法は問わない。
If the hash value of the chunk to be processed is registered in the hash table 152 (S504: YES, for example,
本実施形態では、ハッシュ値登録部1141は、ライト範囲に後続のチャンクがある場合(図8の例でチャンク0000の後続チャンクは0001)、後続チャンクのハッシュ値およびハッシュエントリ位置を、処理対象のチャンクのハッシュ値に関するハッシュエントリ1521の後続ハッシュ値および後続ハッシュエントリ位置に登録する。一方で、ハッシュ値登録部1141は、ライト範囲に後続チャンクが無い場合(図8の例でチャンク0008)、処理対象のチャンクのハッシュ値に関するハッシュエントリ1521の後続ハッシュ値と後続ハッシュエントリ位置をクリアする(S512)。
In this embodiment, if there is a subsequent chunk in the write range (in the example of FIG. 8, the chunk subsequent to
S504の処理で非重複データと判定された場合、ハッシュ値登録部1141によるハッシュエントリ1521への情報登録が完了したら、チャンクデータライト部1142は、処理対象のチャンクのチャンク格納位置に対応するプールボリューム14に、非重複データであるチャンクデータをライトする(S513)。チャンクデータライト部1142は、チャンク格納先アドレス情報が確定したら、管理ボリューム15のチャンクアドレス変換テーブル151にチャンク格納アドレス情報を登録する(S506)。
If it is determined to be non-duplicate data in the process of S504, when the information registration in the
そして、ライト命令処理部111は、ライト範囲内の全チャンクについてチャンクアドレス変換テーブル151へのチャンク格納アドレス情報の登録が完了したか否かを判定する(S507)。ライト命令処理部111は、チャンク格納アドレス情報の登録が完了していないチャンクがある場合(S507:NO)、S504に戻り上述した処理を繰り返す。一方で、ライト命令処理部111は、全チャンクについてチャンク格納アドレス情報の登録が完了した場合(S507:YES)、ホスト2にライト完了を報告する(S508)。これにより、ライト処理に関する一連の処理が完了する。
Then, the write
<3.2 リード処理の流れ>
図9を参照し、重複排除ボリューム13のリード処理について説明する。
図9は、重複排除ボリューム13のリード処理の流れを示すフローチャートである。まず、ディスクアレイ装置1のI/O処理部11は、ホスト2から重複排除ボリューム13に対するリード命令を受信する(S701)。リード命令処理部112は、ディスクアレイ装置1のI/O処理部11がホスト2から重複排除ボリューム13に対するリード命令を受信すると、メモリ12にリードデータを作成するワークメモリ(ワークバッファ)を確保する(S702)。
<3.2 Read processing flow>
Read processing of the
FIG. 9 is a flowchart showing the flow of read processing for the
続いて、リード命令処理部112は、リード範囲内(リードアドレス内)の先頭チャンクから順に全てのチャンクに対して、チャンクアドレス変換テーブル151をリードし(S703)、チャンクアドレス変換テーブル151からチャンク格納位置を取得する(S704)。そして、リード命令処理部112は、チャンク格納位置に対応するプールボリューム14のデータを上記ワークメモリにリードする(S705)。
Subsequently, the read
続いて、リード命令処理部112は、リード範囲内の全チャンクについてリードが完了したか否かを判定する(S706)。リード命令処理部112は、リードが完了していないチャンクがある場合(S706:NO)、S703に戻り上述した処理を繰り返す。一方で、リード命令処理部112は、全チャンクについてリードが完了した場合(S706:YES)、ホスト2にリードデータを返却し、ワークメモリを開放する(S707)。これにより、リード処理に関する一連の処理が完了する。
Subsequently, the read
<4.利点>
重複排除を行うストレージ装置では、ライトデータが既にストレージ装置に記憶されているデータと重複しているか否かを調べる際に、ライトデータを一定長のチャンク分割し、チャンクから算出するハッシュ値などの特徴データ(ここでは便宜上「ハッシュ値」と記載)を既にストレージ記憶しているハッシュ値と比較することで判定することが行われる。ストレージ内でハッシュ値を記憶するハッシュテーブルは、全てのライトデータのチャンクに対するハッシュ値を記憶する必要があり膨大となる。一方、できるだけテーブルサイズを抑ながら高速に所望のハッシュ値を検索できるように、ハッシュテーブルは階層管理を用いたアルゴリズムが採用される。
<4. Advantage>
In a storage device that deduplicates, when checking whether write data overlaps with data already stored in the storage device, the write data is divided into chunks of a certain length, and a hash value calculated from the chunks is used. Determination is performed by comparing feature data (here, described as "hash value" for convenience) with hash values already stored in the storage. A hash table that stores hash values in storage needs to store hash values for all chunks of write data, and becomes huge. On the other hand, the hash table employs an algorithm using hierarchical management so that a desired hash value can be searched at high speed while keeping the table size as small as possible.
このためライト処理では、ライトデータをチャンクに分割し、チャンクに対するハッシュ値を算出し、算出したハッシュ値がハッシュテーブルに登録されているか否かを調べる。この際、ハッシュテーブルの階層を辿りながら検索するために複数回の内部処理が発生する。重複排除効果の高いストレージのチャンクサイズは例えば4KBや8KBであり、チャンクサイズより大きいサイズのライト要求をホストから受けるケースが多くなる。チャンクサイズより大きいサイズのライトではチャンク数分のハッシュ値検索が動作し、大量の内部処理が発生するためライト性能が低下するという場合がある。 Therefore, in the write process, write data is divided into chunks, hash values for the chunks are calculated, and it is checked whether the calculated hash values are registered in the hash table. At this time, internal processing occurs multiple times in order to search while tracing the hierarchy of the hash table. The chunk size of storage with a high deduplication effect is, for example, 4 KB or 8 KB, and there are many cases where a write request with a size larger than the chunk size is received from the host. If the write size is larger than the chunk size, hash value searches for the number of chunks are performed, and a large amount of internal processing occurs, which may reduce the write performance.
一方で、本実施形態では、ストレージ装置(例えばディスクアレイ装置1)は、ライト命令処理部(例えばライト命令処理部111)と、特徴データ登録部(例えばハッシュ値登録部1141)と、判定処理部(例えばハッシュ値判定処理部113)とを備える。ライト命令処理部は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータ(例えばチャンク)ごとに、当該データに応じた特徴データ(例えばハッシュ値)を対応付ける。特徴データ登録部は、第1ライトデータに含まれる管理単位の第1データ(例えば図5中のチャンク番号0000のデータ)に対応する特徴データを記憶部(例えば記憶部M)に記憶させる場合、第1ライトデータに含まれて前記第1データの後続となる管理単位の第2データ(例えば図5中のチャンク番号0001のデータ)に対応する特徴データを、第1データに対応する特徴データと関連付けて記憶部に記憶させる。判定処理部は、第2ライトデータに対して重複判定を行う場合に、第1データに対応する特徴データを用いて重複判定を行い、第1データに対応する特徴データとの関連付けに基づき第2データに対応する特徴データを読み出し、第2データに対応する特徴データを用いて重複判定を行う。このような構成によれば、第2データに対応する特徴データを特定することの負荷が低減され、ライト性能の向上を図ることができる。例えば上述した実施形態では、図6中のS611~S613に示すように後続ハッシュ値を利用してハッシュ値の登録の有無を調べることができるため、ハッシュテーブル152の検索のためのリード(S601~S603)に関する内部処理を削減することができる。
On the other hand, in this embodiment, the storage device (for example, disk array device 1) includes a write command processing unit (for example, write command processing unit 111), a feature data registration unit (for example, hash value registration unit 1141), and a determination processing unit. (eg, hash value determination processing unit 113). The write command processing unit associates feature data (eg, hash value) corresponding to each piece of data (eg, chunk) in a predetermined management unit included in a set or series of write data. When the feature data registration unit stores the feature data corresponding to the first data (for example, the data of
本実施形態では、特徴データは、管理単位のデータから算出されるハッシュ値である。このような構成によれば、管理単位のデータに応じた特徴データを比較的容易に求めることができる。これにより、ライト性能の向上を図ることができる。 In this embodiment, the feature data is a hash value calculated from the management unit data. According to such a configuration, it is possible to obtain the feature data corresponding to the data of the management unit relatively easily. As a result, the write performance can be improved.
本実施形態では、特徴データ登録部は、第2データに対応する特徴データを、第1データに対応する特徴データと同じエントリに登録する。このような構成によれば、別のテーブルを作成することなく、第1データに対応する特徴データと第2データに対応する特徴データとを関連付けて記憶することができる。これにより、別のテーブルを管理する場合にと比べて管理負担を低減しつつ、ライト性能の向上を図ることができる。 In this embodiment, the feature data registration unit registers the feature data corresponding to the second data in the same entry as the feature data corresponding to the first data. According to such a configuration, the feature data corresponding to the first data and the feature data corresponding to the second data can be associated and stored without creating another table. As a result, the write performance can be improved while reducing the management burden as compared with the case of managing another table.
なお、第2データに対応する特徴データを、第1データに対応する特徴データと関連付けて記憶部に記憶させることは、第2データに対応する特徴データを、第1データに対応する特徴データと同じエントリに登録することに限定されず、第2データに対応する特徴データの格納位置を示す情報を、第1データに対応する特徴データと同じエントリに登録することなども含む。この場合、上記関連付けに基づいて得られる第2データに対応する特徴データの格納位置を示す情報に基づき、第2データに対応する特徴データを取得することができる。 It should be noted that storing the feature data corresponding to the second data in the storage unit in association with the feature data corresponding to the first data means that the feature data corresponding to the second data is stored as the feature data corresponding to the first data. It is not limited to registering in the same entry, but includes registering information indicating the storage position of the feature data corresponding to the second data in the same entry as the feature data corresponding to the first data. In this case, the feature data corresponding to the second data can be acquired based on the information indicating the storage position of the feature data corresponding to the second data obtained based on the association.
本実施形態では、特徴データ登録部は、第2データに対応する特徴データと、第2データに対応する特徴データの格納位置を示す情報とを、第1データに対応する特徴データと同じエントリに登録する。このような構成によれば、上記エントリをリードすることで第2データに対応する特徴データが格納される格納位置を示す情報を取得することができ、これにより、上記格納位置からリードした第2データに対応する特徴データを用いて有効性の判定を行うことができる。これにより、ライトに関する信頼性の向上を図ることができる。 In this embodiment, the feature data registration unit stores the feature data corresponding to the second data and the information indicating the storage location of the feature data corresponding to the second data in the same entry as the feature data corresponding to the first data. sign up. According to such a configuration, by reading the entry, it is possible to obtain the information indicating the storage position where the feature data corresponding to the second data is stored. A validity determination can be made using feature data corresponding to the data. As a result, it is possible to improve the reliability of the write.
本実施形態では、特徴データ登録部は、第2データに対応する特徴データを記憶部に記憶させる場合、第1ライトデータに含まれて第2データの後続となる管理単位の第3データに対応する特徴データを、第2データに対応する特徴データと関連付けて記憶部に記憶させる。例えば、上述した実施形態では、第3データに対応するハッシュ値が、第2データに対応するハッシュ値のエントリに登録される。そして、判定処理部は、第2ライトデータに対して重複判定を行う場合に、第2データに対応する特徴データとの関連付けに基づき第3データに対応する特徴データを読み出し、第3データに対応する特徴データを用いて重複判定を行う。このような構成によれば、第3データに対応する特徴データについては、第2データに対応する特徴データとの関連付けに基づいて取得することができる。すなわち、同じ処理を繰り返すことで次々と後続データに対応する特徴データを取得することができる。これにより、ライト性能の向上をさらに図ることができる。 In this embodiment, when the feature data registration unit stores feature data corresponding to the second data in the storage unit, the feature data registration unit corresponds to the third data of the management unit included in the first write data and subsequent to the second data. The feature data corresponding to the second data is stored in the storage unit in association with the feature data corresponding to the second data. For example, in the embodiment described above, the hash value corresponding to the third data is registered in the hash value entry corresponding to the second data. Then, when performing overlap determination on the second write data, the determination processing unit reads out the feature data corresponding to the third data based on the association with the feature data corresponding to the second data, and reads the feature data corresponding to the third data. Duplicate determination is performed using feature data that According to such a configuration, the feature data corresponding to the third data can be acquired based on the association with the feature data corresponding to the second data. That is, by repeating the same process, it is possible to acquire feature data corresponding to succeeding data one after another. This makes it possible to further improve the write performance.
<5.変形例>
上述した実施形態では、チャンクサイズよりも大きいサイズのライトデータに関するものであったが、上述した実施形態は、例えば小さいサイズのデータのライト命令が連続するシーケンシャルライトにも適用可能である。シーケンシャルライトで受信するライトデータは、「一連のライトデータ」の一例であるとともに、「第1ライトデータ」および「第2ライトデータ」のそれぞれ別の一例である。ディスクアレイ装置1がホスト2からのシーケンシャルライトを検出した場合には、ハッシュエントリ1521に後続ハッシュ値と後続ハッシュエントリ位置とを記憶することで、続くアドレスへのライト処理におけるハッシュ値判定にて、後続ハッシュ値によるハッシュ判定(図6のS611~S612)を実施することが可能となる。これにより、ライト性能の向上を図ることができる。
<5. Variation>
Although the above-described embodiments relate to write data having a size larger than the chunk size, the above-described embodiments can also be applied to sequential writes in which write commands for small-sized data are consecutive, for example. The write data received by sequential write is an example of "a series of write data" and is an example of "first write data" and "second write data". When the disk array device 1 detects a sequential write from the
図10は、最小構成のストレージ装置を示す図である。
図11は、最小構成のストレージ装置における処理の流れを示すフローを示す図である。ストレージ装置800は、ライト命令処理部810と、特徴データ登録部820と、判定処理部830とを備える。
ライト命令処理部810は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付ける(S902)。
特徴データ登録部820は、第1ライトデータに含まれる管理単位の第1データに対応する特徴データを記憶部に記憶させる場合、第1ライトデータに含まれて第1データの後続となる管理単位の第2データに対応する特徴データを、第1データに対応する特徴データと関連付けて記憶部に記憶させる(S901)。
判定処理部830は、第2ライトデータに対して重複判定を行う場合に、第1データに対応する特徴データを用いて重複判定を行い、第1データに対応する特徴データとの関連付けに基づき第2データに対応する特徴データを読み出し、第2データに対応する特徴データを用いて重複判定を行う(S903)。
FIG. 10 is a diagram showing a storage device with a minimum configuration.
FIG. 11 is a diagram showing a flow of processing in a storage device with a minimum configuration. The
The write
When the feature data registration unit 820 stores feature data corresponding to the first data in the management unit included in the first write data in the storage unit, the feature data registration unit 820 stores the feature data in the management unit following the first data included in the first write data. is stored in the storage unit in association with the feature data corresponding to the first data (S901).
When performing overlap determination on the second write data, the
図12は、少なくとも1つの実施形態に係るストレージ装置のコンピュータの構成を示す概略ブロック図である。コンピュータ5は、CPU6、メインメモリ7、ストレージ8、インターフェース9を備える。
FIG. 12 is a schematic block diagram showing the computer configuration of the storage device according to at least one embodiment.
例えば、上述のI/O処理部11、メモリ12、重複排除ボリューム13、プールボリューム14、および管理ボリューム15のそれぞれは、コンピュータ5に実装される。そして、上述したI/O処理部11の動作は、プログラムの形式でストレージ8に記憶されている。CPU6は、プログラムをストレージ8から読み出してメインメモリ7に展開し、当該プログラムに従って上記処理を実行する。また、CPU6は、プログラムに従って、上述した重複排除ボリューム13、プールボリューム14、および管理ボリューム15に対応する記憶領域をストレージ8に確保する。メモリ12は、メインメモリ7により実現される。
For example, each of the I/
重複排除ボリューム13、プールボリューム14、および管理ボリューム15の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、半導体メモリなどが挙げられる。重複排除ボリューム13、プールボリューム14、および管理ボリューム15は、コンピュータ5のバスに直接接続された内部メディアであってもよいし、インターフェース9または通信回線を介してコンピュータ5に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ5に配信される場合、配信を受けたコンピュータ5が当該プログラムをメインメモリ7に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ8は、一時的でない有形の記憶媒体である。
Examples of the
また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル(差分プログラム)であってもよい。 Further, the program may implement part of the functions described above. Furthermore, the program may be a file capable of realizing the above functions in combination with a program already recorded in the computer system, that is, a so-called difference file (difference program).
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例であり、発明の範囲を限定しない。これらの実施形態は、発明の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。 While several embodiments of the invention have been described, these embodiments are examples and do not limit the scope of the invention. Various additions, omissions, replacements, and modifications may be made to these embodiments without departing from the scope of the invention.
S…情報処理システム
1…ディスクアレイ装置
2…ホスト
11…I/O処理部
12…メモリ
13…重複排除ボリューム
14…プールボリューム
15…管理モジュール
111…ライト命令処理部
1111…ハッシュ値算出部
112…リード命令処理部
113…ハッシュ値判定処理部
1131…ハッシュ値判定方法決定部
1132…ハッシュ値検索部
1133…後続ハッシュ値比較部
114…重複排除処理部
1141…ハッシュ値登録部
1142…チャンクデータライト部
800…ストレージ装置
810…ライト命令処理部
820…特徴データ登録部
830…判定処理部
S... Information processing system 1...
上記目的を達成するために、本発明の第1態様によれば、ストレージ装置は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けるライト命令処理手段と、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データである第1特徴データを記憶手段に記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データである第2特徴データを、前記第1特徴データと関連付けて前記記憶手段に記憶させる特徴データ登録手段と、第2ライトデータに対して重複判定を行う場合に、前記第1特徴データと、前記第2ライトデータに含まれる前記管理単位の第4データに対応する前記特徴データである第4特徴データとを比較する第1重複判定を行い、前記第1重複判定において前記第1特徴データと前記第4特徴データとが一致し、前記第1特徴データとの関連付けに基づき前記第2特徴データが読み出し可能である場合、前記第1特徴データとの関連付けに基づき前記第2特徴データを読み出し、前記第2特徴データと、前記第2ライトデータに含まれて前記第4データの後続となる前記管理単位の第5データに対応する前記特徴データである第5特徴データとを比較する第2重複判定を行う判定処理手段と、前記第1重複判定の結果に基づき、前記第4データが重複データであるか否か判定し、前記第2重複判定の結果に基づき、前記第5データが重複データであるか否か判定する重複排除処理手段と、を備える。 In order to achieve the above object, according to a first aspect of the present invention, a storage device associates feature data corresponding to each piece of data in a predetermined management unit included in a bundle or a series of write data. When the write command processing means and the first characteristic data corresponding to the first data of the management unit included in the first write data are stored in the storage means, the first characteristic data included in the first write data are stored in the storage means. a feature data registering means for storing second feature data, which is the feature data corresponding to the second data of the management unit subsequent to the first data, in the storage means in association with the first feature data; comparing the first feature data with the fourth feature data corresponding to the fourth data of the management unit included in the second write data when performing overlap determination on the write data; When a first duplication determination is performed, the first feature data and the fourth feature data match in the first duplication determination, and the second feature data can be read based on the association with the first feature data. , reading the second feature data based on the association with the first feature data, and reading the second feature data and the fifth data of the management unit included in the second write data and subsequent to the fourth data; determination processing means for performing a second overlap determination for comparing the fifth feature data, which is the feature data corresponding to , and determining whether or not the fourth data is duplicate data based on the result of the first overlap determination and duplicate elimination processing means for determining whether or not the fifth data is duplicate data based on the result of the second duplicate determination.
上記目的を達成するために、本発明の第2態様によれば、情報処理システムは、ホストと、前記ホストと通信可能に接続されたストレージ装置と、を備える。前記ストレージ装置は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けるライト命令処理手段と、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データである第1特徴データを記憶手段に記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データである第2特徴データを、前記第1特徴データと関連付けて前記記憶手段に記憶させる特徴データ登録手段と、第2ライトデータに対して重複判定を行う場合に、前記第1特徴データと、前記第2ライトデータに含まれる前記管理単位の第4データに対応する前記特徴データである第4特徴データとを比較する第1重複判定を行い、前記第1重複判定において前記第1特徴データと前記第4特徴データとが一致し、前記第1特徴データとの関連付けに基づき前記第2特徴データが読み出し可能である場合、前記第1特徴データとの関連付けに基づき前記第2特徴データを読み出し、前記第2特徴データと、前記第2ライトデータに含まれて前記第4データの後続となる前記管理単位の第5データに対応する前記特徴データである第5特徴データとを比較する第2重複判定を行う判定処理手段と、前記第1重複判定の結果に基づき、前記第4データが重複データであるか否か判定し、前記第2重複判定の結果に基づき、前記第5データが重複データであるか否か判定する重複排除処理手段と、を含む。 To achieve the above object, according to a second aspect of the present invention, an information processing system includes a host and a storage device communicably connected to the host. The storage device comprises: write command processing means for associating characteristic data corresponding to each piece of data in a predetermined management unit included in a set or a series of write data; When the first feature data , which is the feature data corresponding to the first data, is stored in the storage means, it corresponds to the second data of the management unit included in the first write data and subsequent to the first data. a feature data registering means for storing the second feature data , which is the feature data, in the storage means in association with the first feature data; and fourth feature data, which is the feature data corresponding to the fourth data of the management unit included in the second write data . If the data and the fourth feature data match and the second feature data can be read based on the association with the first feature data, the second feature data is read based on the association with the first feature data. reading and comparing the second feature data with the fifth feature data which is the feature data corresponding to the fifth data of the management unit included in the second write data and subsequent to the fourth data ; determination processing means for performing 2- duplication determination; determining whether or not the fourth data is duplicate data based on the result of the first duplication determination; determining whether the fifth data is duplicate data based on the result of the second duplication determination; and deduplication processing means for determining whether the data is duplicated data .
上記目的を達成するために、本発明の第3態様によれば、情報処理方法は、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付け、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データである第1特徴データを記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データである第2特徴データを、前記第1特徴データと関連付けて記憶させ、第2ライトデータに対して重複判定を行う場合に、前記第1特徴データと、前記第2ライトデータに含まれる前記管理単位の第4データに対応する前記特徴データである第4特徴データとを比較する第1重複判定を行い、前記第1重複判定において前記第1特徴データと前記第4特徴データとが一致し、前記第1特徴データとの関連付けに基づき前記第2特徴データが読み出し可能である場合、前記第1特徴データとの関連付けに基づき前記第2特徴データを読み出し、前記第2特徴データと、前記第2ライトデータに含まれて前記第4データの後続となる前記管理単位の第5データに対応する前記特徴データである第5特徴データとを比較する第2重複判定を行なわせ、前記第1重複判定の結果に基づき、前記第4データが重複データであるか否か判定させ、前記第2重複判定の結果に基づき、前記第5データが重複データであるか否か判定させる、ことを含む。
In order to achieve the above object, according to a third aspect of the present invention, an information processing method provides, for each data of a predetermined management unit included in a set or a series of write data, feature data corresponding to the data. When storing the first feature data, which is the feature data corresponding to the first data of the management unit included in the first write data, the first feature data included in the first write data and subsequent to the first data When the second feature data , which is the feature data corresponding to the second data in the management unit, is stored in association with the first feature data, and the duplication determination is performed on the second write data, the first performing a first duplication determination for comparing the feature data with the fourth feature data, which is the feature data corresponding to the fourth data of the management unit included in the second write data; When the first feature data and the fourth feature data match and the second feature data can be read based on the association with the first feature data, the second feature data can be read based on the association with the first feature data. reading data, and comparing the second feature data with the fifth feature data, which is the feature data corresponding to the fifth data of the management unit included in the second write data and subsequent to the fourth data; determining whether the fourth data is duplicate data based on the result of the first duplication determination; determining whether the fifth data is duplicate data based on the result of the second duplication determination; It includes determining whether or not it is duplicate data .
上記目的を達成するために、本発明の第4態様によれば、プログラムは、コンピュータに、ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けることと、第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データである第1特徴データを記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データである第2特徴データを、前記第1特徴データと関連付けて記憶させることと、第2ライトデータに対して重複判定を行う場合に、前記第1特徴データと、前記第2ライトデータに含まれる前記管理単位の第4データに対応する前記特徴データである第4特徴データとを比較する第1重複判定を行い、前記第1重複判定において前記第1特徴データと前記第4特徴データとが一致し、前記第1特徴データとの関連付けに基づき前記第2特徴データが読み出し可能である場合、前記第1特徴データとの関連付けに基づき前記第2特徴データを読み出し、前記第2特徴データと、前記第2ライトデータに含まれて前記第4データの後続となる前記管理単位の第5データに対応する前記特徴データである第5特徴データとを比較する第2重複判定を行うことと、前記第1重複判定の結果に基づき、前記第4データが重複データであるか否か判定し、前記第2重複判定の結果に基づき、前記第5データが重複データであるか否か判定することと、を実行させる。
In order to achieve the above object, according to the fourth aspect of the present invention, a program is provided in a computer for each data in a predetermined management unit included in a set or a series of write data, characteristic data corresponding to the data and when storing the first feature data, which is the feature data corresponding to the first data of the management unit included in the first write data, the first data included in the first write data storing the second feature data , which is the feature data corresponding to the second data of the succeeding management unit, in association with the first feature data; and performing duplication determination on the second write data. , performing a first duplication determination for comparing the first feature data with the fourth feature data, which is the feature data corresponding to the fourth data of the management unit included in the second write data, and performing the first duplication determination ; If the first feature data and the fourth feature data match in determination and the second feature data can be read based on the association with the first feature data, based on the association with the first feature data reading out the second feature data, and a fifth feature that is the second feature data and the feature data corresponding to the fifth data of the management unit that is included in the second write data and succeeds the fourth data; performing a second overlap determination comparing the data , determining whether the fourth data is overlap data based on the result of the first overlap determination, and determining whether the fourth data is overlap data based on the result of the second overlap determination; and determining whether the fifth data is duplicate data .
Claims (9)
第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶手段に記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて前記記憶手段に記憶させる特徴データ登録手段と、
第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行う判定処理手段と、
を備えたストレージ装置。 write command processing means for associating feature data corresponding to each piece of data in a predetermined management unit included in a set or a series of write data;
When the feature data corresponding to the first data of the management unit included in the first write data is stored in the storage means, the first data of the management unit included in the first write data and subsequent to the first data is stored in the storage means. a feature data registering means for storing the feature data corresponding to the second data in the storage means in association with the feature data corresponding to the first data;
When the overlap determination is performed on the second write data, the overlap determination is performed using the feature data corresponding to the first data, and the second write data is associated with the feature data corresponding to the first data. determination processing means for reading the feature data corresponding to the data and performing overlap determination using the feature data corresponding to the second data;
A storage device with
請求項1に記載のストレージ装置。 The feature data is a hash value calculated from the data of the management unit,
The storage device according to claim 1.
請求項1または請求項2に記載のストレージ装置。 The feature data registration means registers the feature data corresponding to the second data in the same entry as the feature data corresponding to the first data.
3. The storage device according to claim 1 or 2.
請求項1から請求項3のうちいずれか1項に記載のストレージ装置。 The feature data registration means registers the feature data corresponding to the second data and the information indicating the storage location of the feature data corresponding to the second data to be the same as the feature data corresponding to the first data. register for entry
The storage device according to any one of claims 1 to 3.
請求項3または請求項4に記載のストレージ装置。 The storage means stores table information including a plurality of hierarchies, and position information of the entry is stored in table information of the lowest layer of the plurality of hierarchies.
5. The storage device according to claim 3 or 4.
前記判定処理手段は、前記第2ライトデータに対して重複判定を行う場合に、前記第2データに対応する前記特徴データとの関連付けに基づき前記第3データに対応する前記特徴データを読み出し、前記第3データに対応する前記特徴データを用いて重複判定を行う、
請求項1から請求項5のうちいずれか1項に記載のストレージ装置。 When the feature data registering means stores the feature data corresponding to the second data in the storage means, the third data of the management unit included in the first write data and succeeding the second data. the feature data corresponding to is stored in the storage means in association with the feature data corresponding to the second data;
The determination processing means reads the feature data corresponding to the third data based on the association with the feature data corresponding to the second data when performing overlap determination on the second write data, and performing overlap determination using the feature data corresponding to the third data;
The storage device according to any one of claims 1 to 5.
前記ホストと通信可能に接続されたストレージ装置と、
を備え、
前記ストレージ装置は、
ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けるライト命令処理手段と、
第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶手段に記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて前記記憶手段に記憶させる特徴データ登録手段と、
第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行う判定処理手段と、
を含む、情報処理システム。 host and
a storage device communicably connected to the host;
with
The storage device is
write command processing means for associating feature data corresponding to each piece of data in a predetermined management unit included in a set or a series of write data;
When the feature data corresponding to the first data of the management unit included in the first write data is stored in the storage means, the first data of the management unit included in the first write data and subsequent to the first data is stored in the storage means. a feature data registering means for storing the feature data corresponding to the second data in the storage means in association with the feature data corresponding to the first data;
When the overlap determination is performed on the second write data, the overlap determination is performed using the feature data corresponding to the first data, and the second write data is associated with the feature data corresponding to the first data. determination processing means for reading the feature data corresponding to the data and performing overlap determination using the feature data corresponding to the second data;
An information processing system, including;
第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて記憶させ、
第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行う、
情報処理方法。 Associate feature data corresponding to each data in a predetermined management unit included in a set or a series of write data,
When storing the characteristic data corresponding to the first data of the management unit included in the first write data, the second data of the management unit included in the first write data and succeeding the first data storing the corresponding feature data in association with the feature data corresponding to the first data;
When the overlap determination is performed on the second write data, the overlap determination is performed using the feature data corresponding to the first data, and the second write data is associated with the feature data corresponding to the first data. reading the feature data corresponding to the data, and performing overlap determination using the feature data corresponding to the second data;
Information processing methods.
ひと纏まりまたは一連のライトデータに含まれる所定の管理単位のデータごとに、当該データに応じた特徴データを対応付けることと、
第1ライトデータに含まれる前記管理単位の第1データに対応する前記特徴データを記憶させる場合、前記第1ライトデータに含まれて前記第1データの後続となる前記管理単位の第2データに対応する前記特徴データを、前記第1データに対応する前記特徴データと関連付けて記憶させることと、
第2ライトデータに対して重複判定を行う場合に、前記第1データに対応する前記特徴データを用いて重複判定を行い、前記第1データに対応する前記特徴データとの関連付けに基づき前記第2データに対応する前記特徴データを読み出し、前記第2データに対応する前記特徴データを用いて重複判定を行うことと、
を実行させるプログラム。 to the computer,
Associating feature data corresponding to each piece of data in a predetermined management unit included in a bundle or a series of write data;
When storing the characteristic data corresponding to the first data of the management unit included in the first write data, the second data of the management unit included in the first write data and succeeding the first data storing the corresponding feature data in association with the feature data corresponding to the first data;
When the overlap determination is performed on the second write data, the overlap determination is performed using the feature data corresponding to the first data, and the second write data is associated with the feature data corresponding to the first data. reading the feature data corresponding to the data and performing overlap determination using the feature data corresponding to the second data;
program to run.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021082355A JP7215804B2 (en) | 2021-05-14 | 2021-05-14 | Storage device, information processing system, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021082355A JP7215804B2 (en) | 2021-05-14 | 2021-05-14 | Storage device, information processing system, information processing method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022175713A true JP2022175713A (en) | 2022-11-25 |
JP7215804B2 JP7215804B2 (en) | 2023-01-31 |
Family
ID=84145073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021082355A Active JP7215804B2 (en) | 2021-05-14 | 2021-05-14 | Storage device, information processing system, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7215804B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018514045A (en) * | 2015-12-29 | 2018-05-31 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Deduplication method and storage device |
US10565183B1 (en) * | 2016-05-02 | 2020-02-18 | Pure Storage, Inc. | Efficient deduplication signature utilization |
US20210034578A1 (en) * | 2019-08-02 | 2021-02-04 | EMC IP Holding Company LLC | Inline deduplication using neighboring segment loading |
-
2021
- 2021-05-14 JP JP2021082355A patent/JP7215804B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018514045A (en) * | 2015-12-29 | 2018-05-31 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Deduplication method and storage device |
US10565183B1 (en) * | 2016-05-02 | 2020-02-18 | Pure Storage, Inc. | Efficient deduplication signature utilization |
US20210034578A1 (en) * | 2019-08-02 | 2021-02-04 | EMC IP Holding Company LLC | Inline deduplication using neighboring segment loading |
Also Published As
Publication number | Publication date |
---|---|
JP7215804B2 (en) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10620862B2 (en) | Efficient recovery of deduplication data for high capacity systems | |
CN108459826B (en) | Method and device for processing IO (input/output) request | |
US10402091B1 (en) | Managing data in log-structured storage systems | |
US9830274B2 (en) | Caching and deduplication of data blocks in cache memory | |
US10248623B1 (en) | Data deduplication techniques | |
US8732403B1 (en) | Deduplication of data blocks on storage devices | |
US20140297603A1 (en) | Method and apparatus for deduplication of replicated file | |
CN108604165B (en) | Storage device | |
US11580162B2 (en) | Key value append | |
US20210157746A1 (en) | Key-value storage device and system including the same | |
US9842057B2 (en) | Storage apparatus, storage system, and data read method | |
CN107766374B (en) | Optimization method and system for storage and reading of massive small files | |
US10592150B2 (en) | Storage apparatus | |
CN113535670B (en) | Virtual resource mirror image storage system and implementation method thereof | |
WO2017113059A1 (en) | Discrepant data backup method, storage system and discrepant data backup device | |
US20170083537A1 (en) | Mapping logical identifiers using multiple identifier spaces | |
JP2019028954A (en) | Storage control apparatus, program, and deduplication method | |
CN110187834B (en) | Data processing method and device for duplicate copies and electronic equipment | |
US11321002B2 (en) | Converting a virtual volume between volume types | |
KR102071072B1 (en) | Method for managing of memory address mapping table for data storage device | |
WO2024119797A1 (en) | Data processing method and system, device, and storage medium | |
WO2016038714A1 (en) | File system, data deduplication method, and program for file system | |
US11016884B2 (en) | Virtual block redirection clean-up | |
JP7215804B2 (en) | Storage device, information processing system, information processing method, and program | |
CN114974365A (en) | SSD (solid State disk) limited window data deduplication identification method and device and computer equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210514 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220628 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220829 |
|
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: 20221220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230113 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7215804 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |