JP5998517B2 - Storage system - Google Patents
Storage system Download PDFInfo
- Publication number
- JP5998517B2 JP5998517B2 JP2012038144A JP2012038144A JP5998517B2 JP 5998517 B2 JP5998517 B2 JP 5998517B2 JP 2012038144 A JP2012038144 A JP 2012038144A JP 2012038144 A JP2012038144 A JP 2012038144A JP 5998517 B2 JP5998517 B2 JP 5998517B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- block
- file
- stored
- 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.)
- Expired - Fee Related
Links
- 238000007726 management method Methods 0.000 claims description 67
- 238000013500 data storage Methods 0.000 claims description 58
- 230000010365 information processing Effects 0.000 claims description 21
- 238000003672 processing method Methods 0.000 claims description 9
- 239000012634 fragment Substances 0.000 description 20
- 238000010586 diagram Methods 0.000 description 17
- 238000000034 method Methods 0.000 description 13
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 2
- 238000010923 batch production Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、ストレージシステムにかかり、特に、重複記憶排除機能を有するストレージシステムに関する。 The present invention relates to a storage system, and more particularly to a storage system having a duplicate storage elimination function.
近年、コンピュータの発達及び普及に伴い、種々の情報がデジタルデータ化されている。このようなデジタルデータを保存しておく装置として、磁気テープや磁気ディスクなどの記憶装置がある。そして、保存すべきデータは日々増大し、膨大な量となるため、大容量なストレージシステムが必要となっている。また、記憶装置に費やすコストを削減しつつ、信頼性も必要とされる。これに加えて、後にデータを容易に取り出すことが可能であることも必要である。その結果、自動的に記憶容量や性能の増大を実現できると共に、重複記憶を排除して記憶コストを削減し、さらには、冗長性の高いストレージシステムが望まれている。 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
具体的に、コンテンツアドレスストレージシステムでは、所定のデータを分割したブロックデータを複数のフラグメントデータにさらに分割すると共に、冗長データ(パリティデータ)となるフラグメントデータを付加して、これら複数のフラグメントデータを複数の記憶装置に分散して格納している。そして、後に、コンテンツアドレスを指定することにより、当該コンテンツアドレスにて特定される格納位置に格納されているデータつまりフラグメントデータを読み出し、複数のフラグメントデータから分割前の所定のデータを復元することができる。 Specifically, in the content address storage system, block data obtained by dividing predetermined data is further divided into a plurality of fragment data, and fragment data that becomes redundant data (parity data) is added to the plurality of fragment data. Distributed and stored in a plurality of storage devices. Then, by designating the content address later, the data stored in the storage location specified by the content address, that is, fragment data can be read, and the predetermined data before division can be restored from a plurality of fragment data. it can.
また、上記コンテンツアドレスは、データの内容に応じて固有となるよう生成される。このため、重複データであれば同じ格納位置のデータを参照することで、同一内容のデータを取得することができる。従って、重複データを別々に格納する必要がなく、重複記録を排除し、データ容量の削減を図ることができる。 Further, the content address is generated so as to be unique according to the content of data. 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.
そして、近年ではさらに、企業によるITリソースへの投資最適化という要求に応えるため、ASP事業者などが、上述したような1つの重複排除ストレージシステムの利用サービスを、複数の異なる企業に提供したいというニーズがある。この場合、1つの重複排除ストレージシステムを複数の異なる企業で利用する形になるが、ユーザ企業ごとに使用容量を制限したり、使用量に応じた課金をしたりすることが求められる。重複排除ストレージシステムでは、データは重複を排除して格納されるため、ここでいう使用量は、実際に消費しているリソース量である「物理容量」に基づくべきであり、各ユーザ企業が使用している物理容量を把握する必要がある。 And in recent years, in order to meet the demand for optimization of IT resource investment by companies, ASP companies and others want to provide a single deduplication storage system usage service as described above to multiple different companies. There is a need. In this case, one deduplication storage system is used by a plurality of different companies, but it is required to limit the use capacity for each user company or to charge according to the use amount. In a deduplication storage system, data is stored with duplicates removed, so the amount used here should be based on the “physical capacity”, which is the amount of resources actually consumed, and used by each user company. It is necessary to know the physical capacity that is being used.
一方で、上述したような重複排除ストレージシステムでは、重複率を高めるべく、記憶するファイルを何らかの基準で所定容量のブロックデータに分割して、ブロック単位で重複排除する方式をとっている。このため、ユーザ毎における各ブロックデータの参照状態を把握することは困難である。つまり、ブロックデータのサイズは小さく、多数存在するため、ブロックごとの参照状態を性能や容量の面で効率よく管理することが困難である。従って、重複排除ストレージシステムを利用するユーザ毎の使用容量を把握することが難しい、という問題があった。 On the other hand, in the deduplication storage system as described above, in order to increase the duplication rate, a file to be stored is divided into block data of a predetermined capacity on some basis, and deduplication is performed in units of blocks. For this reason, it is difficult to grasp the reference state of each block data for each user. That is, since the size of the block data is small and many exist, it is difficult to efficiently manage the reference state for each block in terms of performance and capacity. Therefore, there is a problem that it is difficult to grasp the used capacity for each user who uses the deduplication storage system.
このため、本発明の目的は、上述した課題である、重複排除機能を有するストレージシステムを利用するユーザ毎の使用記憶容量を把握することが困難である、ということを解決すること、にある。 Therefore, an object of the present invention is to solve the above-described problem that it is difficult to grasp the storage capacity used for each user who uses a storage system having a deduplication function.
本発明の一形態であるストレージシステムは、
ファイルを分割したブロックデータを格納すると共に、当該格納されたブロックデータを参照する参照データを格納する記憶装置と、
前記記憶装置に対して前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を備え、
前記データ格納制御手段は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理手段は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
という構成をとる。
A storage system according to an aspect of the present invention
A storage device for storing block data obtained by dividing the file, and storing reference data for referring to the stored block data;
When the file is newly stored in the storage device, the block data obtained by dividing the file and the reference data referring to the block data are stored in the storage device and the file is newly stored The file that newly stores the data already stored in the storage device using the reference data when the block data obtained by dividing the block data has the same data content as the data already stored in the storage device Data storage control means to be referred to as the block data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
With
The data storage control means stores the reference data that refers to the block data in association with user identification information that identifies a user who uses the file that is the division source of the block data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
The configuration is as follows.
また、本発明の他の形態である情報処理装置は、
ファイルを分割したブロックデータを格納すると共に当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を備え、
前記データ格納制御手段は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理手段は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
という構成をとる。
An information processing apparatus according to another aspect of the present invention
When storing the block data obtained by dividing the file and storing the reference data referring to the stored block data, when the file is newly stored, the block data obtained by dividing the file and the block data When the reference data that refers to block data is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data storage control means for making reference to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
With
The data storage control means stores the reference data that refers to the block data in association with user identification information that identifies a user who uses the file that is the division source of the block data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
The configuration is as follows.
また、本発明の他の形態であるプログラムは、
情報処理装置に、
ファイルを分割したブロックデータを格納すると共に当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を実現させると共に、
前記データ格納制御手段は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理手段は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ことを実現させるためのプログラムである。
Moreover, the program which is the other form of this invention is:
In the information processing device,
When storing the block data obtained by dividing the file and storing the reference data referring to the stored block data, when the file is newly stored, the block data obtained by dividing the file and the block data When the reference data that refers to block data is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data storage control means for making reference to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
And realize
The data storage control means stores the reference data that refers to the block data in association with user identification information that identifies a user who uses the file that is the division source of the block data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
It is a program for realizing this.
また、本発明の他の形態である情報処理方法は、
ファイルを分割したブロックデータを格納すると共に、当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納工程と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理工程と、
を有し、
前記データ格納工程は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理工程は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
という構成をとる。
In addition, an information processing method according to another aspect of the present invention includes:
The block data obtained by dividing the file when the file is newly stored in the storage device that stores the block data obtained by dividing the file and stores the reference data that refers to the stored block data. When the reference data referring to the block data is stored in the storage device, and the block data obtained by dividing the newly stored file has the same data content as the data already stored in the storage device A data storing step of referring to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management step of calculating and storing the storage capacity in the storage device in which the block data is stored for each user who uses the file that is the division source of the block data; and
Have
In the data storing step, the reference data for referring to the block data is stored in association with user identification information for identifying a user who uses the file that is a division source of the block data,
The storage capacity management step calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
The configuration is as follows.
本発明は、以上のように構成されることにより、重複排除機能を有するストレージシステムを利用するユーザ毎の使用記憶容量を容易に把握することができる。 With the configuration as described above, the present invention can easily grasp the used storage capacity for each user who uses the storage system having the deduplication function.
<実施形態1>
本発明の第1の実施形態を、図1乃至図10を参照して説明する。図1は、システム全体の構成を示すブロック図である。図2は、ストレージシステムの概略を示すブロック図であり、図3は、ストレージシステムの詳細な構成を示すブロック図である。図4乃至図5は、ストレージシステムの動作を説明するための説明図であり、図6乃至図8は、ストレージシステムに記憶されているデータの一例を示す図である。図9乃至図10は、ストレージシステムの動作を示すフローチャートである。
<
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 block diagram showing a detailed configuration of the storage system. 4 to 5 are explanatory diagrams for explaining the operation of the storage system, and FIGS. 6 to 8 are diagrams illustrating an example of data stored in the storage system. 9 to 10 are flowcharts showing the operation of the storage system.
ここで、本実施形態では、ストレージシステムが、複数台のサーバコンピュータが接続されて構成されている場合を説明する。但し、本発明におけるストレージシステムは、複数台のコンピュータにて構成されることに限定されず、1台のコンピュータ(情報処理装置)で構成されていてもよい。 Here, in the present embodiment, a case will be described in which the storage system is configured by connecting a plurality of server computers. 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 (information processing apparatus).
図1に示すように、本発明におけるストレージシステム10は、ネットワークNを介してバックアップ処理を制御するバックアップシステム11に接続している。そして、バックアップシステム11は、ネットワークNを介して接続されたバックアップ対象装置12に格納されているバックアップ対象データを取得し、ストレージシステム10に対して記憶するよう要求する。これにより、ストレージシステム10は、記憶要求されたバックアップ対象データをバックアップ用に記憶する。なお、本実施形態におけるストレージシステム10は、バックアップ対象データを記憶する場合を例示して説明するが、それは一例であって、いかなるデータを記憶してもよい。
As shown in FIG. 1, a
そして、図2に示すように、本実施形態におけるストレージシステム10は、複数のサーバコンピュータが接続された構成を採っている。具体的に、ストレージシステム10は、ストレージシステム10自体における記憶再生動作を制御するサーバコンピュータであるアクセラレータノード20と、データを格納する記憶装置を備えたサーバコンピュータであるストレージノード30と、を備えている。なお、アクセラレータノード20の数とストレージノード30の数は、図2に示したものに限定されず、さらに多くの各ノード20,30が接続されて構成されていてもよい。
As shown in FIG. 2, the
さらに、本実施形態におけるストレージシステム10は、データを分割及び冗長化し、分散して複数の記憶装置に記憶すると共に、記憶するデータの内容に応じて設定される固有のコンテンツアドレスによって、当該データを格納した格納位置を特定するコンテンツアドレスストレージシステムである。このコンテンツアドレスストレージシステムについては、後に詳述する。
Furthermore, the
図3に、ストレージシステム10の詳細な構成を示す。ここでは、上述したアクセラレータノード20とストレージノード30とを区別せずに、ストレージシステム10が1つのシステムとして構成されていることとして説明する。
FIG. 3 shows a detailed configuration of the
まず、ストレージシステム10は、図3に示すように、まず、ネットワークインターフェースなどで構成されるファイル操作入力部1と、アクセラレータノード20やストレージノード30に装備されたCPU(Central Processing Unit)などの演算装置にプログラムが組み込まれることによって構築されたデータ処理装置2と、を備えている。そして、データ処理装置2は、ファイル操作実行部21と、使用物理容量管理部22と、を備えている。
First, as shown in FIG. 3, the
また、ストレージシステム10は、主にストレージノード30が装備する記憶装置3内に構成された、FS構造記憶部31と、ブロックIDリスト記憶部32と、ブロック関連データ記憶部33と、ブロックデータ記憶部34と、使用物理容量記憶部35と、を備えている。以下、ストレージシステム10の各構成と動作について詳述する。
In addition, the
上記ファイル操作入力部1は、バックアップ対象装置12などからバックアップシステム11を介して送信されたバックアップ対象データを受信して、ファイル操作実行部21に渡す。
The file
上記ファイル操作実行部21(データ格納制御手段)は、上述したようにファイル操作入力部1を介してバックアップ対象装置12から送信されたバックアップ対象データの入力を受け、当該データを記憶装置3内に格納するよう制御する。具体的に、ファイル操作実行部21は、バックアップ対象データを、複数のストレージノード30やディスクによって構成される記憶装置に対して分散すると共に、重複を排除して記憶する。また、ファイル操作実行部21は、分散記憶したデータを読み出す処理を行う。ここで、上記ファイル操作実行部21による分散記憶処理の一例を、図4乃至図7を参照して説明する。
The file operation execution unit 21 (data storage control means) receives the backup target data transmitted from the
はじめに、ファイル操作実行部21による基本的な分散記憶処理の動作について、図4及び図5を参照して説明する。まず、ファイル操作実行部21は、バックアップ対象データであるファイルを構成するデータAの入力を受けると(図4、図5の矢印Y1)、図4及び図5の矢印Y2に示すように、当該データAを所定容量(例えば、64KB)のブロックデータDに分割する。そして、このブロックデータDのデータ内容に基づいて、当該データ内容を代表する固有のハッシュ値Hを算出する(図5の矢印Y3)。例えば、ハッシュ値Hは、予め設定されたハッシュ関数を用いて、ブロックデータDのデータ内容から算出する。
First, the basic distributed storage processing operation by the file
続いて、ファイル操作実行部21は、同じ内容のブロックデータDの重複記録を排除するために、ブロックデータDのハッシュ値Hを用いて、重複排除処理を行う。具体的には、まず、既に格納されているブロックデータDは、後述するように、当該ブロックデータDのハッシュ値Hと格納位置を表すコンテンツアドレスCAとが関連付けられて登録されているため、算出したブロックデータDのハッシュ値Hが既に存在している場合には、既に同一内容のブロックデータDが格納されていると判断できる。この場合には、格納前のブロックデータDのハッシュ値Hと一致した登録されているハッシュ値Hに関連付けられているコンテンツアドレスCAを取得する。そして、このコンテンツアドレスCAを、書き込み要求されたブロックデータDのコンテンツアドレスCAとして参照する。これにより、このコンテンツアドレスCAにて参照される既に格納されているデータが、書き込み要求されたブロックデータDとして使用されることとなり、当該書き込み要求にかかるブロックデータDを記憶する必要がなくなる。
Subsequently, the file
また、ファイル操作実行部21は、書き込み要求にかかるブロックデータDがまだ記憶されていないと判断された場合には、かかるブロックデータDを格納する処理を行う。具体的には、まず、ブロックデータDを複数の所定の容量のフラグメントデータ(分割データ)に分割する。例えば、図4の符号D1〜D9に示すように、9つのフラグメントデータ(分割データ41)に分割する。さらに、ストレージシステム10は、分割したフラグメントデータのうちいくつかが欠けた場合であっても、元となるブロックデータDを復元可能なよう冗長データを生成し、上記分割したフラグメントデータ41に追加する。例えば、図4の符号D10〜D12に示すように、3つのフラグメントデータ(冗長データ42)を追加する。これにより、9つの分割データ41と、3つの冗長データ42とにより構成される12個のフラグメントデータからなるデータセット40を生成する(図5の矢印Y4)。
Further, when it is determined that the block data D relating to the write request is not yet stored, the file
そして、ファイル操作実行部21は、上述したように生成された各フラグメントデータを、ブロックデータ記憶部34内に記憶する。例えば、図4に示すように、12個のフラグメントデータD1〜D12を生成した場合には、複数のストレージノード30にて構成されたブロックデータ記憶部34内に形成されたデータ格納領域である各コンポーネントCに、各フラグメントデータD1〜D12を1つずつそれぞれ格納して、分散記憶する(図5の矢印Y5参照)。
Then, the file
ここで、上述したようにフラグメントデータが格納されると、ストレージシステム10では、当該フラグメントデータD1〜D12の格納位置、つまり、当該フラグメントデータD1〜D12にて復元されるブロックデータDの格納位置を表すコンテンツアドレスCAを生成する。このとき、コンテンツアドレスCAは、例えば、格納したブロックデータDの内容に基づいて算出したハッシュ値Hの一部(ショートハッシュ)(例えば、ハッシュ値Hの先頭8B(バイト))と、論理格納位置を表す情報と、を組み合わせて、生成される。そして、このコンテンツアドレスCAは、ストレージシステム10内のファイルシステムを管理するアクセラレータノード20にて、バックアップ対象データであるファイルを構成する各ブロックデータの識別情報と、コンテンツアドレスCAとが関連付けられて、ファイル操作実行部21にてファイルシステムとして管理される。なお、ブロックデータの識別情報自体が、当該ブロックデータを参照するコンテンツアドレスCAとなっていてもよい。
When the fragment data is stored as described above, the
また、ファイル操作実行部21は、ファイルの読み出し要求を受けると、要求されたファイルに対応するコンテンツアドレスCAにて指定される格納位置を特定し、この特定された格納位置に格納されている各フラグメントデータを、読み出し要求されたデータとして読み出すことができる。以上のように、ストレージシステム10は、データを読み書きする機能を有する。
In addition, when the file
ここで、本実施形態におけるファイル操作実行部21による、記憶装置3内にデータを記憶してファイルシステムを管理する処理について、図6を参照してさらに詳述する。
Here, the process of storing data in the
ファイル操作実行部21は、ファイルが新規に作成された場合には、まず、FS構造記憶部31に、ファイルシステム内におけるファイル31aの存在を表すディレクトリ構造を記憶する。これに伴い、ファイル31aを複数に分割した場合における各ブロックデータを識別する各ブロックID32a(ブロック識別データ)を格納する領域(ブロックIDエントリ)が形成されたブロックIDリストを作成してブロックIDリスト記憶部32に記憶し、当該ブロックIDリストをFS構造記憶部31に記憶されたファイル31aに関連付ける。
When a file is newly created, the file
続いて、ファイル操作実行部21は、ファイル31aのデータを複数のブロックデータに分割し、各ブロックデータを識別するブロックIDを算出する。このとき、ブロックIDは、例えば、ブロックデータのハッシュ値を用いる。そして、ファイル操作実行部21は、ブロックデータが既にブロックデータ記憶部34内に記憶されていないか否かを、例えば、上記算出したハッシュ値とブロック関連データ記憶部33内の情報とを用いて調べる。なお、ブロック関連データ記憶部33内には、後述するように、ブロックデータのデータ内容を判別するハッシュ値が格納されている。
Subsequently, the file
そして、ファイル操作実行部21は、ブロックデータがまだストレージシステム10内に記憶されていない場合には、かかるブロックデータ34aをブロックデータ記憶部34に格納すると共に、このブロックデータ34aを参照して関連付けられるブロック関連データ33aを、ブロック関連データ記憶部33に格納する。このブロック関連データ33aには、関連付けられたブロックデータ34aの情報、例えば、ブロックデータ34aのデータサイズを表すサイズ情報と、ブロックデータ34aのデータ内容を表すハッシュ値と、が格納される。そして、ファイル操作実行部21は、上述したように算出したブロックID32aを、新たに格納するファイル31aに対応するブロックIDリスト記憶部32内のブロックIDリストに格納する。このとき、ブロックID32aは、対応する格納したブロックデータ34aに関連付けられたブロック関連データ33aを参照するよう、当該ブロック関連データ33aに関連付けて記憶する。なお、ブロックID32aとブロック関連データ33aとの関連付けは、ブロックID32aにブロック関連データ33aを参照するコンテンツアドレスを関連付けてもよく、ブロックID32a自体にブロック関連データ33aを参照するコンテンツアドレスを用いてもよい。
When the block data is not yet stored in the
これにより、ファイル31aを読み出す際には、FS構造記憶部31を参照してファイル31aのブロックIDリストを読み出すことで、当該リストに含まれるブロックID32aが参照するブロック関連データ33aを参照して、ファイル31aを構成するブロックデータ34aを読み出すことができる。このように、上記ブロックID32a(ブロック識別データ)とブロック関連データ33aとは、格納されたブロックデータ34aを参照する参照データとして機能している。なお、上記ブロックID32aとブロック関連データ33aとは、1つのデータ(参照データ)にて構成されていてもよい。
Accordingly, when reading the
また、ファイル操作実行部21は、上述したように、新たに格納するファイル34aのディレクトリ構造とブロックIDリストを記憶した後に、新たに格納するファイル34aを構成するブロックデータが既にストレージシステム10内に記憶されていると判断された場合には、既に記憶されたブロックデータ34aを参照させる処理を行う。つまり、新たに格納するブロックデータのブロックID32aを算出してブロックIDリストに格納すると共に、当該ブロックID32aが既に記憶されているブロックデータ34aに関連付けられたブロック関連データ33aを参照するよう、当該ブロック関連データ33aに関連付けて記憶する。これにより、ブロックデータが、例えば図6に示すように異なるファイルから参照されることとなり、同一のブロックデータ34aを重複して記憶することを排除することができる。
In addition, as described above, the file
なお、ファイル操作実行部21は、ファイルを削除する際には、まず、FS構造記憶部31を参照してファイル31aに対応するブロックIDリストの位置を取得し、ブロックIDリスト記憶部32を参照して、削除すべきブロックデータのブロックID32aを取得する。続いて、ファイル操作実行部21は、ブロックIDリストから、ブロックID32aを削除する。そして、ファイル操作実行部21は、削除すべきブロックデータへの参照がなくなった場合は、ブロック関連データ記憶部33内のブロック関連データ33aと、ブロックデータ記憶部34内のブロックデータ34aを削除する。また、ファイル操作実行部21は、ファイル自体が削除された場合は、FS構造記憶部31も更新して、ファイル31aの存在を削除し、ブロックIDリスト記憶部32内の対応するブロックIDリストも削除する。
When deleting a file, the file
また、ファイル操作実行部21は、ファイルを書き換える場合には、上述したように、古いデータの削除と新しいデータの書き込みとの組み合わせとして処理する。
Further, when rewriting a file, the file
さらに、上記ファイル操作実行部21は、上記使用物理容量管理部22と協働して、ファイルの書き込みを行う際に、記憶装置3に格納したファイル31aを使用するユーザ毎の使用記憶容量を算出するための処理を、以下のように行う。まず、かかる処理の概略を、図7を参照して説明する。なお、以下に説明する処理は、ファイル格納時に実行されてもよく、あるいは、任意のタイミングで実行されてもよい。
Further, the file
まず、ファイル操作実行部21は、ファイル31aを格納する際に、当該ファイル31aに対応するブロックIDリスト記憶部32内のブロックIDリストに、格納するファイル31aを使用するユーザを識別するユーザID(ユーザ識別情報)を関連付けて記憶する。つまり、ファイル31aを構成する各ブロックデータ34aを識別するブロックID32aには、当該各ブロックデータ34aの分割元となるファイル31aを使用するユーザのユーザIDが関連付けられる。なお、図7に示す例では、ファイル31aに対応する複数のブロックID群からなるブロックIDリストに対して、「user1」といったユーザIDが関連付けられる。
First, when storing the
また、ファイル操作実行部21は、同一のブロックデータを同一のユーザが使用する複数のファイルが参照している場合に、当該ファイルを構成する各ブロックデータを識別する各ブロックIDを、「同ユーザチェイン」として関連付ける。具体的に、ファイル操作実行部21は、ブロックIDリスト記憶部32内の各ブロックIDエントリに、同じブロックデータつまり当該ブロックデータに関連付けられたブロック関連データ33aを参照する同じユーザの別のブロックIDエントリへのポインタを記憶させる。これにより、図7のfile1A, file1B, file1C間の点線に示すように、同じブロックデータを参照する同じユーザ「user1」のブロックID群が、ユーザ「user1」における同ユーザチェイン(同一ユーザチェイン)として関連付けられる。このとき、図7のfile2A, file2B間の点線に示すように、同じブロックデータを参照する同じユーザ「user2」のブロックID群も、ユーザ「user2」における同ユーザチェイン(同一ユーザチェイン)として関連付けられる。つまり、図7の矢印Y11方向に示すように、ブロックID群を使用ユーザ毎に関連付ける。
Further, when a plurality of files used by the same user refer to the same block data, the file
また、ファイル操作実行部21は、同一のブロックデータを異なるユーザが使用する複数のファイルが参照している場合に、当該ファイルを構成する各ブロックデータを識別する各ブロックIDを、「別ユーザチェイン」として関連付ける。具体的に、ファイル操作実行部21は、上述したように、ユーザ毎にブロックIDを関連付けたそれぞれブロックID群からなる各同ユーザチェイン間で、それぞれの同ユーザチェイン内でそれぞれ1つのブロックID同士を相互に関連付けて、別ユーザチェインを形成する。例えば、図7の例では、file1A, file1B, file1Cのユーザ「user1」における同ユーザチェインの先頭のブロックIDエントリに、同じブロックデータに関連付けられたブロック関連データ33aを参照するfile2A, file2Bの別のユーザ「user2」における同ユーザチェインの先頭のブロックIDエントリへのポインタを記憶させる。つまり、矢印Y12方向に示すように、別ユーザ間におけるブロックID群を関連付ける。
In addition, when a plurality of files used by different users refer to the same block data, the file
さらに、ファイル操作実行部21は、ブロック関連データ記憶部33内のブロック関連データ33aに、当該ブロック関連データ33aが参照するブロックデータを参照しているいずれか1つの同ユーザチェインの先頭のブロックIDエントリへのポインタを関連付けて記憶する。例えば、図7の例では、複数のファイルから参照されているブロックデータのブロック関連データ33aに、ユーザ「user1」が使用するfile1AのブロックIDのみへのポインタを記憶している。
Furthermore, the file
以上の処理により、file1A, file1B, file1C, file2A, file2Bにて参照される同一のブロックデータを参照する一群のブロックIDが、上述した同ユーザチェインと別ユーザチェインとを介して、相互に関連付けられる(同一ブロックチェイン)。 Through the above processing, a group of block IDs that refer to the same block data referenced in file1A, file1B, file1C, file2A, and file2B are associated with each other via the above-described user chain and another user chain. (Same block chain).
ここで、上述した同ユーザチェイン及び別ユーザチェインにおいて、ブロックID間を関連付けるブロックIDエントリへのポインタは、ブロックIDリストの記憶位置と、リスト内のエントリの位置との組み合わせで表現している。なお、上述した図7の例では、同ユーザチェイン及び別ユーザチェインにおけるブロックID間を、双方向にポインタで参照させて関連付けているが、かかる関連付けの方法は一例であって、ブロックID間を関連付ける方法は上記方法に限定されない。 Here, in the above-described user chain and another user chain, a pointer to a block ID entry that associates block IDs is expressed by a combination of the storage position of the block ID list and the position of the entry in the list. In the example of FIG. 7 described above, the block IDs in the same user chain and another user chain are associated with each other by referring to the pointers in both directions, but this association method is an example, and the block IDs are associated with each other. The association method is not limited to the above method.
そして、上述した同ユーザチェイン及び別ユーザチェインを用いて、上記使用物理容量管理部22(記憶容量管理手段)にて、各ユーザが記憶装置3を物理的に使用している記憶容量を、ユーザ毎に算出する。具体的に、使用物理容量管理部22は、まず、各ユーザからブロックデータへの参照の有無をチェックする。そして、使用物理容量管理部22は、同一ユーザが参照するブロック関連データ33aに含まれるブロックデータのサイズ情報の値を合計して、ユーザ毎の記憶容量を算出し、図8に示すように、使用物理容量記憶部35に記憶する。
Then, using the above-described user chain and another user chain, the used physical capacity management unit 22 (storage capacity management means) determines the storage capacity in which each user physically uses the
このとき、使用物理容量記憶部35には、ユーザ毎に予め設定された使用記憶容量の制限値が記憶されている。このため、使用物理容量管理部22は、ユーザ毎に算出した使用記憶容量と記憶されている制限値とを比較して、使用記憶容量が制限値を超えている場合には、かかるユーザからの書き込みを制限し、書き込みエラーとなるよう制御する。
At this time, the used physical
ここで、上記では、使用物理容量管理部22は、ブロックデータのサイズのみを合計してユーザ毎の使用記憶容量を算出しているが、さらにブロックデータを参照するブロック関連データやブロックIDエントリの記憶容量も加算して、ユーザ毎の使用記憶容量を算出してもよい。また、上記では、使用物理容量管理部22は、使用記憶容量と制限値とを比較しているが、単に使用記憶容量を算出するだけの処理を行ってもよい。また、上記使用容量管理部22による使用物理容量の算出は、ファイルの書き込み時に実行されてもよく、予め設定されたタイミングで実行されてもよい。
Here, in the above description, the used physical
次に、上述したストレージシステム10の動作、特に、ファイルを書き込むときの動作を、図9乃至図10を参照して説明する。なお、以下では、ファイルをブロックデータに分割したり、フラグメントデータに分割して分散記憶するなど、一部の動作についての詳細な説明は省略する。
Next, the operation of the
まず、書き込み対象となるファイルを分割したブロックデータと重複するブロックデータが、既に記憶装置3に存在するかを判定する(ステップA10)。書き込み対象のブロックデータが記憶装置3内に存在しない場合には(ステップA10でNo)、書き込み対象のファイルを使用するユーザを特定し、当該ユーザの現在の使用物理容量とその制限値を使用物理容量記憶部35から取得する。そして、このユーザの現在の使用物理容量に、書き込み対象のブロックデータのサイズ情報を加算して、「現在の使用容量+ブロックサイズ」が、当該ユーザの使用物理容量の制限値を超えるかをチェックし(ステップA11)、超える場合は(ステップA11でYes)、書き込みエラーとする(ステップA16)。超えない場合は(ステップA11でNo)、書き込み対象のブロックデータをブロックデータ記憶部34に格納し(ステップA12)、そのユーザの現在の使用物理容量に格納したブロックデータのサイズ情報を加え(ステップA13)、使用物理容量記憶部35に記憶する。また、今回書き込んだブロックデータのブロックIDエントリへのポインタを、ブロック関連データに記録し(ステップA14)、書き込み成功とする(ステップA15)。
First, it is determined whether block data that overlaps block data obtained by dividing a file to be written already exists in the storage device 3 (step A10). When the block data to be written does not exist in the storage device 3 (No in step A10), the user who uses the file to be written is specified, and the current used physical capacity and the limit value of the user are used. Obtained from the
また、ステップA10にて、書き込み対象となるブロックデータと重複するブロックデータが既に記憶装置3内に存在する場合には(ステップA10でYes)、当該既に存在するブロックデータに関連付けられたブロック関連データのポインタが指すブロックIDエントリを参照し、そこからの別ユーザチェインをたどって、今回書き込んでいるユーザからの参照が既にあるかを調べる(ステップA20,A21)。参照がなかった場合(ステップA21でNo)、上述同様に、そのユーザにおける「現在の使用容量+ブロックサイズ」が、当該ユーザの使用物容量の制限値を超えるかをチェックし(ステップA22)、超える場合は(ステップA22でYes)、書き込みエラーとする(ステップA16)。超えない場合は(ステップA22でNo)、そのユーザの現在の使用物理容量に格納したブロックデータのサイズ情報を加え(ステップA23)、使用物理容量記憶部35に記憶する。また、今回書き込んだブロックデータのブロックIDエントリを別ユーザチェインに追加し(ステップA24)、書き込み成功とする(ステップA15)。なお、ステップA21で参照があった場合は(ステップA21でYes)、今回書き込んだブロックデータのブロックIDエントリを同ユーザチェインに追加し(ステップA25)、書き込み成功とする(ステップA15)。
In step A10, when block data that overlaps the block data to be written already exists in the storage device 3 (Yes in step A10), block related data associated with the already existing block data. The block ID entry pointed to by the pointer is referred to, and another user chain is traced from there to check whether there is already a reference from the user writing this time (steps A20 and A21). When there is no reference (No in Step A21), as described above, it is checked whether the “current use capacity + block size” of the user exceeds the limit value of the use capacity of the user (Step A22). If it exceeds (Yes in Step A22), a write error is assumed (Step A16). If not exceeded (No in step A22), the size information of the block data stored in the current used physical capacity of the user is added (step A23) and stored in the used physical
次に、ユーザがファイルを記憶装置3から削除するときの動作を、図10のフローチャートを参照して説明する。まず、削除するファイルに対応する各ブロックデータについて、当該ブロックデータを参照する同ユーザチェイン内に、今回削除するブロックIDエントリ以外のエントリが存在するかを調べる(ステップB10)。存在しない場合(ステップB11でNo)、そのユーザの使用物理容量から削除するブロックデータのサイズ情報の値を減じ(ステップB12)、今回削除するブロックデータのブロックIDエントリを別ユーザチェインから除く(ステップB13)。存在する場合(ステップB11でYes)、今回削除するブロックデータのブロックIDエントリを、同ユーザチェインから除く(ステップB14)。なお、除いたブロックIDエントリが同ユーザチェインの先頭エントリであった場合は(ステップB15でYes)、残ったブロックIDエントリの先頭のものが別ユーザチェインに入るよう、前後のブロックIDエントリまたはブロック関連データのポインタを更新する(ステップB16)。
Next, the operation when the user deletes a file from the
以上のように、本実施形態におけるストレージシステムによると、ユーザ毎の使用物理容量管理のための処理を効率的に行うことができる。特に、異なるユーザ(企業)間ではデータが重複することは少ないため、上述した別ユーザチェインの長さは短くなる(典型的には、1つのユーザだけが参照し、長さは1となる)。このため、使用物理容量の管理のために必要な同じユーザからの参照の有無をチェックする処理が効率化され、ユーザ毎の使用物理容量の把握及び管理が容易となる。 As described above, according to the storage system of this embodiment, the processing for managing the used physical capacity for each user can be performed efficiently. In particular, since there is little duplication of data between different users (companies), the length of the above-mentioned other user chain is shortened (typically, only one user refers to and the length is 1). . For this reason, the process of checking whether or not there is a reference from the same user necessary for managing the used physical capacity is made efficient, and it becomes easy to grasp and manage the used physical capacity for each user.
<実施形態2>
次に、本発明の第2の実施形態を、図11乃至図16を参照して説明する。図11は、本実施形態におけるストレージシステムの構成を示すブロック図であり、図12は、ストレージシステムに記憶されるデータの一例を示す図である。図13乃至図16は、ストレージシステムの動作を示す風呂チャートである。
<
Next, a second embodiment of the present invention will be described with reference to FIGS. FIG. 11 is a block diagram showing the configuration of the storage system in this embodiment, and FIG. 12 is a diagram showing an example of data stored in the storage system. 13 to 16 are bath charts showing the operation of the storage system.
本実施形態におけるストレージシステムは、上述した実施形態1のものとほぼ同様の構成である。これに加え、本実施形態は、図11に示すように、参照ビットマップ記憶部36を備えている。さらにこれに伴い、本実施形態では、データ処理装置2が備えるファイル操作実行部21及び使用物理容量管理部22は、以下のような機能を有する。
The storage system according to the present embodiment has substantially the same configuration as that of the first embodiment described above. In addition, this embodiment includes a reference
本実施形態における上記ファイル操作実行部21は、上記使用物理容量管理部22と協働して、ファイルの書き込みを行う際に、記憶装置3に格納したファイルを使用するユーザ毎における記憶装置の記憶容量を算出するための処理を、以下のように行う。まず、かかる処理の概略を、図12を参照して説明する。なお、以下に説明する処理は、ファイル格納時に実行されてもよく、あるいは、任意のタイミングで実行されてもよい。
The file
まず、ファイル操作実行部21は、ファイル31aを格納する際に、当該ファイル31aを構成するブロックデータ毎に、当該ブロックデータへのユーザ毎の参照の有無を表す参照ビットマップ36aを、ブロックデータに関連付けられたブロック関連データに関連付けて、参照ビットマップ記憶部36に記憶する。上記参照ビットマップ36aは、例えば、図12に示すように、ユーザ毎のビットを複数有するビットマップであり、各ビットは、関連付けられたブロックデータに対する各ユーザの参照の有無を表す情報が設定される情報領域である。一例として、参照ビットマップ36aには、関連付けられているブロックデータを参照するユーザに対応するビットに「1」がセットされる。従って、ブロックデータが複数のユーザにて参照されている場合には、当該ブロックデータに関連付けられる参照ビットマップ36aには、各ユーザに対応する複数のビットに「1」がセットされることとなる。以上より、参照ビットマップ36aの各ビットは、関連付けられているブロックデータを参照しているユーザを識別するユーザ識別情報として機能している。
First, when storing the
なお、上記参照ビットマップ36aは、同一のデータ内容となるビットマップが重複しないよう参照ビットマップ記憶部36aに記憶される。従って、異なるブロックデータであっても参照しているユーザが完全に同一である場合には、参照ビットマップ36aが同一となり、複数のブロックデータにそれぞれ関連付けられた複数のブロック関連データに、1つの参照ビットマップ36aが関連付けられることとなる。このとき、ブロック関連データ記憶部33内のブロック関連データには、関連付けられた参照ビットマップ記憶部36内の参照ビットマップへのポインタが記憶される。なお、参照ビットマップから、当該参照ビットマップへのポインタを取得する変換機能が必要となるが、例えばハッシュなどを使って実現することが可能である。
The
また、上記使用物理容量管理部22は、上述した参照ビットマップ36aを用いて、各ユーザが記憶装置3を物理的に使用している記憶容量を、ユーザ毎に算出する。具体的に、使用物理容量管理部22は、各ブロック関連データ33aに関連付けられた参照ビットマップ36aに「1」がセットされているビットの位置に応じて、各ブロックデータを参照している各ユーザを把握すると共に、ブロック関連データ33aに含まれるサイズ情報の値を用いて、ユーザ毎の記憶容量を算出する。また、使用物理容量管理部22は、上述同様図8に示すように、算出したユーザ毎の記憶容量を使用物理容量記憶部35に記憶すると共に、予め設定されているユーザ毎の記憶容量の制限値と比較する。そして、使用記憶容量が制限値を超えている場合には、かかるユーザからの書き込みを制限し、書き込みエラーとなるよう制御する。
Further, the used physical
また、上記ファイル操作実行部21や使用物理容量管理部22は、参照ビットマップ記憶部36内の使用されなくなった参照ビットマップ36aを削除する機能も有する。また、上記ファイル操作実行部21や使用物理容量管理部22は、ユーザの指示または設定されたスケジュールなどに応じて削除反映一括処理を実行し、ブロックデータの削除を反映すると共に、ブロック関連データ記憶部33内の参照ビットマップ36aへのポインタと、参照ビットマップ記憶部36内の参照ビットマップ36a、および使用物理容量記憶部35内の使用物理容量を、最新の状態に更新する処理を行う。
The file
ここで、上記では、使用物理容量管理部22は、ブロックデータのサイズのみを合計してユーザ毎の使用記憶容量を算出しているが、さらにブロックデータを参照するブロック関連データやブロックIDエントリの記憶容量も加算して、ユーザ毎の使用記憶容量を算出してもよい。また、上記では、使用物理容量管理部22は、使用記憶容量と制限値とを比較しているが、単に使用記憶容量を算出するだけの処理を行ってもよい。また、上記使用容量管理部22による使用物理容量の算出は、ファイルの書き込み時に実行されてもよく、予め設定されたタイミングで実行されてもよい。
Here, in the above description, the used physical
次に、上述したストレージシステム10の動作、特に、ファイルを書き込むときの動作を、図13乃至図16を参照して説明する。なお、以下では、ファイルをブロックデータに分割したり、フラグメントデータに分割して分散記憶するなど、一部の動作についての詳細な説明は省略する。
Next, the operation of the
まず、書き込み対象となるファイルを分割したブロックデータと重複するブロックデータが、既に記憶装置3に存在するかを判定する(ステップC10)。書き込み対象のブロックデータが記憶装置3内に存在しない場合には(ステップC10でNo)、書き込み対象のファイルを使用するユーザを特定し、当該ユーザの現在の使用物理容量とその制限値を使用物理容量記憶部35から取得する。そして、このユーザの現在の使用物理容量に、書き込み対象のブロックデータのサイズ情報を加算して、「現在の使用容量+ブロックサイズ」が、当該ユーザの使用物容量の制限値を超えるかをチェックし(ステップC11)、超える場合は(ステップC11でYes)、書き込みエラーとする(ステップC20)。超えない場合は(ステップC11でNo)、書き込み対象のブロックデータをブロックデータ記憶部34に格納し(ステップC12)、今回書き込み中のユーザのみに対応するビットに「1」をセットした参照ビットマップ36aを作成し(ステップC13)、参照ビットマップ記憶部36内のそれと同じ参照ビットマップへのポインタを取得する(ステップC14)。ポインタを取得できない、つまり、同じ参照ビットマップが存在しなかった場合には(ステップC15でNo)、その参照ビットマップ36aを参照ビットマップ記憶部36に記憶させ、当該参照ビットマップ36aへのポインタを取得する(ステップC16)。そして、取得したポインタを、ブロック関連データに記憶させ(ステップC17)、書込みを行っているユーザの使用物理容量にブロックデータのサイズ情報を加え(ステップC18)、書き込み成功とする(ステップC19)。
First, it is determined whether block data that overlaps block data obtained by dividing a file to be written already exists in the storage device 3 (step C10). When the block data to be written does not exist in the storage device 3 (No in Step C10), the user who uses the file to be written is specified, and the current used physical capacity and the limit value of the user are used. Obtained from the
なお、ステップC15で、同じ参照ビットマップが存在した場合には(ステップC15でYes)、その存在する参照ビットマップ36aへのポインタをブロック関連データに記憶させる(ステップC17)。そして、書込みを行っているユーザの使用物理容量にブロックデータのサイズ情報を加え(ステップC18)、書き込み成功とする(ステップC19)。
If the same reference bitmap exists at step C15 (Yes at step C15), a pointer to the existing
一方、ステップC10で、書き込み対象となるブロックデータが記憶装置3に既に存在する場合には(ステップC10でYes)、当該ブロックデータを参照するブロック関連データ33aに記憶されたポインタを使って、参照ビットマップ記憶部36から対応する参照ビットマップ36aを取得し(ステップC30)、今回書き込み中のユーザが既に参照ビットマップ36aに含まれているかチェックする(ステップC31)。含まれている場合は(ステップC31でYes)、そのまま書き込み成功とする(ステップC19)。含まれていない場合(ステップC31でNo)、上述同様に、そのユーザにおける「現在の使用容量+ブロックサイズ」が、当該ユーザの使用物理容量の制限値を超えるかをチェックし(ステップC32)、超える場合は(ステップA32でYes)、書き込みエラーとする(ステップC20)。超えない場合は(ステップA32でNo)、参照ビットマップに今回書き込み中のユーザを追加し(ステップC33)、上述同様に、ビットマップ記憶部36内のそれと同じビットマップへのポインタを取得する(ステップC14)。ポインタを取得できなかった、つまり、同じ参照ビットマップが存在しなかった場合(ステップC15でNo)、その参照ビットマップ36aを参照ビットマップ記憶部36に記憶させ、当該参照ビットマップ36aへのポインタを取得する(ステップC16)。そして、取得したポインタを、ブロック関連データに記憶させ(ステップC17)、書込みを行っているユーザの使用物理容量にブロックデータのサイズ情報を加え(ステップC18)、書き込み成功とする(ステップC19)。
On the other hand, if the block data to be written already exists in the
なお、ユーザがデータを削除するときは、参照ビットマップや使用物理容量についてはそのときには何もしない。但し、ユーザの指示または設定されたスケジュールなどによって実行される削除反映一括処理で、以下の処理を行う。 When the user deletes data, the reference bitmap and the used physical capacity are not processed at that time. However, the following processing is performed in the deletion reflection batch processing executed according to a user instruction or a set schedule.
まず、全ファイルシステムのディレクトリ構造をたどって、全ファイルに対して(ステップD10)、及び、各ファイルが参照する全ブロックデータに対して(ステップD11)、次の処理を行う。 First, following the directory structure of all file systems, the following processing is performed for all files (step D10) and for all block data referenced by each file (step D11).
処理対象となるブロックデータが初めて見つかったブロックかを判定し(ステップD12)、初めて見つかったブロックデータである場合には(ステップD12)、そのブロックデータに仮の参照ビットマップを関連付け(ステップD13)、仮の参照ビットマップは参照元のファイルを使用するユーザのみ「1」とする(ステップD14)。初めて見つかったブロックデータでない場合には(ステップD12でNo)、そのブロックデータに既に関連付けられている仮の参照ビットマップに、参照元ファイルを使用するユーザを追加する(ステップD15)。 It is determined whether the block data to be processed is the first block found (step D12). If it is the first block data found (step D12), a temporary reference bitmap is associated with the block data (step D13). The temporary reference bitmap is set to “1” only for the user who uses the reference source file (step D14). If the block data is not found for the first time (No in step D12), the user who uses the reference source file is added to the temporary reference bitmap already associated with the block data (step D15).
そして、上述したステップD10のループ処理後、格納されている全ブロックデータに対して(ステップD20)、ブロック関連データに記憶されたポインタを使って、参照ビットマップ記憶部36から対応する参照ビットマップを取得し(ステップD21)、各ユーザについて(ステップD22)、次の処理をする。そのユーザが参照ビットマップに含まれていて(ステップD23でYes)、仮のビットマップに含まれていない場合には(ステップD24でNo)、そのユーザの使用物理容量からブロックサイズを減じる(ステップD25)。ステップD22のループ後、参照ビットマップと仮のビットマップが異なる場合には(ステップD26でYes)、仮のビットマップと同じ参照ビットマップへのポインタを参照ビットマップ記憶部36から取得し、あるいは、仮のビットマップと同じ参照ビットマップが存在しなかった場合は仮のビットマップへのポインタを参照ビットマップ記憶部36に記憶させてポインタを取得し(ステップD27)、ブロック関連データにそのポインタを記憶させる(ステップD28)。最後に、参照ビットマップ記憶部36内の、もはや参照されていない参照ビットマップを削除する(ステップD29)。
Then, after the loop processing in step D10 described above, for all the stored block data (step D20), the corresponding reference bitmap from the reference
なお、上述した削除反映一括処理においては、ブロックデータへの参照がなくなったときに使用容量を減算しているが、一括処理の最初にユーザごとの仮の使用容量をゼロに設定し、参照が残っていたときにブロックデータのサイズを加算していき、最後にそれを使用物理容量記憶部35に記憶させる方法をとってもよい。
In the deletion reflection batch processing described above, the used capacity is subtracted when there is no more reference to the block data. However, the temporary used capacity for each user is set to zero at the beginning of the batch processing, and the reference is changed. A method may be used in which the sizes of the block data are added when they remain, and finally stored in the used physical
以上のように、本実施形態におけるストレージシステムによると、ユーザ毎の使用物理容量管理のための処理を効率的に行うことができる。特に、異なるユーザ(企業)間ではデータが重複することは少ないため、参照ビットマップが取りうるパターンは少なくなる、つまり、同じパターンが現れることが多くなる。このため、参照ビットマップへのポインタのサイズを、参照ビットマップのサイズより小さく設定することにより、各ブロックデータにそれぞれビットマップを持たせる場合と比べ、データ量は少なくて済む。従って、使用物理容量管理のために必要なデータ量を大幅に削減することができ、また、ユーザ毎の使用物理容量の把握及び管理が容易となる。 As described above, according to the storage system of this embodiment, the processing for managing the used physical capacity for each user can be performed efficiently. In particular, since there is little duplication of data between different users (businesses), the patterns that can be taken by the reference bitmap are reduced, that is, the same patterns often appear. For this reason, by setting the size of the pointer to the reference bitmap smaller than the size of the reference bitmap, the amount of data can be reduced compared to the case where each block data has a bitmap. Therefore, the amount of data necessary for managing the used physical capacity can be greatly reduced, and the used physical capacity for each user can be easily grasped and managed.
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるストレージシステム(図17参照)、情報処理装置、プログラム、情報処理方法の構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
<Appendix>
Part or all of the above-described embodiment can be described as in the following supplementary notes. The outline of the configuration of the storage system (see FIG. 17), information processing apparatus, program, and information processing method in the present invention will be described below. However, the present invention is not limited to the following configuration.
(付記1)
ファイルを分割したブロックデータを格納すると共に、当該格納されたブロックデータを参照する参照データを格納する記憶装置110と、
前記記憶装置に対して前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段100と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段102と、
を備え、
前記データ格納制御手段101は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理手段102は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム100。
(Appendix 1)
A
When the file is newly stored in the storage device, the block data obtained by dividing the file and the reference data referring to the block data are stored in the storage device and the file is newly stored The file that newly stores the data already stored in the storage device using the reference data when the block data obtained by dividing the block data has the same data content as the data already stored in the storage device Data storage control means 100 to be referred to as the block data of
A storage
With
The data
The storage
(付記2)
付記1に記載のストレージシステムであって、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザの前記ユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記ブロック識別データが参照する前記ブロック関連データに含まれる前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 2)
The storage system according to
The data storage control means identifies, as the reference data, block identification data that identifies the block data obtained by dividing the file to be newly stored and is associated with the user identification information of a user who uses the file, and the block Block-related data including size information indicating the data size of the referenced block data by referring to the block data stored in the storage device and referenced by the identification data is stored in the storage device, and When the block data obtained by dividing the file to be stored in the file has the same data content as the data already stored in the storage device, the block identification data for identifying the block data is already stored in the storage device. Refer to the block related data that refers to the data being ,
The storage capacity management unit is configured for each user in the storage device based on the user identification information associated with the block identification data and the size information included in the block related data referred to by the block identification data. Calculate the storage capacity of
Storage system.
(付記3)
付記2に記載のストレージシステムであって、
前記データ格納制御手段は、同一の前記ブロック関連データを参照する一群の前記ブロック識別データを同一ブロックチェインとして関連付けて記憶し、
前記記憶容量管理手段は、前記同一ブロックチェインの情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 3)
The storage system according to
The data storage control means associates and stores a group of the block identification data referring to the same block related data as the same block chain,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the information of the same block chain.
Storage system.
(付記4)
付記3に記載のストレージシステムであって、
前記データ格納制御手段は、前記同一ブロックチェインとして関連付けられた一群の前記ブロック識別データ内で、さらに同一の前記ユーザ識別情報が関連付けられた一群の前記ブロック識別データを同一ユーザチェインとして関連付けて記憶し、
前記記憶容量管理手段は、前記同一ブロックチェインの情報と前記同一ユーザチェインの情報とに基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 4)
The storage system according to
The data storage control means stores a group of the block identification data associated with the same user identification information in the group of the block identification data associated as the same block chain in association with each other as the same user chain. ,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the same block chain information and the same user chain information.
Storage system.
(付記5)
付記4に記載のストレージシステムであって、
前記データ格納制御手段は、前記同一ブロックチェインとして関連付けられた一群の前記ブロック識別データ内で、それぞれ異なる前記同一ユーザチェインとして関連付けられた各群の前記ブロック識別データ間を、当該各群の前記ブロック識別データのうちそれぞれ1つの前記ブロック識別データ間を相互に関連付け、
前記記憶容量管理手段は、前記同一ブロックチェインの情報と前記同一ユーザチェインの情報とに基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 5)
The storage system according to appendix 4, wherein
The data storage control means is configured to connect the block identification data of each group associated as the same user chain different from each other in the group of block identification data associated as the same block chain. The block identification data is associated with each other among the identification data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the same block chain information and the same user chain information.
Storage system.
(付記6)
付記1に記載のストレージシステムであって、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報と当該ブロックデータの分割元となる前記ファイルを使用するユーザの前記ユーザ識別情報とを含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 6)
The storage system according to
The data storage control means, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block identification data referred to and stored in the storage device Block-related data including block data and size information indicating a data size of the block data to be referred to and user identification information of a user who uses the file that is a division source of the block data; When the block data obtained by dividing the file to be newly stored is the same data content as the data already stored in the storage device, the block identification data for identifying the block data Related to the block referring to data already stored in the storage device To see over data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
Storage system.
(付記7)
付記6に記載のストレージシステムであって、
前記データ格納制御手段は、ユーザ毎の情報領域が形成された前記ユーザ識別情報に対して、前記ブロック関連データが参照する前記ブロックデータの分割元となる前記ファイルを使用するユーザに対応する前記情報領域に所定の情報をセットして、前記ユーザ識別情報を前記ブロック関連データに関連付けて記憶し、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 7)
The storage system according to appendix 6, wherein
The data storage control means is the information corresponding to a user who uses the file that is a division source of the block data referred to by the block related data with respect to the user identification information in which an information area for each user is formed. Set predetermined information in an area, store the user identification information in association with the block-related data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
Storage system.
(付記8)
付記7に記載のストレージシステムであって、
前記データ格納制御手段は、ユーザ毎の前記情報領域としてユーザ毎に対応するビットを有する前記ユーザ識別情報に対して、前記ブロック関連データが参照する前記ブロックデータの分割元となる前記ファイルを使用するユーザに対応する前記ビットに所定の情報をセットして、前記ユーザ識別情報を前記ブロック関連データに関連付けて記憶し、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報が有する各ビットに記憶された情報と、前記ブロック関連データに関連付けられた前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。
(Appendix 8)
The storage system according to appendix 7,
The data storage control means uses, as the information area for each user, the file serving as a division source of the block data referred to by the block related data for the user identification information having a bit corresponding to each user. A predetermined information is set in the bit corresponding to a user, and the user identification information is stored in association with the block related data;
The storage capacity management means is based on the information stored in each bit of the user identification information associated with the block related data and the size information associated with the block related data. Calculate the storage capacity for each user at
Storage system.
(付記9)
ファイルを分割したブロックデータを格納すると共に当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を備え、
前記データ格納制御手段は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理手段は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理装置。
(Appendix 9)
When storing the block data obtained by dividing the file and storing the reference data referring to the stored block data, when the file is newly stored, the block data obtained by dividing the file and the block data When the reference data that refers to block data is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data storage control means for making reference to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
With
The data storage control means stores the reference data that refers to the block data in association with user identification information that identifies a user who uses the file that is the division source of the block data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
Information processing device.
(付記10)
付記9に記載の情報処理装置であって、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザの前記ユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記ブロック識別データが参照する前記ブロック関連データに含まれる前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理装置。
(Appendix 10)
An information processing apparatus according to appendix 9, wherein
The data storage control means identifies, as the reference data, block identification data that identifies the block data obtained by dividing the file to be newly stored and is associated with the user identification information of a user who uses the file, and the block Block-related data including size information indicating the data size of the referenced block data by referring to the block data stored in the storage device and referenced by the identification data is stored in the storage device, and When the block data obtained by dividing the file to be stored in the file has the same data content as the data already stored in the storage device, the block identification data for identifying the block data is already stored in the storage device. Refer to the block related data that refers to the data being ,
The storage capacity management unit is configured for each user in the storage device based on the user identification information associated with the block identification data and the size information included in the block related data referred to by the block identification data. Calculate the storage capacity of
Information processing device.
(付記11)
付記9に記載の情報処理装置であって、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報と当該ブロックデータの分割元となる前記ファイルを使用するユーザの前記ユーザ識別情報とを含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理装置。
(Appendix 11)
An information processing apparatus according to appendix 9, wherein
The data storage control means, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block identification data referred to and stored in the storage device Block-related data including block data and size information indicating a data size of the block data to be referred to and user identification information of a user who uses the file that is a division source of the block data; When the block data obtained by dividing the file to be newly stored is the same data content as the data already stored in the storage device, the block identification data for identifying the block data Related to the block referring to data already stored in the storage device To see over data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
Information processing device.
(付記12)
情報処理装置に、
ファイルを分割したブロックデータを格納すると共に当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を実現させると共に、
前記データ格納制御手段は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理手段は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ことを実現させるためのプログラム。
(Appendix 12)
In the information processing device,
When storing the block data obtained by dividing the file and storing the reference data referring to the stored block data, when the file is newly stored, the block data obtained by dividing the file and the block data When the reference data that refers to block data is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data storage control means for making reference to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
And realize
The data storage control means stores the reference data that refers to the block data in association with user identification information that identifies a user who uses the file that is the division source of the block data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
A program to make things happen.
(付記13)
付記12に記載のプログラムであって、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザの前記ユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記ブロック識別データが参照する前記ブロック関連データに含まれる前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
プログラム。
(Appendix 13)
The program according to
The data storage control means identifies, as the reference data, block identification data that identifies the block data obtained by dividing the file to be newly stored and is associated with the user identification information of a user who uses the file, and the block Block-related data including size information indicating the data size of the referenced block data by referring to the block data stored in the storage device and referenced by the identification data is stored in the storage device, and When the block data obtained by dividing the file to be stored in the file has the same data content as the data already stored in the storage device, the block identification data for identifying the block data is already stored in the storage device. Refer to the block related data that refers to the data being ,
The storage capacity management unit is configured for each user in the storage device based on the user identification information associated with the block identification data and the size information included in the block related data referred to by the block identification data. Calculate the storage capacity of
program.
(付記14)
付記12に記載のプログラムであって、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報と当該ブロックデータの分割元となる前記ファイルを使用するユーザの前記ユーザ識別情報とを含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
プログラム。
(Appendix 14)
The program according to
The data storage control means, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block identification data referred to and stored in the storage device Block-related data including block data and size information indicating a data size of the block data to be referred to and user identification information of a user who uses the file that is a division source of the block data; When the block data obtained by dividing the file to be newly stored is the same data content as the data already stored in the storage device, the block identification data for identifying the block data Related to the block referring to data already stored in the storage device To see over data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
program.
(付記15)
ファイルを分割したブロックデータを格納すると共に、当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納工程と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理工程と、
を有し、
前記データ格納工程は、前記ブロックデータを参照する前記参照データに、当該ブロックデータの分割元となる前記ファイルを使用するユーザを識別するユーザ識別情報を関連付けて記憶し、
前記記憶容量管理工程は、前記参照データに関連付けられた前記ユーザ識別情報に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理方法。
(Appendix 15)
The block data obtained by dividing the file when the file is newly stored in the storage device that stores the block data obtained by dividing the file and stores the reference data that refers to the stored block data. When the reference data referring to the block data is stored in the storage device, and the block data obtained by dividing the newly stored file has the same data content as the data already stored in the storage device A data storing step of referring to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management step of calculating and storing the storage capacity in the storage device in which the block data is stored for each user who uses the file that is the division source of the block data; and
Have
In the data storing step, the reference data for referring to the block data is stored in association with user identification information for identifying a user who uses the file that is a division source of the block data,
The storage capacity management step calculates a storage capacity for each user in the storage device based on the user identification information associated with the reference data.
Information processing method.
(付記16)
付記15に記載の情報処理方法であって、
前記データ格納工程は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザの前記ユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理工程は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記ブロック識別データが参照する前記ブロック関連データに含まれる前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理方法。
(Appendix 16)
An information processing method according to attachment 15, wherein
The data storing step includes identifying block data obtained by dividing the file to be newly stored as the reference data and block identification data associated with the user identification information of a user who uses the file, and the block identification Block related data including size information indicating the data size of the block data referred to by referring to the block data stored in the storage device and referred to by the data is stored in the storage device, and newly When the block data obtained by dividing the file to be stored has the same data content as the data already stored in the storage device, the block identification data for identifying the block data is already stored in the storage device. The block related data referring to the data being referred to,
The storage capacity management step is performed for each user in the storage device based on the user identification information associated with the block identification data and the size information included in the block related data referred to by the block identification data. Calculate the storage capacity of
Information processing method.
(付記17)
付記15に記載の情報処理方法であって、
前記データ格納工程は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報と当該ブロックデータの分割元となる前記ファイルを使用するユーザの前記ユーザ識別情報とを含むブロック関連データと、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理工程は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理方法。
(Appendix 17)
An information processing method according to attachment 15, wherein
The data storage step includes, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block that is referred to by the block identification data and stored in the storage device Block related data including size information indicating the data size of the block data to be referred to and the user identification information of the user who uses the file that is the division source of the block data in the storage device. When the block data obtained by dividing the file to be stored and newly stored has the same data content as the data already stored in the storage device, the block identification data for identifying the block data stores the block data. The block related data referring to data already stored in the device. To see,
The storage capacity management step calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block-related data.
Information processing method.
なお、上述したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されている。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。 Note that the above-described program is stored in a storage device or recorded on a computer-readable recording medium. For example, the recording medium is a portable medium such as a flexible disk, an optical disk, a magneto-optical disk, and a semiconductor memory.
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。 Although the present invention has been described with reference to the above-described embodiment and the like, the present invention is not limited to the above-described embodiment. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
10 ストレージシステム
11 バックアップシステム
12 バックアップ対象装置
20 アクセラレータノード
30 ストレージノード
1 ファイル操作入力部
2 データ処理装置
21 ファイル操作実行部
22 使用物理容量管理部
3 記憶装置
31 FS構造記憶部
32 ブロックIDリスト記憶部
33 ブロック関連データ記憶部
34 ブロックデータ記憶部
35 使用物理容量記憶部
36 参照ビットマップ記憶部
31a ファイル
32a ブロックID
33a ブロック関連データ
34a ブロックデータ
36a 参照ビットマップ
10
33a Block-related
Claims (11)
前記記憶装置に対して前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を備え、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザのユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、同一の前記ブロック関連データを参照する一群の前記ブロック識別データを同一ブロックチェインとして関連付けて記憶し、
前記記憶容量管理手段は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記同一ブロックチェインの情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 A storage device for storing block data obtained by dividing the file, and storing reference data for referring to the stored block data;
When the file is newly stored in the storage device, the block data obtained by dividing the file and the reference data referring to the block data are stored in the storage device and the file is newly stored The file that newly stores the data already stored in the storage device using the reference data when the block data obtained by dividing the block data has the same data content as the data already stored in the storage device Data storage control means to be referred to as the block data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
With
The data storage control means identifies, as the reference data, block identification data associated with user identification information of a user who uses the file and identifies the block data obtained by dividing the file to be newly stored, and the block identification Block-related data including size information indicating the data size of the block data referred to by referring to the block data stored in the storage device and referenced in the data is stored in the storage device, and the same Storing a group of the block identification data referring to the block related data in association with each other as the same block chain;
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the block identification data and information on the same block chain.
Storage system.
前記データ格納制御手段は、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記ブロック識別データが参照する前記ブロック関連データに含まれる前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 The storage system according to claim 1,
The data storage control unit, when the block data obtained by dividing the file to be stored newly is already the same data content and data stored in the storage device, the block identification identifying the block data Refer to the block related data referring to data already stored in the storage device by data,
The storage capacity management unit is configured for each user in the storage device based on the user identification information associated with the block identification data and the size information included in the block related data referred to by the block identification data. Calculate the storage capacity of
Storage system.
前記データ格納制御手段は、前記同一ブロックチェインとして関連付けられた一群の前記ブロック識別データ内で、さらに同一の前記ユーザ識別情報が関連付けられた一群の前記ブロック識別データを同一ユーザチェインとして関連付けて記憶し、
前記記憶容量管理手段は、前記同一ブロックチェインの情報と前記同一ユーザチェインの情報とに基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 The storage system according to claim 1 or 2 ,
The data storage control means stores a group of the block identification data associated with the same user identification information in the group of the block identification data associated as the same block chain in association with each other as the same user chain. ,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the same block chain information and the same user chain information.
Storage system.
前記データ格納制御手段は、前記同一ブロックチェインとして関連付けられた一群の前記ブロック識別データ内で、それぞれ異なる前記同一ユーザチェインとして関連付けられた各群の前記ブロック識別データ間を、当該各群の前記ブロック識別データのうちそれぞれ1つの前記ブロック識別データ間を相互に関連付け、
前記記憶容量管理手段は、前記同一ブロックチェインの情報と前記同一ユーザチェインの情報とに基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 The storage system according to claim 3 ,
The data storage control means is configured to connect the block identification data of each group associated as the same user chain different from each other in the group of block identification data associated as the same block chain. The block identification data is associated with each other among the identification data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the same block chain information and the same user chain information.
Storage system.
前記記憶装置に対して前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を備え、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、当該ブロック関連データに関連付けられ当該ブロックデータの分割元となる前記ファイルを使用するユーザのユーザ識別情報と、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 A storage device for storing block data obtained by dividing the file, and storing reference data for referring to the stored block data;
When the file is newly stored in the storage device, the block data obtained by dividing the file and the reference data referring to the block data are stored in the storage device and the file is newly stored The file that newly stores the data already stored in the storage device using the reference data when the block data obtained by dividing the block data has the same data content as the data already stored in the storage device Data storage control means to be referred to as the block data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
With
The data storage control means, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block identification data referred to and stored in the storage device Block-related data including size information indicating the data size of the referenced block data with reference to block data, and user identification information of a user who uses the file associated with the block-related data and from which the block data is divided Is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device, the block data is identified. Already stored in the storage device as block identification data And refers to the block associated data referring to over data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
Storage system.
前記データ格納制御手段は、ユーザ毎の情報領域が形成された前記ユーザ識別情報に対して、前記ブロック関連データが参照する前記ブロックデータの分割元となる前記ファイルを使用するユーザに対応する前記情報領域に所定の情報をセットして、前記ユーザ識別情報を前記ブロック関連データに関連付けて記憶し、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 The storage system according to claim 5 ,
The data storage control means is the information corresponding to a user who uses the file that is a division source of the block data referred to by the block related data with respect to the user identification information in which an information area for each user is formed. Set predetermined information in an area, store the user identification information in association with the block-related data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
Storage system.
前記データ格納制御手段は、ユーザ毎の前記情報領域としてユーザ毎に対応するビットを有する前記ユーザ識別情報に対して、前記ブロック関連データが参照する前記ブロックデータの分割元となる前記ファイルを使用するユーザに対応する前記ビットに所定の情報をセットして、前記ユーザ識別情報を前記ブロック関連データに関連付けて記憶し、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報が有する各ビットに記憶された情報と、前記ブロック関連データに関連付けられた前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ストレージシステム。 The storage system according to claim 6 ,
The data storage control means uses, as the information area for each user, the file serving as a division source of the block data referred to by the block related data for the user identification information having a bit corresponding to each user. A predetermined information is set in the bit corresponding to a user, and the user identification information is stored in association with the block related data;
The storage capacity management means is based on the information stored in each bit of the user identification information associated with the block related data and the size information associated with the block related data. Calculate the storage capacity for each user at
Storage system.
ファイルを分割したブロックデータを格納すると共に当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を実現させると共に、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザのユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、同一の前記ブロック関連データを参照する一群の前記ブロック識別データを同一ブロックチェインとして関連付けて記憶し、
前記記憶容量管理手段は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記同一ブロックチェインの情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ことを実現させるためのプログラム。 In the information processing device,
When storing the block data obtained by dividing the file and storing the reference data referring to the stored block data, when the file is newly stored, the block data obtained by dividing the file and the block data When the reference data that refers to block data is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data storage control means for making reference to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
And realize
The data storage control means identifies, as the reference data, block identification data associated with user identification information of a user who uses the file and identifies the block data obtained by dividing the file to be newly stored, and the block identification Block-related data including size information indicating the data size of the block data referred to by referring to the block data stored in the storage device and referenced in the data is stored in the storage device, and the same Storing a group of the block identification data referring to the block related data in association with each other as the same block chain;
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information associated with the block identification data and information on the same block chain.
A program to make things happen.
ファイルを分割したブロックデータを格納すると共に当該格納されたブロックデータを参照する参照データを格納する記憶装置に対して、前記ファイルを新たに格納する際に、当該ファイルを分割した前記ブロックデータと当該ブロックデータを参照する前記参照データとを前記記憶装置に格納すると共に、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、前記参照データを用いて前記記憶装置に既に記憶されているデータを新たに格納する前記ファイルの前記ブロックデータとして参照させるデータ格納制御手段と、
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理手段と、
を実現させると共に、
前記データ格納制御手段は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、当該ブロック関連データに関連付けられ当該ブロックデータの分割元となる前記ファイルを使用するユーザのユーザ識別情報と、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理手段は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
ことを実現させるためのプログラム。 In the information processing device,
When storing the block data obtained by dividing the file and storing the reference data referring to the stored block data, when the file is newly stored, the block data obtained by dividing the file and the block data When the reference data that refers to block data is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data storage control means for making reference to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management means for calculating and storing a storage capacity in the storage device in which the block data is stored for each user who uses the file that is a division source of the block data;
And realize
The data storage control means, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block identification data referred to and stored in the storage device Block-related data including size information indicating the data size of the referenced block data with reference to block data, and user identification information of a user who uses the file associated with the block-related data and from which the block data is divided Is stored in the storage device, and the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device, the block data is identified. Already stored in the storage device as block identification data And refers to the block associated data referring to over data,
The storage capacity management means calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block related data.
A program to make things happen.
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理工程と、
を有し、
前記データ格納工程は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別すると共に前記ファイルを使用するユーザのユーザ識別情報が関連付けられたブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に格納された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、を前記記憶装置に記憶し、同一の前記ブロック関連データを参照する一群の前記ブロック識別データを同一ブロックチェインとして関連付けて記憶し、
前記記憶容量管理工程は、前記ブロック識別データに関連付けられた前記ユーザ識別情報と、前記同一ブロックチェインの情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理方法。 The block data obtained by dividing the file when the file is newly stored in the storage device that stores the block data obtained by dividing the file and stores the reference data that refers to the stored block data. When the reference data referring to the block data is stored in the storage device, and the block data obtained by dividing the newly stored file has the same data content as the data already stored in the storage device A data storing step of referring to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management step of calculating and storing the storage capacity in the storage device in which the block data is stored for each user who uses the file that is the division source of the block data; and
Have
The data storage step includes identifying block data obtained by dividing the file to be newly stored as the reference data, and block identification data associated with user identification information of a user who uses the file, and the block identification data And the block related data including size information indicating the data size of the block data to be referred to by referring to the block data stored in the storage device and stored in the storage device. Storing a group of the block identification data referring to block related data in association with each other as the same block chain;
The storage capacity management step calculates a storage capacity for each user in the storage device based on the user identification information associated with the block identification data and information on the same block chain.
Information processing method.
前記ブロックデータが格納されている前記記憶装置内の記憶容量を、当該ブロックデータの分割元となる前記ファイルを使用するユーザ毎に算出して記憶する記憶容量管理工程と、
を有し、
前記データ格納工程は、前記参照データとして、新たに格納する前記ファイルを分割した前記ブロックデータを識別するブロック識別データと、当該ブロック識別データにて参照されると共に前記記憶装置に記憶された前記ブロックデータを参照し当該参照する前記ブロックデータのデータサイズを表すサイズ情報を含むブロック関連データと、当該ブロック関連データに関連付けられ当該ブロックデータの分割元となる前記ファイルを使用するユーザのユーザ識別情報と、を前記記憶装置に記憶し、新たに格納する前記ファイルを分割した前記ブロックデータが前記記憶装置に既に記憶されているデータと同一のデータ内容である場合に、当該ブロックデータを識別する前記ブロック識別データにて前記記憶装置に既に記憶されているデータを参照する前記ブロック関連データを参照させ、
前記記憶容量管理工程は、前記ブロック関連データに関連付けられた前記ユーザ識別情報と前記サイズ情報と、に基づいて前記記憶装置内におけるユーザ毎の記憶容量を算出する、
情報処理方法。
The block data obtained by dividing the file when the file is newly stored in the storage device that stores the block data obtained by dividing the file and stores the reference data that refers to the stored block data. When the reference data referring to the block data is stored in the storage device, and the block data obtained by dividing the newly stored file has the same data content as the data already stored in the storage device A data storing step of referring to the block data of the file for newly storing data already stored in the storage device using the reference data;
A storage capacity management step of calculating and storing the storage capacity in the storage device in which the block data is stored for each user who uses the file that is the division source of the block data; and
Have
The data storage step includes, as the reference data, block identification data for identifying the block data obtained by dividing the file to be newly stored, and the block that is referred to by the block identification data and stored in the storage device Block-related data including size information indicating the data size of the block data to be referred to and data, and user identification information of a user who uses the file associated with the block-related data and from which the block data is divided The block for identifying the block data when the block data obtained by dividing the file to be newly stored has the same data content as the data already stored in the storage device Data already stored in the storage device as identification data The block related data referred to see,
The storage capacity management step calculates a storage capacity for each user in the storage device based on the user identification information and the size information associated with the block-related data.
Information processing method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012038144A JP5998517B2 (en) | 2012-02-24 | 2012-02-24 | Storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012038144A JP5998517B2 (en) | 2012-02-24 | 2012-02-24 | Storage system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013174985A JP2013174985A (en) | 2013-09-05 |
JP5998517B2 true JP5998517B2 (en) | 2016-09-28 |
Family
ID=49267845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012038144A Expired - Fee Related JP5998517B2 (en) | 2012-02-24 | 2012-02-24 | Storage system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5998517B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7099690B2 (en) * | 2018-03-16 | 2022-07-12 | Necソリューションイノベータ株式会社 | Storage system, storage control device, storage control method, and storage control program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8131687B2 (en) * | 2008-11-13 | 2012-03-06 | International Business Machines Corporation | File system with internal deduplication and management of data blocks |
JP5391705B2 (en) * | 2009-01-27 | 2014-01-15 | 日本電気株式会社 | Storage system |
EP2430516B1 (en) * | 2009-05-13 | 2018-07-11 | Hitachi, Ltd. | Storage system and utilization management method for storage system |
-
2012
- 2012-02-24 JP JP2012038144A patent/JP5998517B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013174985A (en) | 2013-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11099769B1 (en) | Copying data without accessing the data | |
JP5637552B2 (en) | Storage system | |
US8112463B2 (en) | File management method and storage system | |
US9785646B2 (en) | Data file handling in a network environment and independent file server | |
KR20150131359A (en) | Multi-layered storage administration for flexible placement of data | |
JP2016512906A5 (en) | ||
CN102938784A (en) | Method and system used for data storage and used in distributed storage system | |
JP2007241486A (en) | Storage system | |
JP5446985B2 (en) | Storage system | |
JP5929326B2 (en) | Storage system | |
JP5444728B2 (en) | Storage system, data writing method in storage system, and data writing program | |
JP5998517B2 (en) | Storage system | |
JP5459388B2 (en) | Storage device | |
JPWO2011108048A1 (en) | Storage device | |
US11436193B2 (en) | System and method for managing data using an enumerator | |
JP5891842B2 (en) | Storage system | |
JP6281333B2 (en) | Storage system | |
US11132401B1 (en) | Distributed hash table based logging service | |
JP6201340B2 (en) | Replication system | |
CN117614973B (en) | File storage method based on multi-cloud architecture | |
JP7491545B2 (en) | Information Processing Method | |
JP2019053477A (en) | File control device, file control method, and program | |
JP2023169514A (en) | Computer system, method of tracking lineage of data, and program | |
JP6343952B2 (en) | Storage system | |
CN119621132A (en) | Data processing method, device, electronic device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151217 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160426 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160708 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20160714 |
|
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: 20160802 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160815 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5998517 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |