JP5660617B2 - Storage device - Google Patents
Storage device Download PDFInfo
- Publication number
- JP5660617B2 JP5660617B2 JP2011072791A JP2011072791A JP5660617B2 JP 5660617 B2 JP5660617 B2 JP 5660617B2 JP 2011072791 A JP2011072791 A JP 2011072791A JP 2011072791 A JP2011072791 A JP 2011072791A JP 5660617 B2 JP5660617 B2 JP 5660617B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- stored
- storage device
- user
- 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
Description
本発明は、ストレージ装置にかかり、特に、同一内容のデータの重複記憶を排除するストレージ装置に関する。 The present invention relates to a storage apparatus, and more particularly to a storage apparatus that eliminates redundant storage of data having the same content.
近年、コンピュータの発達及び普及に伴い、種々の情報がデジタルデータ化されている。このようなデジタルデータを保存しておく装置として、磁気テープや磁気ディスクなどの記憶装置がある。そして、保存すべきデータは日々増大し、膨大な量となるため、大容量なストレージシステムが必要となっている。また、記憶装置に費やすコストを削減しつつ、信頼性も必要とされる。これに加えて、後にデータを容易に取り出すことが可能であることも必要である。その結果、自動的に記憶容量や性能の増大を実現できると共に、重複記憶を排除して記憶コストを削減し、さらには、冗長性の高いストレージシステムが望まれている。 In recent years, with the development and spread of computers, various types of information have been converted into digital data. As a device for storing such digital data, there are storage devices such as a magnetic tape and a magnetic disk. Since the data to be stored increases day by day and becomes enormous, a large-capacity storage system is required. In addition, reliability is required while reducing the cost of the storage device. In addition to this, it is necessary that data can be easily retrieved later. As a result, there is a demand for a storage system that can automatically increase storage capacity and performance, eliminate duplicate storage, reduce storage costs, and have high redundancy.
このような状況に応じて、近年では、特許文献1に示すように、コンテンツアドレスストレージシステムが開発されている。このコンテンツアドレスストレージシステムは、データを分散して複数の記憶装置に記憶すると共に、このデータの内容に応じて特定される固有のコンテンツアドレスによって、当該データを格納した格納位置が特定される。具体的に、コンテンツアドレスストレージシステムでは、所定のデータを複数のフラグメントに分割すると共に、冗長データとなるフラグメントをさらに付加して、これら複数のフラグメントをそれぞれ複数の記憶装置にそれぞれ格納している。 In response to such a situation, in recent years, a content address storage system has been developed as shown in Patent Document 1. In this content address storage system, data is distributed and stored in a plurality of storage devices, and the storage location where the data is stored is specified by a unique content address specified according to the content of the data. Specifically, in the content address storage system, predetermined data is divided into a plurality of fragments, and a fragment that becomes redundant data is further added, and the plurality of fragments are respectively stored in a plurality of storage devices.
そして、後に、コンテンツアドレスを指定することにより、当該コンテンツアドレスにて特定される格納位置に格納されているデータつまりフラグメントを読み出し、複数のフラグメントから分割前の所定のデータを復元することができる。 Then, by designating the content address later, it is possible to read out the data stored at the storage location specified by the content address, that is, the fragment, and restore the predetermined data before the division from the plurality of fragments.
また、上記コンテンツアドレスとして、データの内容に応じて固有となるよう生成される例えばデータのハッシュ値を用いる。このため、重複データであれば同じ格納位置のデータを参照することで、同一内容のデータを取得することができる。従って、重複データを別々に格納する必要がなく、重複記録を排除し、データ容量の削減を図ることができる。 Further, as the content address, for example, a hash value of data generated to be unique according to the content of data is used. For this reason, if it is duplicate data, the data of the same content can be acquired by referring to the data at the same storage position. Therefore, it is not necessary to store the duplicate data separately, and duplicate recording can be eliminated and the data capacity can be reduced.
ここで、上述したデータの重複排除の判定は、一般的に、ファイルのデータをある長さ(固定長または可変長)に区切って、それらを比較することにより行っている。このため、1つのファイル中のデータの差異が、ファイルを区切った長さより小さな間隔で存在すると、それらは同一内容のデータとは判定されない。つまり、区切ったデータ間に同一内容のデータ部分が存在していた場合であっても、わずかな差異が存在すると、両方の区切ったデータが記憶されることとなり、効率よく記憶するデータの重複排除ができない。 Here, the above-described data deduplication determination is generally performed by dividing file data into a certain length (fixed length or variable length) and comparing them. For this reason, if there is a difference in data in one file at an interval smaller than the length of dividing the file, they are not determined as data having the same content. In other words, even if there is a data part with the same content between the divided data, if there is a slight difference, both the divided data will be stored, and deduplication of the data to be stored efficiently I can't.
例えば、データをバックアップするソフトウェアは、バックアップするデータの他に、独自の管理情報をバックアップファイルへ挿入することを行っている。すると、この挿入される独自の管理情報がバックアップ毎に異なり、かつ、この管理情報の挿入間隔がデータ重複判定時のデータ区切り間隔より短い場合には、上述したように、記憶するデータの重複排除ができない。その結果、データの格納効率が低下する、という問題が生じる。 For example, software for backing up data inserts unique management information into a backup file in addition to the data to be backed up. Then, when the inserted unique management information is different for each backup and the insertion interval of this management information is shorter than the data delimiter interval at the time of data duplication determination, as described above, deduplication of stored data is performed. I can't. As a result, there arises a problem that data storage efficiency is lowered.
このため、本発明の目的は、上述した課題である、データ格納効率の低下を解決することにある。 Therefore, an object of the present invention is to solve the decrease in data storage efficiency, which is the problem described above.
上記目的を達成すべく、本発明の一形態であるストレージシステムは、
書き込み対象となるデータを所定容量に分割して記憶装置に格納すると共に、当該記憶装置に既に記憶されているデータと同一内容の他のデータを前記記憶装置に格納する場合に当該記憶装置に既に記憶されているデータを他のデータとして参照させるデータ書き込み部と、
書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離するデータ分離部と、を備え、
前記データ書き込み部は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして前記管理データ部分を前記ファイルに含めて格納し、前記ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、
という構成を取る。
In order to achieve the above object, a storage system according to one aspect of the present invention provides:
The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. A data writing section for referring to stored data as other data;
A data separation unit that separates data to be written into a user data part and a management data part that are classified according to a preset criterion;
The data writing unit generates a file storing the user data part, stores the management data part as metadata associated with the user data part stored in the file, and stores the management data part in the file, Storing the file in the storage device as data to be written;
Take the configuration.
また、本発明の他の形態であるプログラムは、
書き込み対象となるデータを所定容量に分割して記憶装置に格納すると共に、当該記憶装置に既に記憶されているデータと同一内容の他のデータを前記記憶装置に格納する場合に当該記憶装置に既に記憶されているデータを他のデータとして参照させるデータ書き込み部を備えた情報処理装置に、
書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離するデータ分離部を実現させると共に、
前記データ書き込み部は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして前記管理データ部分を前記ファイルに含めて格納し、前記ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、ことを実現させるためのプログラムである。
Moreover, the program which is the other form of this invention is:
The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. In an information processing apparatus provided with a data writing unit for referring to stored data as other data,
In addition to realizing a data separation unit that separates data to be written into a user data part and a management data part that are classified according to preset criteria,
The data writing unit generates a file storing the user data part, stores the management data part as metadata associated with the user data part stored in the file, and stores the management data part in the file, This is a program for realizing that a file is stored in the storage device as data to be written.
また、本発明の他の形態であるデータ格納方法は、
書き込み対象となるデータを所定容量に分割して記憶装置に格納すると共に、当該記憶装置に既に記憶されているデータと同一内容の他のデータを前記記憶装置に格納する場合に当該記憶装置に既に記憶されているデータを他のデータとして参照させるデータ書き込み工程を有するデータ格納方法であって、
前記データ書き込み工程の前に、書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離するデータ分離工程を有し、
前記データ書き込み工程は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして前記管理データ部分を前記ファイルに含めて格納し、前記ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、
という構成を取る。
In addition, a data storage method according to another aspect of the present invention includes:
The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. A data storage method including a data writing step for referring to stored data as other data,
Before the data writing step, it has a data separation step of separating the data to be written into a user data portion and a management data portion that are classified according to a preset standard,
The data writing step generates a file storing the user data portion, stores the management data portion in the file as metadata associated with the user data portion stored in the file, and stores the file. Storing the file in the storage device as data to be written;
Take the configuration.
本発明は、以上のように構成されることにより、データ格納効率の向上を図ることができる。 By configuring as described above, the present invention can improve the data storage efficiency.
<実施形態1>
本発明の第1の実施形態を、図1乃至図9を参照して説明する。図1は、システム全体の構成を示すブロック図である。図2は、ストレージシステムの概略を示すブロック図であり、図3は、ストレージシステムの構成を示す機能ブロック図である。図4乃至図6は、ストレージシステムにおけるデータ書き込み処理の動作を説明するための説明図である。図7は、記憶装置に記憶されるインデックスデータのデータ構造を示す図である。図8乃至図9は、ストレージシステムの動作を示すフローチャートである。
<Embodiment 1>
A first embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a block diagram showing the configuration of the entire system. FIG. 2 is a block diagram showing an outline of the storage system, and FIG. 3 is a functional block diagram showing the configuration of the storage system. 4 to 6 are explanatory diagrams for explaining the operation of data write processing in the storage system. FIG. 7 is a diagram illustrating a data structure of index data stored in the storage device. 8 to 9 are flowcharts showing the operation of the storage system.
ここで、本実施形態は、後述する付記に記載のストレージ装置等の具体的な一例を示すものである。そして、以下では、ストレージシステムが、複数台のサーバコンピュータが接続されて構成されている場合を説明する。但し、本発明におけるストレージシステムは、複数台のコンピュータにて構成されることに限定されず、1台のコンピュータで構成されていてもよい。 Here, the present embodiment shows a specific example of a storage device or the like described in an appendix to be described later. In the following, a case where the storage system is configured by connecting a plurality of server computers will be described. However, the storage system according to the present invention is not limited to being configured by a plurality of computers, and may be configured by a single computer.
[構成]
図1に示すように、本発明におけるストレージシステム1は、ネットワークNを介してバックアップ処理を制御するバックアップシステム4に接続している。そして、バックアップシステム4は、ネットワークNを介して接続されたバックアップ対象装置5に格納されているバックアップ対象データ(書き込み対象となるデータ)を取得し、ストレージシステム1に対して記憶するよう要求する。これにより、ストレージシステム1は、記憶要求されたバックアップ対象データをバックアップ用に記憶する。
[Constitution]
As shown in FIG. 1, the storage system 1 in the present invention is connected to a
そして、図2に示すように、本実施形態におけるストレージシステム1は、複数のサーバコンピュータが接続された構成を採っている。具体的に、ストレージシステム1は、ストレージシステム1自体における記憶再生動作を制御するサーバコンピュータであるアクセラレータノード2と、データを格納する記憶装置を備えたサーバコンピュータであるストレージノード3と、を備えている。なお、アクセラレータノード2の数とストレージノード3の数は、図2に示したものに限定されず、さらに多くの各ノード2,3が接続されて構成されていてもよい。
As shown in FIG. 2, the storage system 1 in this embodiment has a configuration in which a plurality of server computers are connected. Specifically, the storage system 1 includes an
さらに、本実施形態におけるストレージシステム1は、データを分割及び冗長化し、分散して複数の記憶装置に記憶すると共に、記憶するデータの内容に応じて設定される固有のコンテンツアドレスによって、当該データを格納した格納位置を特定するコンテンツアドレスストレージシステムである。このコンテンツアドレスストレージシステムについては、後に詳述する。 Furthermore, the storage system 1 according to the present embodiment divides and redundantly stores the data, distributes and stores the data in a plurality of storage devices, and stores the data by a unique content address set according to the content of the stored data. It is a content address storage system for specifying a stored location. This content address storage system will be described in detail later.
なお、以下では、ストレージシステム1が1つのシステムであるとして、当該ストレージシステム1が備えている構成及び機能を説明する。つまり、以下に説明するストレージシステム1が有する構成及び機能は、アクセラレータノード2あるいはストレージノード3のいずれに備えられていてもよい。なお、ストレージシステム1は、図2に示すように、必ずしもアクセラレータノード2とストレージノード3とを備えていることに限定されず、いかなる構成であってもよく、例えば、1台のコンピュータにて構成されていてもよい。さらには、ストレージシステム1は、コンテンツアドレスストレージシステムであることにも限定されず、重複排除機能を有しているストレージシステムであればよい。
Hereinafter, assuming that the storage system 1 is one system, the configuration and functions of the storage system 1 will be described. That is, the configuration and function of the storage system 1 described below may be provided in either the
図3に、本実施形態におけるストレージシステム1の構成を示す。図3に示すストレージシステム1は、上述したアクセラレータノード2及びストレージノード3内に仮想的に構築されたデータ分離/結合装置10とCAS装置20とを備えている。そして、データ分離/結合装置10は、上述したバックアップ対象装置5やバックアップシステム4に装備されたデータ書き込み/読み取りソフトウェア30に接続されており、このソフトウェア30からの要求に応じて、ファイルを記憶したり、読み出す処理を行うものである。
FIG. 3 shows the configuration of the storage system 1 in this embodiment. The storage system 1 shown in FIG. 3 includes a data separation /
そして、上記データ分離/結合装置10は、装備された演算装置にプログラムが組み込まれることによって構築された、分離データ書き込み部11と、データ分離部12と、分離データ関連付け部13と、分離データ読み取り部14と、を備えている。また、CAS装置20のファイル21には、ユーザデータ記憶部22と、管理データ及びインデックスデータ記憶部23と、が形成されている。
The data separation /
なお、実際には、上述したストレージシステム1が備える構成は、図2に示したアクセラレータノード2及びストレージノード3がそれぞれ備えているCPU(Central Processing Unit)などの演算装置やハードディスクドライブなどの記憶装置にて構成されている。
Actually, the configuration of the storage system 1 described above includes an arithmetic device such as a CPU (Central Processing Unit) and a storage device such as a hard disk drive that are included in the
ここで、上述したように、本実施形態におけるストレージシステム1は、コンテンツアドレスストレージシステムである。このため、上述した分離データ書き込み部11(データ書き込み部)及びCAS装置20は、コンテンツアドレスを利用してデータを記憶装置25に格納する機能を有しており、以下に説明するように、データを分割及び分散し、かつ、コンテンツアドレスにて格納位置を特定して、当該データを格納する。以下、ストレージシステム1にてコンテンツアドレスを利用したデータ書き込み処理について、図4乃至図5を参照して説明する。
Here, as described above, the storage system 1 in the present embodiment is a content address storage system. For this reason, the separated data writing unit 11 (data writing unit) and the
まず、図4及び図5の矢印Y1に示すように、データ書き込み/読み取りソフトウェア30から分離データ書き込み部11を介して書き込み要求されたファイルAの入力を受けると、図4及び図5の矢印Y2に示すように、当該ファイルAを、所定容量(例えば、64KB)のブロックデータDに分割する。なお、上記ファイルAは、例えば、後述するように、データ分離部12にて分離されたユーザデータ部分22を含むファイル21であり、このファイル21は、図3に示すように、ユーザデータ22に関連付けられた拡張属性及び/又は代替データストリーム23を含む。そして、拡張属性及び/又は代替データストリーム23には、データ分離部12にて分離された管理データ部分及びインデックスデータ部分が格納される。
First, as shown by the arrow Y1 in FIGS. 4 and 5, when the input of the file A requested to be written is received from the data writing /
そして、ファイルAが分割されたブロックデータDのデータ内容に基づいて、当該データ内容を代表する固有のハッシュ値Hを算出する(図5の矢印Y3)。例えば、ハッシュ値Hは、予め設定されたハッシュ関数を用いて、ブロックデータDのデータ内容から算出する。 Then, based on the data contents of the block data D obtained by dividing the file A, a unique hash value H representing the data contents is calculated (arrow Y3 in FIG. 5). For example, the hash value H is calculated from the data content of the block data D using a preset hash function.
続いて、ファイルAのブロックデータDのハッシュ値Hを用いて、当該ブロックデータDが既に格納されているか否かを調べる。具体的には、まず、既に格納されているブロックデータDは、そのハッシュ値Hと格納位置を表すコンテンツアドレスCAとが、関連付けられてMFI(Main Fragment Index)ファイルに登録されている。従って、格納前に算出したブロックデータDのハッシュ値HがMFIファイル内に存在している場合には、既に同一内容のブロックデータDが格納されていると判断できる(図5の矢印Y4)。この場合には、格納前のブロックデータDのハッシュ値Hと一致したMFI内のハッシュ値Hに関連付けられているコンテンツアドレスCAを、当該MFIファイルから取得する。そして、このコンテンツアドレスCAを、書き込み要求されたブロックデータDのコンテンツアドレスCAとして返却する。これにより、このコンテンツアドレスCAにて参照される既に格納されているデータが、書き込み要求されたブロックデータDとして使用されることとなり、当該書き込み要求にかかるブロックデータDを記憶する必要がなくなる。 Subsequently, using the hash value H of the block data D of the file A, it is checked whether or not the block data D is already stored. Specifically, first, the block data D that has already been stored has its hash value H and a content address CA representing the storage position associated with each other and registered in an MFI (Main Fragment Index) file. Therefore, if the hash value H of the block data D calculated before storage is present in the MFI file, it can be determined that the same block data D has already been stored (arrow Y4 in FIG. 5). In this case, the content address CA associated with the hash value H in the MFI that matches the hash value H of the block data D before storage is acquired from the MFI file. Then, this content address CA is returned as the content address CA of the block data D requested to be written. As a result, the already stored data referred to by the content address CA is used as the block data D requested to be written, and there is no need to store the block data D related to the write request.
また、書き込み要求にかかるブロックデータDがまだ記憶されていないと判断された場合には、かかるブロックデータDを圧縮して、図5の矢印Y5に示すように、複数の所定の容量のフラグメントデータに分割する。例えば、図4の符号D1〜D9に示すように、9つのフラグメントデータ(分割データ41)に分割する。そしてさらに、分割したフラグメントデータのうちいくつかが欠けた場合であっても、元となるブロックデータを復元可能なよう冗長データを生成し、上記分割したフラグメントデータ41に追加する。例えば、図4の符号D10〜D12に示すように、3つのフラグメントデータ(冗長データ42)を追加する。これにより、9つの分割データ41と、3つの冗長データとにより構成される12個のフラグメントデータからなるデータセット40を生成する。
If it is determined that the block data D related to the write request is not yet stored, the block data D is compressed, and a plurality of pieces of fragment data having a predetermined capacity as shown by an arrow Y5 in FIG. Divide into For example, as shown by symbols D1 to D9 in FIG. 4, the data is divided into nine fragment data (divided data 41). Further, even if some of the divided fragment data is missing, redundant data is generated so that the original block data can be restored and added to the divided
続いて、上述したように生成されたデータセットを構成する各フラグメントデータを、記憶装置に形成された各記憶領域に、それぞれ分散して格納する。例えば、図4に示すように、12個のフラグメントデータD1〜D12を生成した場合には、複数の記憶装置内にそれぞれ形成したデータ格納ファイルに、各フラグメントデータD1〜D12を1つずつそれぞれ格納する(図5の矢印Y6参照)。 Subsequently, each fragment data constituting the data set generated as described above is distributed and stored in each storage area formed in the storage device. For example, as shown in FIG. 4, when 12 pieces of fragment data D1 to D12 are generated, each piece of fragment data D1 to D12 is stored in a data storage file formed in each of a plurality of storage devices. (See arrow Y6 in FIG. 5).
続いて、ストレージシステム1は、上述したように格納したフラグメントデータD1〜D12の格納位置、つまり、当該フラグメントデータD1〜D12にて復元されるブロックデータDの格納位置を表すコンテンツアドレスCAを生成して管理する。具体的には、格納したブロックデータDの内容に基づいて算出したハッシュ値Hの一部(ショートハッシュ)(例えば、ハッシュ値Hの先頭8B(バイト))と、論理格納位置を表す情報と、を組み合わせて、コンテンツアドレスCAを生成する。そして、このコンテンツアドレスCAを、ストレージシステム1内のファイルシステムに返却する(図5の矢印Y7)。すると、ストレージシステム1は、バックアップ対象データのファイル名などの識別情報と、コンテンツアドレスCAとを関連付けてファイルシステムで管理する。 Subsequently, the storage system 1 generates a content address CA indicating the storage position of the fragment data D1 to D12 stored as described above, that is, the storage position of the block data D restored by the fragment data D1 to D12. Manage. Specifically, a part of the hash value H (short hash) calculated based on the contents of the stored block data D (for example, the top 8B (bytes) of the hash value H), information indicating the logical storage position, Are combined to generate a content address CA. Then, this content address CA is returned to the file system in the storage system 1 (arrow Y7 in FIG. 5). Then, the storage system 1 manages identification information such as the file name of the backup target data and the content address CA in association with the file system.
また、ブロックデータDのコンテンツアドレスCAと、当該ブロックデータDのハッシュ値Hと、を関連付けて、各ストレージノード3がMFIファイルにて管理する。このように、上記コンテンツアドレスCAは、ファイルを特定する情報やハッシュ値Hなどと関連付けられて、アクセラレータノード2やストレージノード3の記憶装置に格納される。
Further, each
さらに、ストレージシステム1は、上述したように格納したファイルを読み出す制御を行う。例えば、ストレージシステム1に対して、特定のファイルを指定して読み出し要求があると、まず、ファイルシステムに基づいて、読み出し要求にかかるファイルに対応するハッシュ値の一部であるショートハッシュと論理位置の情報からなるコンテンツアドレスCAを指定する。そして、コンテンツアドレスCAがMFIファイルに登録されているか否かを調べる。登録されていなければ、要求されたデータは格納されていないため、エラーを返却する。 Furthermore, the storage system 1 performs control to read out the stored file as described above. For example, when a read request is made by designating a specific file to the storage system 1, first, based on the file system, a short hash and a logical position that are part of a hash value corresponding to the file related to the read request A content address CA consisting of the above information is designated. Then, it is checked whether or not the content address CA is registered in the MFI file. If it is not registered, the requested data is not stored and an error is returned.
一方、読み出し要求にかかるコンテンツアドレスCAが登録されている場合には、上記コンテンツアドレスCAにて指定される格納位置を特定し、この特定された格納位置に格納されている各フラグメントデータを、読み出し要求されたデータとして読み出す。このとき、各フラグメントが格納されているデータ格納ファイルと、当該データ格納ファイルのうち1つのフラグメントデータの格納位置が分かれば、同一の格納位置から他のフラグメントデータの格納位置を特定することができる。 On the other hand, when the content address CA related to the read request is registered, the storage location specified by the content address CA is specified, and each fragment data stored in the specified storage location is read. Read as requested data. At this time, if the data storage file in which each fragment is stored and the storage position of one fragment data in the data storage file are known, the storage position of other fragment data can be specified from the same storage position. .
そして、読み出し要求に応じて読み出した各フラグメントデータからブロックデータDを復元する。さらに、復元したブロックデータDを複数連結し、ファイルAなどの一群のデータに復元して返却する。 Then, the block data D is restored from each fragment data read in response to the read request. Further, a plurality of restored block data D are concatenated, restored to a group of data such as file A, and returned.
以上のようにして、本実施形態におけるストレージシステム1はデータの重複を排除しているが、さらにデータ格納効率を高めるための構成となっている。かかる構成について詳述する。 As described above, the storage system 1 in this embodiment eliminates duplication of data, but has a configuration for further improving data storage efficiency. This configuration will be described in detail.
まず、データ分離/結合装置10が備えるデータ分離部12は、図6に示すように、所定のファイルを構成する分離前データ30を、ファイルの実データ部分であり、当該ファイルが生成された時間や更新回数などによっても値が変化しない「ユーザデータ」群からなるユーザデータ部分31と、タイムスタンプや通番などのように時間や更新回数などの違いによって値が変化しファイル自体の管理情報を含む「管理データ」群からなる管理データ部分32と、に分離する。つまり、ユーザデータ部分31は、他のユーザデータと同一内容となる可能性があり、重複排除効果が期待できるデータである。一方、管理データ部分32は、他の管理データと同一内容となる可能性が低く、重複排除効果が期待しづらいデータである。なお、ユーザデータ部分31と管理データ部分32との分離は、予めデータ分離部12に各データ部分を区別するための基準情報が設定されており、かかる基準情報に基づいて行われる。
First, as shown in FIG. 6, the
そして、データ分離部12は、書き込み対象となるデータを、必ずしも「ユーザデータ部分」と「管理データ部分」とに分離することに限定されない。予め設定された基準に従って分類される1種類あるいは複数種類の他のデータ部分に分離してもよい。
The
また、データ分離部12は、図6に示すように、分離結果に基づいて、各ユーザデータや各管理データの分離前のデータに対する格納位置をそれぞれ特定する情報を含むインデックスデータ群からなるインデックスデータ部分33を生成する。例えば、上記インデックデータは、図7に示すように、ファイル種別、分離前ファイルにおけるファイル内オフセット、分離後の各ファイルにおけるファイル内オフセット、分離後のデータ長など、種々の管理情報を含んでいる。具体的に、上記「ファイル種別」は、対応するユーザデータあるいは管理データが格納されているファイル種別やファイル自体を特定するファイル情報である。また、「分離前ファイルにおけるファイル内オフセット」は、分離されたユーザデータあるいは管理データの分離される前のファイル内における位置情報である。また、「分離後の各ファイルにおけるファイル内オフセット」は、分離されたユーザデータあるいは管理データが分離後に格納されたユーザデータファイルあるいは管理データファイル内における位置情報である。そして、「分離後のデータ長」は、分離されたユーザデータあるいは管理データ自体のデータ長である。但し、インデックスデータに記憶される情報は、上述した情報に限定されない。
Further, as shown in FIG. 6, the
そして、分離データ書き込み部11(データ書き込み部)は、上記データ分離部12にて分離されたデータを記憶装置25に格納するが、このとき、図6に示すように分離されたユーザデータ部分31と管理データ部分32と生成されたインデックスデータ部分33とを、同一のファイル21に格納する。具体的に、分離データ書き込み部11は、図3のファイル21に示すように、ユーザデータ部分31のみをユーザデータ22としてファイル21に格納し、このユーザデータ22に関連付けられたメタデータである拡張属性や代替ストリーム23に、管理データ部分32とインデックスデータ部分33とを格納する。例えば、ファイル21は、拡張属性及び代替データストリームといったメタデータを含んでおり、拡張属性に管理データ部分32を格納し、代替データストリームにインデックスデータ部分33を格納している。但し、管理データ部分やインデックスデータ部分は、ファイル21に関連付けられたメタデータであれば、いかなるデータに格納されていてもよい。
The separated data writing unit 11 (data writing unit) stores the data separated by the
ここで、上述したファイルの「拡張属性」は、ファイル21の属性データを拡張したデータであり、検索キーと任意の内容のデータの組み合わせを要素とする検索可能なリスト構造のデータである。このリスト構造は、ファイル21のオフセットをキーに、データを取り出すユーザデータ22と類似しており、当該ユーザデータ22と同様の扱いができる。
Here, the “extended attribute” of the above-described file is data obtained by extending the attribute data of the
また、上述した「代替データストリーム」は、ファイル21上、ユーザデータ22とは区分けして管理されたデータであり、代替データストリームごとに、データにアクセスするための識別子が割り当てられる。なお、1個のファイル21に、複数の代替データストリームを持たせることも可能である。ファイル21に代替データストリームの識別子を与え、ファイルを参照・更新すると、ユーザデータ22の代わりに、識別子に対応した代替データストリームを参照・更新できる。
The “alternative data stream” described above is data managed separately from the
ここで、ファイル21と、ファイル21の拡張属性、代替データストリームの存在の整合性は、ストレージシステムが保障することとなる。
Here, the storage system guarantees the consistency between the
以上のように、ファイル21の拡張属性と代替データストリームは、1個のファイル21に複数のサブデータを持たせる効果がある。ファイル21の拡張属性と代替データストリームを、ユーザデータ22に対するサブデータストリームとみなすことで、ユーザデータ、管理データ、インデックスデータを、1個のファイルに書き込むことを実現している。
As described above, the extended attribute of the
そして、上述したように一旦分離された後に1つのファイル21に含められた書き込み対象となるデータは、当該ファイルが書き込み対象となるデータとして、分離データ書き込み部11にてCAS装置20に書き込まれる。以降のファイル21の書き込み動作は、通常のコンテンツアドレスストレージシステムにおける書き込み動作と同様であり、上記図4,5を参照して説明したように、上述したファイル21をさらに分割して、冗長化を行った上で分散して複数の記憶装置に記憶される。
Then, as described above, the data to be written included in one
このとき、分離データ書き込み部11は、ファイル21中の拡張属性及び/あるいは代替データストリームに書き込まれた管理データとインデックスデータを、可変長のブロックに区切り、記憶装置25内にブロック集合26、ブロック集合27として格納する。例えば、管理データをブロック集合26に格納し、インデックスデータをブロック集合27に格納する。これにより、ブロック集合26とブロック集合27とは、重複排除が望めない管理データとインデックスデータのみを含むこととなる。また、分離データ書き込み部11は、ファイル21に書き込まれたユーザデータ22を、可変長のブロックに区切り、記憶装置25内にブロック集合28として格納する。このブロック集合28は、重複排除が望めるユーザデータのみを含むこととなる。なお、各ブロック集合26,27,28は、上述したように予め特定のデータが格納される領域として記憶装置25内に設定されている。
At this time, the separated
また、データ分離/結合装置10が有する分離データ読み取り部14(データ読み取り部)は、データ書き込み/読み取りソフトウェア30から読み取りの要求があったファイル名をもとに、ファイル21を記憶装置25内から取得する。そして、分離データ関連付け部13が、取得したファイル21に関連付けられている拡張属性及び/又は代替データストリーム23内のインデックスデータに記憶されている情報に基づいて、ユーザデータ及び管理データを読み取る。そして、これらをインデックスデータに記憶されている情報に従って、分離前のデータにおけるユーザデータ及び管理データの位置を特定し、当該ユーザデータ及び管理データを結合して、分離前のデータを生成する。
Further, the separated data reading unit 14 (data reading unit) included in the data separation /
その後、分離データ読み取り部14は、生成された分離前のデータを、データ書き込み/読み取りソフトウェア30に返却する。これらにより、データ書き込み/読み取りソフトウェア30は、データが分離され格納されていることを意識せずにファイルを参照することができる。
Thereafter, the separated
ここで、ストレージシステム1は、上述したように、記憶装置25内で別々のブロック集合26,27,28として格納されている拡張属性、代替データストリーム、ユーザデータを、1個のユーザデータファイル21に関連付けて管理していることから、以下のような処理も可能である。例えば、拡張属性更新要求を受け取ると、ファイル21の拡張属性部分を更新し、拡張属性部分だけを可変長のブロックに区切り、記憶装置25にブロック集合26として格納する。また、拡張属性参照要求を受けると、記憶装置25に格納済みのブロックの集合26から、拡張属性を再生して返却する。また、代替データストリーム更新要求を受け取ると、ファイル21の代替データストリーム部分を更新し、代替データストリームだけを可変長のブロックに区切り、記憶装置25にブロック集合27として格納する。代替データストリーム参照要求を受けると、記憶装置25に格納済みのブロック集合27から、代替データストリームを再生して返却する。さらに、ユーザデータ更新要求を受け取ると、ファイル21のユーザデータ部分を更新し、ユーザデータだけを可変長のブロックに区切り、記憶装置25にブロックの集合28として格納する。ユーザデータ参照要求を受けると、記憶装置25に格納済みのブロックの集合28からユーザデータを再生して返却する。
Here, as described above, the storage system 1 stores the extended attribute, alternative data stream, and user data stored as separate block sets 26, 27, and 28 in the
なお、書き込み対象となるデータの分離後のデータ(ユーザデータ、管理データ、インデックスデータ)と、データ書き込み先(ファイル21のユーザデータ22、拡張属性23、代替データストリーム23)の組み合わせの自由度は、データ格納先となるCAS装置20の仕様に依存する。拡張属性および代替データストリームにおいても、ユーザデータを重複排除するCAS装置20に格納することで、重複排除性能を確保できる。但し、拡張属性や代替データストリームを重複排除しないストレージ装置にデータを格納してもよい。かかる場合であっても、分離後のデータのうち、重複排除が望めない管理データとインデックスデータを、拡張属性や代替データストリームに書き込むが、ユーザデータ部分をユーザデータ22に書き込んで重複排除機能を有するCAS装置20に書き込むことで、重複排除性能を実現できる。
It should be noted that the degree of freedom of the combination of data after separation of the data to be written (user data, management data, index data) and the data write destination (
[動作]
次に、上述したストレージシステム1つまりデータ分離/結合装置10の動作を、図3と、図8及び図9のフローチャートを参照して説明する。
[Operation]
Next, the operation of the above-described storage system 1, that is, the data separation /
まず、ファイルへのデータ書き込み時の動作について説明する。データ書き込み/読み取りソフトウェア30は、データ分離/結合装置10へデータ書き込み要求を発行する(ステップS1)。分離データ書き込み部11は、受け取ったデータをデータ分離部12に渡す。データ分離部12は、受け取ったデータをユーザデータと管理データに分離し(ステップS2)、インデックスデータを生成して(ステップS3)、これらを分離データ書き込み部11に返却する。
First, the operation at the time of writing data to a file will be described. The data write /
分離データ書き込み部11は、ユーザデータを、CAS装置20へ、ファイル21のユーザデータ22として書き込む。管理データとインデックスデータについては、ファイル21の拡張属性及び/又は代替データストリームとして書き込む(ステップS4)。拡張属性や代替データストリームに書き込まれた管理データとインデックスデータは、可変長のブロックに区切られ、記憶装置25内に、ブロック集合26、ブロック集合27として格納される。これにより、ブロック集合26とブロック集合27は、重複排除が望めない管理データとインデックスデータのみを含むこととなる。また、ファイル21に書き込まれたユーザデータ22は、可変長のブロックに区切られ、データ重複排除機構を備えた記憶装置25内に、ブロック集合28として格納される。これにより、ブロック集合28は、重複排除が望めるユーザデータのみを含むこととなる。
The separated
次に、読み取り時の動作について説明する。データ書き込み/読み取りソフトウェア30は、データ分離/結合装置10へデータ読み取り要求を発行する(ステップS11)。分離データ読み込み部14は、ファイル21の拡張属性及び/又は代替データストリーム23、ユーザデータ22の形で格納されている管理データ、インデックスデータ、ユーザデータを、各ブロック集合26,27,28内から取得し(ステップS12)、分離データ関連付け部13を用いてインデックスデータをもとに、順序良くブロックを結合して、元のデータを再生する(ステップS13)。その後、再生したデータを、データ書き込み/読み取りソフトウェア30へ返却する。
Next, the operation at the time of reading will be described. The data write /
以上のように、本発明では、データの分離後に生成される図6に示すようなユーザデータ部分31、管理データ部分32、インデックスデータ部分33を、それぞれ個々のファイルとして記憶装置に書き込むことを行っていない。このため、ファイル再生時であっても、3個のファイルの存在を確認する処理が不要となり、また、いずれかのファイルが消失することによってデータにアクセス不可能となることを防止することができる。つまり、本発明では、重複排除の効率を高めるべく、データを分離するものの、分離後のデータを1つのファイルとして扱うため、これら分離後のデータが常に存在することが保証される。そして、分離後の3つのデータのフラッシュの順序をアトミックに制御するとこで、分離後のデータの矛盾を抑制できる。その結果、高効率な重複排除を実現しつつ、障害からの復旧処理を簡素化でき、ストレージシステムの耐障害性の向上を図ることができる。
As described above, in the present invention, the
また、一般的に、ストレージ装置には格納可能なファイル数に上限があるが、上述したように、分離後に3つのデータが存在するものの、これらを1つのファイルとして管理するため、格納できるバックアップファイル数の増加を図ることができる。仮に分離後の3つのデータを3つのファイルとして扱う場合と比較すると、その場合よりも3倍のファイル数を扱うことができる。 In general, the storage device has an upper limit on the number of files that can be stored. As described above, although there are three pieces of data after separation, these files are managed as one file, so they can be stored as backup files. The number can be increased. As compared with the case where the three separated data are handled as three files, the number of files can be handled three times as much as that case.
なお、上記では、データ分離/結合装置10を、データ重複排除機構を搭載したCAS装置20とは別の装置とした構成を説明したが、データ分離/結合装置10を、データ重複排除機構を搭載したCAS装置20内に実装した構成としてもよい。
In the above description, the data separation /
また、上記では、データ分離/結合装置10は、バックアップファイルのデータを3つのデータに分離していたが、重複が望めるユーザデータと、重複が望めないデータ(管理情報データ、インデックスデータ)の2つに分離してもよい。この場合、単一の拡張属性、または単一の代替データストリームしか備えていないデータ重複排除機構を搭載したストレージと組み合わせた構成でも実現できる。
In the above description, the data separation /
さらに、上記では、ファイルの拡張属性および代替データストリームが、ユーザデータと同様に重複排除されるストレージ装置と組み合わせた構成であったが、拡張属性や代替データストリームを重複排除しないストレージ装置と組み合わせた構成でも、上述と同等な効果を得ることができる。 Furthermore, in the above description, the extended attribute of the file and the alternative data stream are combined with a storage device that is deduplicated in the same manner as the user data. However, the extended attribute and the alternative data stream are combined with a storage device that does not deduplicate. Even in the configuration, the same effect as described above can be obtained.
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるストレージシステム110の構成の概略について図10を参照して説明する。また、本発明における、プログラム、データ格納方法の構成について説明する。但し、本発明は、以下の構成に限定されない。
<Appendix>
Part or all of the above-described embodiment can be described as in the following supplementary notes. Hereinafter, an outline of the configuration of the
(付記1)
書き込み対象となるデータを所定容量に分割して記憶装置120に格納すると共に、当該記憶装置に既に記憶されているデータと同一内容の他のデータを前記記憶装置に格納する場合に当該記憶装置に既に記憶されているデータを他のデータとして参照させるデータ書き込み部111と、
書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離するデータ分離部112と、を備え、
前記データ書き込み部111は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして前記管理データ部分を前記ファイルに含めて格納し、前記ファイルを書き込み対象となるデータとして前記記憶装置120に記憶する、
ストレージシステム110。
(Appendix 1)
Data to be written is divided into a predetermined capacity and stored in the
A
The
(付記2)
付記1に記載のストレージシステムであって、
前記データ分離部は、分離された前記ユーザデータ部分と前記管理データ部分との分離前におけるデータ中の位置情報を含むインデックスデータを生成し、
前記データ書き込み部は、前記ファイルに格納された前記ユーザデータ部分に関連付けられた前記メタデータとして前記インデックスデータを前記ファイルに格納し、前記ファイルを書き込み対象となるデータとして記憶装置に記憶する、
ストレージシステム。
(Appendix 2)
The storage system according to attachment 1, wherein
The data separation unit generates index data including position information in the data before separation of the separated user data part and the management data part;
The data writing unit stores the index data in the file as the metadata associated with the user data portion stored in the file, and stores the file in a storage device as data to be written.
Storage system.
(付記3)
付記1又は2に記載のストレージシステムであって、
前記データ書き込み部は、前記ファイルに格納された前記ユーザデータ部分の拡張属性及び/又は代替データストリームを前記メタデータとして用いる、
ストレージシステム。
(Appendix 3)
The storage system according to
The data writing unit uses an extended attribute and / or alternative data stream of the user data part stored in the file as the metadata.
Storage system.
(付記4)
付記1乃至3のいずれかに記載のストレージシステムであって、
前記データ書き込み部は、前記ファイルを分割することによって形成された前記ユーザデータ部分の分割データを前記記憶装置内の所定領域に格納する、
ストレージシステム。
(Appendix 4)
The storage system according to any one of appendices 1 to 3,
The data writing unit stores the divided data of the user data part formed by dividing the file in a predetermined area in the storage device.
Storage system.
(付記5)
付記2に記載のストレージシステムであって、
前記データ書き込み部は、前記ファイルを分割することによって形成された前記ユーザデータ部分と前記拡張属性部分と前記代替データストリーム部分との分割データを、当該各部分に応じた前記記憶装置内の各所定領域にそれぞれ格納する、
ストレージシステム。
(Appendix 5)
The storage system according to
The data writing unit is configured to divide divided data of the user data part, the extended attribute part, and the alternative data stream part formed by dividing the file into predetermined data in the storage device corresponding to the parts. Store each in the area,
Storage system.
(付記6)
書き込み対象となるデータを所定容量に分割して記憶装置に格納すると共に、当該記憶装置に既に記憶されているデータと同一内容の他のデータを前記記憶装置に格納する場合に当該記憶装置に既に記憶されているデータを他のデータとして参照させるデータ書き込み部を備えた情報処理装置に、
書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離するデータ分離部を実現させると共に、
前記データ書き込み部は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして前記管理データ部分を前記ファイルに含めて格納し、前記ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、ことを実現させるためのプログラム。
(Appendix 6)
The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. In an information processing apparatus provided with a data writing unit for referring to stored data as other data,
In addition to realizing a data separation unit that separates data to be written into a user data part and a management data part that are classified according to preset criteria,
The data writing unit generates a file storing the user data part, stores the management data part as metadata associated with the user data part stored in the file, and stores the management data part in the file, A program for realizing that a file is stored in the storage device as data to be written.
(付記7)
付記6に記載のプログラムであって、
前記データ分離部は、分離された前記ユーザデータ部分と前記管理データ部分との分離前におけるデータ中の位置情報を含むインデックスデータを生成し、
前記データ書き込み部は、前記ファイルに格納された前記ユーザデータ部分に関連付けられた前記メタデータとして前記インデックスデータを前記ファイルに格納し、前記ファイルを書き込み対象となるデータとして記憶装置に記憶する、
プログラム。
(Appendix 7)
The program according to appendix 6,
The data separation unit generates index data including position information in the data before separation of the separated user data part and the management data part;
The data writing unit stores the index data in the file as the metadata associated with the user data portion stored in the file, and stores the file in a storage device as data to be written.
program.
(付記8)
書き込み対象となるデータを所定容量に分割して記憶装置に格納すると共に、当該記憶装置に既に記憶されているデータと同一内容の他のデータを前記記憶装置に格納する場合に当該記憶装置に既に記憶されているデータを他のデータとして参照させるデータ書き込み工程を有するデータ格納方法であって、
前記データ書き込み工程の前に、書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離するデータ分離工程を有し、
前記データ書き込み工程は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして前記管理データ部分を前記ファイルに含めて格納し、前記ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、
データ格納方法。
(Appendix 8)
The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. A data storage method including a data writing step for referring to stored data as other data,
Before the data writing step, it has a data separation step of separating the data to be written into a user data portion and a management data portion that are classified according to a preset standard,
The data writing step generates a file storing the user data portion, stores the management data portion in the file as metadata associated with the user data portion stored in the file, and stores the file. Storing the file in the storage device as data to be written;
Data storage method.
(付記9)
付記8に記載のデータ格納方法であって、
前記データ分離工程は、分離された前記ユーザデータ部分と前記管理データ部分との分離前におけるデータ中の位置情報を含むインデックスデータを生成し、
前記データ書き込み工程は、前記ファイルに格納された前記ユーザデータ部分に関連付けられた前記メタデータとして前記インデックスデータを前記ファイルに格納し、前記ファイルを書き込み対象となるデータとして記憶装置に記憶する、
データ格納方法。
(Appendix 9)
The data storage method according to appendix 8, wherein
The data separation step generates index data including position information in the data before separation of the separated user data part and the management data part,
The data writing step stores the index data in the file as the metadata associated with the user data portion stored in the file, and stores the file in a storage device as data to be written.
Data storage method.
1 ストレージシステム
2 アクセラレータノード
3 ストレージノード
4 バックアップシステム
5 バックアップ対象装置
10 データ分離/結合装置
11 分離データ書き込み部
12 データ分離部
13 分離データ関連付け部
14 分離データ読み取り部
20 CAS装置
21 ファイル
22 ユーザデータ
23 拡張属性、代替データストリーム
25 記憶装置
30 分離前データ
31 ユーザデータ部分
32 管理データ部分
33 インデックスデータ部分
110 ストレージシステム
111 データ書き込み部
112 データ分離部
120 記憶装置
DESCRIPTION OF SYMBOLS 1
Claims (6)
書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離すると共に、当該分離された前記ユーザデータ部分と前記管理データ部分との分離前におけるデータ中の位置情報を含むインデックスデータを生成するデータ分離部と、を備え、
前記データ書き込み部は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして、前記管理データ部分及び前記インデックスデータを前記ファイルに含めて格納することにより、前記ユーザデータ部分と前記管理データ部分と前記インデックスデータとを同一の前記ファイルに格納し、当該ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、
ストレージシステム。 The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. A data writing section for referring to stored data as other data;
The data to be written is separated into a user data part and a management data part that are classified according to a preset standard, and the data in the data before separation of the separated user data part and the management data part A data separator that generates index data including position information ,
Wherein the data writing unit is configured to generate a file containing the user data portion, and the metadata associated with the user data portion stored in the file, the management data portion and the index data in the file Including the user data portion, the management data portion, and the index data in the same file, and storing the file in the storage device as data to be written.
Storage system.
前記データ書き込み部は、前記ファイルに格納された前記ユーザデータ部分の拡張属性及び/又は代替データストリームを前記メタデータとして用いる、
ストレージシステム。 The storage system according to claim 1 ,
The data writing unit uses an extended attribute and / or alternative data stream of the user data part stored in the file as the metadata.
Storage system.
前記データ書き込み部は、前記ファイルを分割することによって形成された前記ユーザデータ部分の分割データを前記記憶装置内の所定領域に格納する、
ストレージシステム。 The storage system according to claim 1 or 2 ,
The data writing unit stores the divided data of the user data part formed by dividing the file in a predetermined area in the storage device.
Storage system.
前記データ書き込み部は、前記ファイルを分割することによって形成された前記ユーザデータ部分と前記拡張属性部分と前記代替データストリーム部分との分割データを、当該各部分に応じた前記記憶装置内の各所定領域にそれぞれ格納する、
ストレージシステム。 The storage system according to claim 2,
The data writing unit is configured to divide divided data of the user data part, the extended attribute part, and the alternative data stream part formed by dividing the file into predetermined data in the storage device corresponding to the parts. Store each in the area,
Storage system.
書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離し、当該分離された前記ユーザデータ部分と前記管理データ部分との分離前におけるデータ中の位置情報を含むインデックスデータを生成するデータ分離部を実現させると共に、
前記データ書き込み部は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして、前記管理データ部分及び前記インデックスデータを前記ファイルに含めて格納することにより、前記ユーザデータ部分と前記管理データ部分と前記インデックスデータとを同一の前記ファイルに格納し、当該ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、ことを実現させるためのプログラム。 The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. In an information processing apparatus provided with a data writing unit for referring to stored data as other data,
The data to be written is separated into a user data part and a management data part classified according to a preset standard , and the position in the data before separation of the separated user data part and the management data part While realizing a data separation unit that generates index data including information ,
Wherein the data writing unit is configured to generate a file containing the user data portion, and the metadata associated with the user data portion stored in the file, the management data portion and the index data in the file By storing them together, the user data part, the management data part, and the index data are stored in the same file, and the file is stored in the storage device as data to be written. Program for.
前記データ書き込み工程の前に、書き込み対象となるデータを、予め設定された基準に従って分類されるユーザデータ部分と管理データ部分とに分離すると共に、当該分離された前記ユーザデータ部分と前記管理データ部分との分離前におけるデータ中の位置情報を含むインデックスデータを生成するデータ分離工程を有し、
前記データ書き込み工程は、前記ユーザデータ部分を格納したファイルを生成すると共に、当該ファイルに格納された前記ユーザデータ部分に関連付けられたメタデータとして、前記管理データ部分及び前記インデックスデータを前記ファイルに含めて格納することにより、前記ユーザデータ部分と前記管理データ部分と前記インデックスデータとを同一の前記ファイルに格納し、当該ファイルを書き込み対象となるデータとして前記記憶装置に記憶する、
データ格納方法。
The data to be written is divided into a predetermined capacity and stored in the storage device, and other data having the same content as the data already stored in the storage device is already stored in the storage device. A data storage method including a data writing step for referring to stored data as other data,
Before the data writing step, the data to be written is separated into a user data part and a management data part that are classified according to a preset standard, and the separated user data part and the management data part A data separation step of generating index data including position information in the data before separation with
Wherein the data writing process, and generates a file containing the user data portion, and the metadata associated with the user data portion stored in the file, the management data portion and the index data in the file Including the user data portion, the management data portion, and the index data in the same file, and storing the file in the storage device as data to be written.
Data storage method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011072791A JP5660617B2 (en) | 2011-03-29 | 2011-03-29 | Storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011072791A JP5660617B2 (en) | 2011-03-29 | 2011-03-29 | Storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012208650A JP2012208650A (en) | 2012-10-25 |
JP5660617B2 true JP5660617B2 (en) | 2015-01-28 |
Family
ID=47188338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011072791A Active JP5660617B2 (en) | 2011-03-29 | 2011-03-29 | Storage device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5660617B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6337507B2 (en) * | 2014-02-24 | 2018-06-06 | 日本電気株式会社 | Storage system |
WO2015183302A1 (en) * | 2014-05-30 | 2015-12-03 | Hitachi, Ltd. | Method and apparatus of data deduplication storage system |
JP6262878B2 (en) * | 2014-11-28 | 2018-01-17 | 株式会社日立製作所 | Storage device |
JP6406283B2 (en) * | 2016-03-01 | 2018-10-17 | 日本電気株式会社 | Storage apparatus and storage method |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10016A (en) * | 1853-09-13 | Bootjack | ||
US11027A (en) * | 1854-06-06 | Eyelet-machine | ||
US10008A (en) * | 1853-09-13 | India-rtjbbee | ||
JP2595817B2 (en) * | 1991-01-17 | 1997-04-02 | ヤマハ株式会社 | Method of controlling information in secondary storage device and electronic apparatus having secondary storage device |
JP2000293413A (en) * | 1999-04-09 | 2000-10-20 | Canon Inc | Data storage device and storage medium |
JP2007128448A (en) * | 2005-11-07 | 2007-05-24 | Sony Corp | File system and file information processing method |
JP5248912B2 (en) * | 2008-05-12 | 2013-07-31 | 株式会社日立製作所 | Server computer, computer system, and file management method |
AU2009335697A1 (en) * | 2008-12-18 | 2011-08-04 | Copiun, Inc. | Methods and apparatus for content-aware data partitioning and data de-duplication |
WO2011108048A1 (en) * | 2010-03-04 | 2011-09-09 | 日本電気株式会社 | Storage device |
-
2011
- 2011-03-29 JP JP2011072791A patent/JP5660617B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012208650A (en) | 2012-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8843445B2 (en) | Storage system for storing data in a plurality of storage devices and method for same | |
JP5339432B2 (en) | Storage system | |
WO2010095183A1 (en) | Storage system | |
US8683122B2 (en) | Storage system | |
JP6094267B2 (en) | Storage system | |
JP5517224B2 (en) | Storage device | |
JP5660617B2 (en) | Storage device | |
US8683121B2 (en) | Storage system | |
JP5533888B2 (en) | Storage device | |
JP5585116B2 (en) | Storage system | |
JP5929326B2 (en) | Storage system | |
JP5459388B2 (en) | Storage device | |
JP6269120B2 (en) | Storage system | |
JP6337982B1 (en) | Storage system | |
JP6281333B2 (en) | Storage system | |
JP5891842B2 (en) | Storage system | |
JP6337507B2 (en) | Storage system | |
JP6343952B2 (en) | Storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD07 | Notification of extinguishment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7427 Effective date: 20120719 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140207 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20140613 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140807 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140819 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141008 |
|
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: 20141104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141127 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5660617 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |