JP2020140647A - Information processing method - Google Patents
Information processing method Download PDFInfo
- Publication number
- JP2020140647A JP2020140647A JP2019037817A JP2019037817A JP2020140647A JP 2020140647 A JP2020140647 A JP 2020140647A JP 2019037817 A JP2019037817 A JP 2019037817A JP 2019037817 A JP2019037817 A JP 2019037817A JP 2020140647 A JP2020140647 A JP 2020140647A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information processing
- stored
- file
- processing method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 78
- 238000003672 processing method Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 76
- 238000000926 separation method Methods 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims description 35
- 238000010586 diagram Methods 0.000 description 11
- 239000012634 fragment Substances 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Abstract
Description
本発明は、情報処理方法、情報処理装置、プログラムに関する。 The present invention relates to an information processing method, an information processing device, and a program.
日々増大する保存すべきデータに対応することなどを目的として大容量なストレージシステムが必要となっている。このようなストレージシステムでは、例えば、重複記憶を排除することで記憶コストを削減することなどが行われている。 A large-capacity storage system is required for the purpose of responding to the ever-increasing amount of data to be stored. In such a storage system, for example, the storage cost is reduced by eliminating duplicate storage.
上記のようなストレージシステムの一例として、例えば、特許文献1がある。特許文献1には、重複排除した状態でデータを格納する書込部と、書き込み対象となるデータをユーザデータ部分と管理データ部分とに分離するデータ分離部と、を有するストレージシステムが記載されている。特許文献1によると、書込部は、ユーザデータ部分を格納したファイルを生成するとともに、ファイルに格納されたユーザデータ部分に関連付けられたメタデータとして管理データ部分をファイルに含めて格納する。そして、書込部は、ファイルを書き込み対象となるデータとして記憶装置に格納する。
As an example of the storage system as described above, there is, for example,
上記のようなストレージシステムでは、例えば図1で示すように、必要なスループットの確保などを目的に、リード位置から予め定められた量のデータブロックをバックグラウンドで取得しキャッシュしておく先行読み出し処理を行っている。この先行読み出し処理の結果、図1で示すように、リード要求を一時的に保持するリード処理キューにリード要求が滞納し、応答時間が伸びることがあった。 In a storage system as described above, for example, as shown in FIG. 1, a pre-reading process in which a predetermined amount of data blocks are acquired from a read position in the background and cached for the purpose of ensuring the required throughput. It is carried out. As a result of this advance read processing, as shown in FIG. 1, the read request may be delinquent in the read processing queue that temporarily holds the read request, and the response time may be extended.
例えば、図1のケース1で示すように、リード処理キューによってリード処理順が後ろになるブロックのリード処理は、リード処理順が先のブロックのリードよりも遅くなる。また、先行読み出し範囲外のリード要求は、リード処理キューの後ろに追加される。そのため、図1のケース2で示すように、先行読み出し範囲外のリード要求を行う場合、新たな先行読み出し要求によりリード処理キューが伸長し、待ち時間の増加を助長することになる。さらに、これらの待ち時間は、読み出し対象のデータブロックを他のノードが有する記憶装置から取得することで、さらに悪化・増大する。
For example, as shown in
このように、記憶装置からデータブロックを取り出す際に時間がかかるおそれがあった。その結果、必要なデータブロックを必要なときに取り出せないおそれがある、という問題が生じていた。これにより、例えば、ストレージシステムに格納した映像ファイルを映像ソフトが直に読み出しながら映像再生すると、ストレージシステムのリードI/Oの応答時間が長すぎて映像再生が途切れる、などの事態が生じていた。 As described above, there is a possibility that it takes time to retrieve the data block from the storage device. As a result, there is a problem that the required data block may not be retrieved when required. As a result, for example, when the video software directly reads the video file stored in the storage system and plays the video, the read I / O response time of the storage system is too long and the video playback is interrupted. ..
そこで、本発明の目的は、必要なデータブロックを必要なときに取り出せないおそれがある、という課題を解決する情報処理方法、情報処理装置、プログラムを提供することにある。 Therefore, an object of the present invention is to provide an information processing method, an information processing device, and a program that solve the problem that a necessary data block may not be taken out when necessary.
かかる目的を達成するため本発明の一形態である情報処理方法は、
ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置が行う情報処理方法であって、
データの特性に応じて格納対象のファイルを構成するデータを分離し、
分離の結果に応じて、分離したデータを格納する
という構成をとる。
The information processing method, which is one embodiment of the present invention, in order to achieve such an object
It is an information processing method performed by an information processing device that has a function of processing a file write request and a file read request and also has a function of storing data to be stored.
The data that makes up the file to be stored is separated according to the characteristics of the data.
Depending on the result of separation, the separated data is stored.
また、本発明の他の形態である情報処理装置は、
ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置であって、
データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部と、
分離の結果に応じて、分離したデータを格納する書込部と、
を有する
という構成をとる。
Further, the information processing device according to another embodiment of the present invention is
An information processing device that has a function of processing a file write request and a file read request and also has a function of storing data to be stored.
A data separator that separates the data that makes up the file to be stored according to the characteristics of the data,
A writing unit that stores the separated data according to the result of the separation,
It has a structure of having.
また、本発明の他の形態であるプログラムは、
ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置に、
データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部と、
分離の結果に応じて、分離したデータを格納する書込部と、
を実現するためのプログラムである。
In addition, the program which is another form of the present invention
An information processing device that has a function to process file write requests and read requests and also has a function to store data to be stored.
A data separator that separates the data that makes up the file to be stored according to the characteristics of the data,
A writing unit that stores the separated data according to the result of the separation,
It is a program to realize.
本発明は、以上のように構成されることにより、必要なデータブロックを必要なときに取り出せないおそれがある、という課題を解決する情報処理方法、情報処理装置、プログラムを提供することが可能となる。 The present invention makes it possible to provide an information processing method, an information processing device, and a program that solves the problem that a necessary data block may not be taken out when necessary by being configured as described above. Become.
[第1の実施形態]
本発明の第1の実施形態を図2から図12までを参照して説明する。図2はストレージシステム100を含むシステム全体の構成の一例を示すブロック図である。図3は、ハイブリッドノード110の構成の一例を示すブロック図である。図4は、データを分離して通常ストリームと低遅延ストリームに格納する際の処理の一例を示す図である。図5は、通常ストリームを書き込む処理の一例を説明するための図である。図6は、低遅延ストリームを書き込む処理の一例を説明するための図である。図7は、ファイルを構成する通常ストリームと低遅延ストリームを読み出して結合する処理の一例を示す図である。図8は、低遅延ストリームを読み出す処理の一例を説明するための図である。図9は、通常リード処理キューとプライオリティリード処理キューとの関係の一例を示す図である。図10は、ストレージシステム100がデータを書き込む際の処理の一例を示すフローチャートである。図11は、ストレージシステム100がデータを読み出す際の処理の一例を示すフローチャートである。図12は、通常リード処理キューとプライオリティリード処理キューとの処理の一例を示すフローチャートである。
[First Embodiment]
The first embodiment of the present invention will be described with reference to FIGS. 2 to 12. FIG. 2 is a block diagram showing an example of the configuration of the entire system including the
本発明の第1の実施形態では、格納対象のデータを分割したブロックデータを重複排除した状態で格納するストレージシステム100について説明する。後述するように、本実施形態において説明するストレージシステム100は、格納対象のデータをデータの特性に応じて分離して、通常ストリームと低遅延ストリームに格納する。また、ストレージシステム100は、通常ストリームのデータと低遅延ストリームのデータをそれぞれ別の方法を用いて格納する。つまり、ストレージシステム100は、格納対象のデータをデータの特性に応じて分離して、データの特性に応じた格納を行う。また、ストレージシステム100は、リード要求を格納するキューを2種類有している。2種類のキューを使い分けることで、ストレージシステム100は、より適切なデータの読み出しを可能とする。
In the first embodiment of the present invention, the
図2は、ストレージシステム100を含むシステム全体の構成の一例を示している。図2を参照すると、システムは、業務システム200と、ストレージシステム100と、を有している。図2で示すように、ストレージシステム100は、外部NIC(Network Interface Card)31などを用いて、業務システム200と互いに通信可能なよう接続されている。
FIG. 2 shows an example of the configuration of the entire system including the
また、図2を参照すると、ストレージシステム100は、ハイブリッドノード110とストレージノード120とを有している。図2で示すように、ハイブリッドノード110は、外部NIC31を用いて、業務システム200と互いに通信可能なよう接続されている。また、ハイブリッドノード110とストレージノード120とは、内部NIC32などを用いて、互いに通信可能なよう接続されている。
Further, referring to FIG. 2, the
なお、図2では、システム全体の構成の一例を示している。従って、システム全体の構成は、図2で示す場合に限定されない。例えば、ストレージシステム100が有するハイブリッドノード110の数やストレージノード120の数は、図2で示す場合に限定されない。ストレージシステム100は、任意の数のハイブリッドノード110や任意の数のストレージノード120を有することが出来る。
Note that FIG. 2 shows an example of the configuration of the entire system. Therefore, the configuration of the entire system is not limited to the case shown in FIG. For example, the number of
ハイブリッドノード110は、ファイルの書き込み要求や読み出し要求などのファイルI/O(Input/Output)を処理する機能を有するとともに、格納対象のブロックデータを記憶装置116に格納する機能を有する情報処理装置である。また、ハイブリッドノード110は、キャッシュを有している。ハイブリッドノード110は、読み出し対象のブロックデータを記憶装置116や他のノードから読み出す際に、リード位置から予め定められた量のデータブロックを取得しキャッシュに格納する先行読み出し処理を行うことが出来る。
The
図3は、ハイブリッドノード110の構成の一例を示している。図3を参照すると、ハイブリッドノード110は、例えば、データ分離部111と、分離データ書込部112と、解放部113と、分離データ読出部114と、分離データ関連付け部115と、記憶装置116と、を有している。
FIG. 3 shows an example of the configuration of the
例えば、ハイブリッドノード110は、CPU(Central Processing Unit)などの演算装置と記憶装置とを有している。ハイブリッドノード110は、例えば、記憶装置が記憶するプログラムを演算装置が実行することで、上述した各処理部を実現する。
For example, the
データ分離部111は、ファイルの書き込み要求を業務システム200から受信すると、特開2012−208650号に記載された方法と同様の方法などを用いて、書き込み対象のファイルを構成する分離前データを、データの特性に応じて分離する。例えば、図4で示すように、データ分離部111は、分離前データを、リード時に即時応答が必要であるなど読み出しを優先するデータと、それ以外のデータと、に分離する。このように、データ分離部111は、読み出しの優先度などに応じて、データを分離する。また、データ分離部111は、読み出しを優先するデータと、それ以外のデータと、の2つに分離したデータの位置情報を示すデータを生成する。そして、データ分離部111は、分離・生成したそれぞれのデータをそれぞれ別のストリームに格納する。具体的には、データ分離部111は、分離前データを分離したデータのうち読み出しを優先するデータを低遅延ストリーム(1)に格納するとともに、2つに分離したデータの位置情報を示すデータを低遅延ストリーム(2)に格納する。また、データ分離部111は、分離前データを分離したデータのうち読み出しを優先するデータ以外のデータを通常ストリームに格納する。
When the data separation unit 111 receives the file write request from the
例えば、このように、データ分離部111は、分離前データを2つのデータに分離するとともに、2つに分離したデータの位置を示すデータを生成する。そして、データ分離部111は、それぞれのデータを通常ストリームと低遅延ストリームに格納する。これにより、データ分離部111は、3つのストリームを有するファイルを生成する。このように、データの特性に応じてストリームを分けることで、ストリームを手掛かりに、データの格納方法や読み込み方法を最適化することが可能となる。 For example, in this way, the data separation unit 111 separates the pre-separation data into two data and generates data indicating the position of the two separated data. Then, the data separation unit 111 stores each data in the normal stream and the low delay stream. As a result, the data separation unit 111 generates a file having three streams. By dividing the stream according to the characteristics of the data in this way, it is possible to optimize the data storage method and the data reading method using the stream as a clue.
なお、リード時に即時応答が必要であるなど読み出しを優先するデータとは、例えば、映像データにおけるIフレームなどのキーフレームである。換言すると、データ分離部111は、例えば、1フレームのみで完結可能な他のフレームに依存しないフレームなどを、読み出しを優先するデータとして分離する。なお、データ分離部111は、上記例示した以外のフレームなどを、読み出しを優先するデータとして判断するよう構成しても構わない。 The data that gives priority to reading, such as requiring an immediate response at the time of reading, is, for example, a key frame such as an I frame in the video data. In other words, the data separation unit 111 separates, for example, a frame that does not depend on another frame that can be completed with only one frame as data that gives priority to reading. The data separation unit 111 may be configured to determine a frame or the like other than those illustrated above as data for which reading is prioritized.
分離データ書込部112は、データ分離部111がデータを分離した結果をストレージシステム100に格納する。分離データ書込部112は、それぞれのストリームに応じた書き込み処理を行う。
The separation
例えば、分離データ書込部112は、通常ストリームに対しては、図5で示すように、全てのハイブリッドノード110とストレージノード120が書き込み対象となる書き込み処理を行う。例えば、分離データ書込部112は、通常ストリームのデータを複数のブロックデータに分割して、分割したブロックデータについて、ブロックデータのデータ内容を代表する固有のハッシュ値を算出する。具体的には、例えば、分離データ書込部112は、予め設定されたハッシュ関数(例えば、SHA−2などの暗号学的ハッシュ関数)を用いて、ブロックデータのデータ内容からハッシュ値を算出する。そして、分離データ書込部112は、算出したハッシュ値と、ストレージシステム100に格納されたブロックデータを示すハッシュ情報とに基づいて、ハッシュ値算出元のブロックデータがストレージシステム100に既に格納されているか否か調べる。例えば、算出したハッシュ値が上述したハッシュ情報に含まれる場合、分離データ書込部112は、同一内容のブロックデータをストレージシステム100が既に格納していると判断する。この場合、分離データ書込部112は、ストレージシステム100が既に格納しているブロックデータの新たな書き込みは行わない。一方、算出したハッシュ値が上述したハッシュ情報に含まれない場合、分離データ書込部112は、同一内容のブロックデータはストレージシステム100に格納していないと判断する。この場合、分離データ書込部112は、ブロックデータをハイブリッドノード110とストレージノード120のいずれかに書き込む。例えば、このような処理により、分離データ書込部112は、通常ストリームを分割したブロックデータをハイブリッドノード110とストレージノード120に分散させて書き込む。その後、分離データ書込部112は、書き込んだブロックデータのハッシュ値と、ブロックデータの書き込み位置とを示す情報を関連付けて、ハッシュ情報として管理する。
For example, the separated
なお、分離データ書込部112は、ブロックデータをさらに複数のフラグメントデータに分割し、分割したフラグメントデータをハイブリッドノード110とストレージノード120に分散して書き込むよう構成しても構わない。また、分離データ書込部112は、ブロックデータやフラグメントデータに、復元処理用の冗長データを付与して書き込む処理を行うよう構成しても構わない。
The separated
また、例えば、分離データ書込部112は、図6で示すように、低遅延ストリーム(低遅延ストリーム(1)と低遅延ストリーム(2))に格納されたデータを応答時間優先ブロックとして分割する。そして、分離データ書込部112は、分割した応答時間優先ブロックをファイルI/O処理機能を有する全てのノード(つまり、ストレージシステム100が有する全てのハイブリッドノード110)の記憶装置116にコピーする。このように、分離データ書込部112は、低遅延ストリームに書かれたデータを全てのハイブリッドノード110が有するように書き込み処理を行う。なお、分離データ書込部112は、通常ストリームの場合と同様、低遅延ストリームの場合も重複判定処理を行った後、重複しない応答時間優先ブロックを全てのハイブリッドノード110にコピーするよう構成しても構わない。
Further, for example, as shown in FIG. 6, the separated
以上のように、分離データ書込部112は、ストリームごとに異なる方法で書き込み処理を行う。換言すると、分離データ書込部112は、書き込み対象のファイルのうち通常ストリームのデータを、一般的な重複排除処理の場合と同様に、ハイブリッドノード10やストレージノード20に分散させて書き込む。また、分離データ書込部112は、書き込み対象のファイルのうち低遅延ストリームのデータを、記憶装置116に格納するとともに、他のハイブリッドノード110へコピーする。このような書き込み処理の結果として、通常ストリームのデータは、ハイブリッドノード110やストレージノード120に分散して書き込まれることになる。一方、低遅延ストリームのデータは、全てのハイブリッドノード110が有することになる。
As described above, the separated
解放部113は、例えば、予め定められた周期ごとに、記憶装置116に格納されたデータ(ブロックデータ、応答時間優先ブロック)を削除する。例えば、解放部113は、記憶装置116に格納されたデータのうち、ハイブリッドノード110に格納中のどのファイルも参照していないデータを削除する。
For example, the
また、解放部113は、予め定められた閾値(値は任意で構わない)と記憶装置116の空き容量を示す値とを比較する。そして、上述したデータを削除したにもかかわらず記憶装置116の空き容量を示す値が閾値よりも小さい場合、解放部113は、記憶装置116に格納された応答時間優先ブロックのうち、予め定められた一定期間(任意の期間を設定して構わない)参照のない応答時間優先ブロックを削除する。このような処理により、ハイブリッドノード110ごとに、一定期間アクセスがなかったファイルの応答時間優先ブロックのコピーが削除されることになる。
Further, the
なお、解放部113は、予め定められた冗長度と、空き容量を示す値と、閾値と、に基づいて、応答時間優先ブロックを削除するか否か判断するよう構成しても構わない。また、例えば、解放部113は、削除の結果、冗長度が規定値よりも下回る場合、削除対象の応答時間優先ブロックのコピーをリカバリ用のパリティデータに置き換えるよう構成しても構わない。
The
分離データ読出部114は、ファイルの読み出し要求を業務システム200から受信すると、読み出し要求のあったファイル名をもとに、読み出し対象のデータを特定する。そして、分離データ読出部114は、記憶するハッシュ情報に基づいて、読み出し対象のデータの格納位置を特定し、各特定した位置から読み出し対象のデータを取得する。
When the separated
分離データ読出部114は、例えば、読み出し対象のストリームに応じた読み出しを行う。例えば、図7で示すように、分離データ読出部114は、通常ストリームを通常のリード要求で読み出す一方で、低遅延ストリームなどをプライオリティリード要求で読み出す。
The separated
上述したように、通常ストリームのデータはハイブリッドノード110とストレージノード120に分散して格納されている。そのため、分離データ読出部114は、通常ストリームのデータを読み出す場合、ハイブリッドノード110とストレージノード120のそれぞれから必要なデータを読み出す。一方、図8で示すように、低遅延ストリームのデータは、全てのハイブリッドノード110が有している。つまり、ファイルの読み出し要求を処理するハイブリッドノード110は、原則として、自身が有する記憶装置116に低遅延ストリームのデータを有している。そこで、分離データ読出部114は、自身が有する記憶装置116から低遅延ストリームのデータを読み出す。これにより、低遅延ストリームのデータを読み出す際のノード間データ移動のコストを無くすことが可能となる。
As described above, the data of the normal stream is distributed and stored in the
分離データ読出部114により各種データを読み出した後、分離データ関連付け部115は、2つに分離したデータの位置を示すデータに基づいて、各種データを結合する。これにより、分離データ関連付け部115は、分離前の元のデータであるファイルを復元する。その後、ハイブリッドノード110は、復元したファイルを業務システム200に返却する。これにより、業務システム200は、データが分離され格納されていることを意識せずにファイルを参照することが出来る。
After reading various data by the separated
なお、分離データ読出部114は、リード要求を保持するキューを2種類有している。図9を参照すると、分離データ読出部114は、通常リード処理キューとプライオリティリード処理キューの2つのキューを有している。例えば、分離データ読出部114は、リード対象のブロックの特性と、ブロックのキャッシュ状態に応じて、通常リード処理キューとプライオリティリード処理キューの使い分けを行う。例えば、分離データ読出部114は、通常ストリームを通常のリード要求で読み出す場合、リード要求を通常リード処理キューに格納する。一方、分離データ読出部114は、低遅延ストリームをプライオリティリード要求で読み出す場合などにおいて、リード要求をプライオリティリード処理キューに格納する。例えば、分離データ読出部114は、低遅延ストリームに属するデータブロック(応答時間優先ブロック)を読み出す場合、Btreeなどのファイルシステムのメタデータを読み出す場合、リードI/O範囲の未キャッシュ状態のデータブロックを読み出す場合、などにおいて、リード要求をプライオリティリード処理キューに格納することが出来る。
The separated
通常リード処理キューとプライオリティリード処理キューのそれぞれにリード要求が格納されている場合、図9で示すように、データの読み出しは、プライオリティリード処理キューの方から優先的に実行する。例えば、図9で示す場合、分離データ読出部114は、プライオリティリード処理キューに格納された1、4、nのブロックを読み出した後、通常リード処理キューに格納された処理を実行する。また、同一のブロックに対して読み出し要求が通常リード処理キューとプライオリティリード処理キューの両方に格納されることがある。この場合、分離データ読出部114は、一方のキューから取り出したリード要求を処理したタイミングで他方のリード要求を削除する。例えば、図9の場合、プライオリティリード処理キューに格納されたnのブロックのリード要求を処理したタイミングで、分離データ読出部114は、通常リード処理キューに格納されたnのブロックのリード要求を削除する。
When a read request is stored in each of the normal read processing queue and the priority read processing queue, as shown in FIG. 9, data reading is preferentially executed from the priority read processing queue. For example, in the case shown in FIG. 9, the separated
記憶装置116は、ハードディスクなどの記憶装置である。記憶装置116には、ブロックデータや応答時間優先ブロックなどが格納される。
The
以上が、ハイブリッドノード110の構成の一例である。
The above is an example of the configuration of the
ストレージノード120は、重複排除した状態でブロックデータを格納する記憶装置121を有する。ストレージノード120が有する記憶装置121には、ハイブリッドノード110からの要求に応じて、ブロックデータ、ブロックデータや応答時間優先ブロックのパリティデータ、などを格納することが出来る。また、ストレージノード120は、ハイブリッドノード110からの要求に応じて、記憶装置121に格納されたブロックデータ、ブロックデータや応答時間優先ブロックのパリティデータなどをハイブリッドノード110に対して送信する。
The
なお、ストレージノード120は、格納対象のブロックデータなどが記憶装置121に格納されているか否か確認する重複確認機能を有することが出来る。ストレージノード120は、重複確認を行った上で、格納対象のブロックデータなどを記憶装置121に格納するように構成しても構わない。
The
業務システム200は、ハイブリッドノード110に対して、ファイルの書き込み要求や読み出し要求を送信する情報処理装置である。なお、本実施形態においては、ファイルの書き込み要求や読み出し要求を実行するハイブリッドノード110の選択方法については特に限定しない。業務システム200が送信したファイルの書き込み要求や読み出し要求は、任意の方法でストレージシステム100が有するハイブリッドノード110のいずれかに割り振ることが出来る。
The
続いて、図10から図12までを参照して、ストレージシステム100の動作の一例について説明する。まず、図10を参照して、業務システム200からファイルの書き込み要求を受信した際のストレージシステム100の動作の一例について説明する。
Subsequently, an example of the operation of the
ハイブリッドノード11は、ファイルの書き込み要求を業務システム200から受信する。図10を参照すると、データ分離部111は、書き込み対象のファイルを構成する分離前データを、データの特性に応じて分離する。例えば、データ分離部111は、分離前データを、リード時に即時応答が必要であるなど読み出しを優先するデータと、それ以外のデータと、に分離する。また、データ分離部111は、読み出しを優先するデータと、それ以外のデータと、の2つに分離したデータの位置情報を示すデータを生成する。そして、データ分離部111は、分離・生成したそれぞれのデータをそれぞれ別のストリームに格納する(ステップS101)。具体的には、データ分離部111は、分離前データを分離したデータのうち読み出しを優先するデータを低遅延ストリーム(1)に格納するとともに、2つに分離したデータの位置情報を示すデータを低遅延ストリーム(2)に格納する。また、データ分離部111は、分離前データを分離したデータのうち読み出しを優先するデータ以外のデータを通常ストリームに格納する。
The hybrid node 11 receives a file write request from the
分離データ書込部112は、低遅延ストリーム(低遅延ストリーム(1)と低遅延ストリーム(2))に格納されたデータを応答時間優先ブロックとして分割する。そして、分離データ書込部112は、分割した応答時間優先ブロックをファイルI/O処理機能を有する全てのノード(つまり、ストレージシステム100が有する全てのハイブリッドノード110)の記憶装置116にコピーする(ステップS102)。
The separated
また、分離データ書込部112は、通常ストリームに格納されたデータをブロックデータに分割する。そして、分離データ書込部112は、重複排除処理したうえで、必要なブロックデータをハイブリッドノード110とストレージノード120に分散して格納する(ステップS103)。
Further, the separated
例えば、以上のように、分離データ書込部112は、低遅延ストリームと通常ストリームで異なる方法を用いでデータを格納する。なお、ステップS102とステップS103の処理はどちらの処理を先に実行しても構わないし、並行して実行しても構わない。
For example, as described above, the separate
続いて、図11を参照して、業務システム200からファイルの読み出し要求を受信した際のストレージシステム100の動作の一例について説明する。
Subsequently, an example of the operation of the
ハイブリッドノード11は、ファイルの読み出し要求を業務システム200から受信する。図11を参照すると、分離データ読出部114は、ファイルの読み出し要求を業務システム200から受信すると、読み出し要求のあったファイル名をもとに、読み出し対象のデータを特定する。そして、分離データ読出部114は、記憶するハッシュ情報に基づいて、読み出し対象のデータの格納位置を特定し、各特定した位置から読み出し対象のデータを取得する(ステップS201)。例えば、分離データ読出部114は、読み出し対象のブロックの特性などに応じて、通常リード処理キューとプライオリティリード処理キューとを使い分けて、データの読み出しを行う。
The hybrid node 11 receives a file read request from the
分離データ関連付け部115は、2つに分離したデータの位置を示すデータに基づいて、各種データを結合する(ステップS202)。これにより、分離データ関連付け部115は、分離前の元のデータであるファイルを復元する。その後、ハイブリッドノード110は、復元したファイルを業務システム200に返却する。
The separated
続いて、通常リード処理キューとプライオリティリード処理キューとの使い分けについて、図12を参照して説明する。 Subsequently, the proper use of the normal read processing queue and the priority read processing queue will be described with reference to FIG.
図12を参照すると、プライオリティリード処理キューにリード要求が格納されている場合(ステップS301、Yes)、分離データ読出部114は、プライオリティリード処理キューに格納されたリード要求を実行する(ステップS302)。一方、プライオリティリード処理キューにリード要求が格納されていない場合(ステップS301、No)、分離データ読出部114は、通常リード処理キューに格納されたリード要求を実行する(ステップS303)。
Referring to FIG. 12, when the read request is stored in the priority read processing queue (step S301, Yes), the separated
例えば、以上のように、分離データ読出部114は、プライオリティリード処理キューに格納されたリード要求を優先的に実行する。
For example, as described above, the separated
このように、ハイブリッドノード110は、データ分離部111と分離データ書込部112とを有している。このような構成により、分離データ書込部112は、データ分離部111がデータの特性に応じて分離した結果に応じて、データを格納することが出来る。その結果、応答時間が短くなるようにデータをストレージシステム100に格納することが可能となる。これにより、必要なデータブロックを必要なときに取り出せないおそれがある、という課題を解決することが出来る。
As described above, the
また、本実施形態によると、分離データ書込部112は、低遅延ストリームに格納されたデータを分割した応答時間優先ブロックを全てのハイブリッドノード110の記憶装置116にコピーするよう構成されている。これにより、ファイルの読み出し要求を実行するハイブリッドノード110の記憶装置116に読み出し対象の応答時間優先ブロックが格納されていることが保証される。その結果、応答時間優先ブロックを読み出す際にノード間でデータ転送する必要を無くすことが可能となり、読み出しにかかる時間・コストを低減させることが可能となる。また、コピーはハイブリッドノード110に限定され、ストレージノード120には行われない。そのため、コピーに伴うデータ量の増大も、ストレージノード120を含む全体にコピーする場合と比較して、抑えることが出来る。
Further, according to the present embodiment, the separated
また、ハイブリッドノード110は、解放部113を有している。このような構成により、解放部113は、記憶装置116の空き容量を示す値が閾値よりも小さい場合、記憶装置116に格納された応答時間優先ブロックのうち、予め定められた一定期間参照のない応答時間優先ブロックを削除またはパリティデータに置き換えることが出来る。これにより、読み出される可能性の低い応答時間優先ブロックを格納することにより記憶装置116の空き容量が低減することを抑制することが可能となる。つまり、記憶装置116を効率的に使用することが可能となる。
Further, the
また、ハイブリッドノード110は、分離データ読出部114を有している。また、分離データ読出部114は、通常リード処理キューとプライオリティリード処理キューを使い分けるよう構成されている。このような構成により、分離データ読出部114は、プライオリティリード処理キューに格納する低遅延ストリームを優先的に読み出すことが可能となる。その結果、優先的に読み出すことが必要なデータを優先的に読み出すことが可能となり、必要なデータブロックを必要なときに取り出せないおそれがある、という課題を解決することが可能となる。
Further, the
[第2の実施形態]
次に、図13を参照して、本発明の第2の実施形態について説明する。第3の実施形態では、情報処理装置40の構成の概要について説明する。
[Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to FIG. In the third embodiment, the outline of the configuration of the
情報処理装置40は、ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する。図13は、情報処理装置40の構成の一例を示している。図13を参照すると、情報処理装置40は、例えば、データ分離部41と書込部42とを有している。
The
例えば、情報処理装置40は、CPUなどの演算装置と記憶装置とを有している。例えば、情報処理装置40は、記憶装置に格納されたプログラムを演算装置が実行することで、上述した各処理部を実現する。
For example, the
データ分離部41は、データの特性に応じて格納対象のファイルを構成するデータを分離する。
The
書込部42は、分離の結果に応じて、分離したデータを格納する。
The
このように、情報処理装置40は、データ分離部41と書込部42とを有している。このような構成により、書込部42は、データ分離部41による分離の結果に応じて、分離したデータを格納することが出来る。その結果、応答時間が短くなるようにデータを格納することが可能となる。これにより、必要なデータブロックを必要なときに取り出せないおそれがある、という課題を解決することが出来る。
As described above, the
また、上述した情報処理装置40は、当該情報処理装置40に所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置40に、データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部41と、分離の結果に応じて、分離したデータを格納する書込部42と、を実現するためのプログラムである。
Further, the
また、上述した情報処理装置40により実行される情報処理方法は、ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置が行う情報処理方法であって、データの特性に応じて格納対象のファイルを構成するデータを分離し、分離の結果に応じて、分離したデータを格納する、という方法である。
Further, the information processing method executed by the above-mentioned
上述した構成を有する、プログラム、又は、情報処理方法、の発明であっても、上記情報処理装置40と同様の作用・効果を有するために、上述した本発明の目的を達成することが出来る。
Even the invention of the program or the information processing method having the above-mentioned configuration can achieve the above-mentioned object of the present invention because it has the same action and effect as the above-mentioned
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理方法などの概略を説明する。但し、本発明は、以下の構成に限定されない。
<Additional notes>
Part or all of the above embodiments may also be described as in the appendix below. The outline of the information processing method and the like in the present invention will be described below. However, the present invention is not limited to the following configurations.
(付記1)
ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置が行う情報処理方法であって、
データの特性に応じて格納対象のファイルを構成するデータを分離し、
分離の結果に応じて、分離したデータを格納する
情報処理方法。
(付記2)
付記1に記載に情報処理方法であって、
読み出しを優先するか否かを示す前記データの特性に応じて前記ファイルを構成するデータを分離する
情報処理方法。
(付記3)
付記1または付記2に記載の情報処理方法であって、
前記データの特性に応じて前記ファイルを構成するデータを分離した後、分離したそれぞれのデータを異なるストリームに格納し、
前記ストリームごとに異なる方法で前記ストリームのデータを格納する
情報処理方法。
(付記4)
付記3に記載の情報処理方法であって、
前記情報処理装置は、格納対象のデータを格納する機能を有するストレージ装置と、他の情報処理装置と、接続されており、
前記データの特性が所定のストリームのデータを他の前記情報処理装置にコピーする
情報処理方法。
(付記5)
付記1から付記4までのいずれか1項に記載の情報処理方法であって、
記憶装置の空き容量に応じて格納されたデータを解放する
情報処理方法。
(付記6)
付記1から付記5までのいずれか1項に記載の情報処理方法であって、
格納したデータを読み出す要求を、異なる特徴を有する2種類のキューのいずれかに格納する
情報処理方法。
(付記7)
付記6に記載の情報処理方法であって、
前記2種類のキューのうち予め定められたキューに処理が格納されている場合、当該予め定められたキューに格納されている処理を他方のキューに格納された処理よりも優先的に実行する
情報処理方法。
(付記8)
付記6又は付記7のいずれか1項に記載の情報処理方法であって、
読み出すデータの特性に応じて、当該データを読み出す要求を前記2種類のキューに格納する
情報処理方法。
(付記9)
ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置であって、
データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部と、
分離の結果に応じて、分離したデータを格納する書込部と、
を有する
情報処理装置。
(付記10)
ファイルの書き込み要求や読み出し要求を処理する機能を有するとともに、格納対象のデータを格納する機能を有する情報処理装置に、
データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部と、
分離の結果に応じて、分離したデータを格納する書込部と、
を実現するためのプログラム。
(Appendix 1)
It is an information processing method performed by an information processing device that has a function of processing a file write request and a file read request and also has a function of storing data to be stored.
The data that makes up the file to be stored is separated according to the characteristics of the data.
An information processing method that stores separated data according to the result of separation.
(Appendix 2)
The information processing method described in
An information processing method that separates the data constituting the file according to the characteristics of the data indicating whether or not to give priority to reading.
(Appendix 3)
The information processing method according to
After separating the data constituting the file according to the characteristics of the data, each separated data is stored in a different stream.
An information processing method for storing data in the stream in a different way for each stream.
(Appendix 4)
The information processing method described in
The information processing device is connected to a storage device having a function of storing data to be stored and another information processing device.
An information processing method for copying data in a stream having the characteristics of the data to another information processing device.
(Appendix 5)
The information processing method according to any one of
An information processing method that releases stored data according to the free space of the storage device.
(Appendix 6)
The information processing method according to any one of
An information processing method in which a request for reading stored data is stored in one of two types of queues having different characteristics.
(Appendix 7)
The information processing method described in Appendix 6
Information that, when a process is stored in a predetermined queue of the above two types of queues, the process stored in the predetermined queue is executed with priority over the process stored in the other queue. Processing method.
(Appendix 8)
The information processing method according to any one of Supplementary note 6 or Supplementary note 7.
An information processing method for storing a request for reading the data in the two types of queues according to the characteristics of the data to be read.
(Appendix 9)
An information processing device that has a function of processing a file write request and a file read request and also has a function of storing data to be stored.
A data separator that separates the data that makes up the file to be stored according to the characteristics of the data,
A writing unit that stores the separated data according to the result of the separation,
Information processing device with.
(Appendix 10)
An information processing device that has a function to process file write requests and read requests and also has a function to store data to be stored.
A data separator that separates the data that makes up the file to be stored according to the characteristics of the data,
A writing unit that stores the separated data according to the result of the separation,
A program to realize.
なお、上記各実施形態及び付記において記載したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されていたりする。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。 The programs described in each of the above embodiments and appendices may be stored in a storage device or recorded in 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 above with reference to each of the above embodiments, the present invention is not limited to the above-described embodiments. Various changes that can be understood by those skilled in the art can be made to the structure and details of the present invention within the scope of the present invention.
100 ストレージシステム
110 ハイブリッドノード
111 データ分離部
112 分離データ書込部
113 解放部
114 分離データ読出部
115 分離データ関連付け部
116 記憶装置
120 ストレージノード
121 記憶装置
200 業務システム
31 外部NIC
32 内部NIC
40 情報処理装置
41 データ分離部
42 書込部
100
32 Internal NIC
40
Claims (10)
データの特性に応じて格納対象のファイルを構成するデータを分離し、
分離の結果に応じて、分離したデータを格納する
情報処理方法。 It is an information processing method performed by an information processing device that has a function of processing a file write request and a file read request and also has a function of storing data to be stored.
The data that makes up the file to be stored is separated according to the characteristics of the data.
An information processing method that stores separated data according to the result of separation.
読み出しを優先するか否かを示す前記データの特性に応じて前記ファイルを構成するデータを分離する
情報処理方法。 The information processing method according to claim 1.
An information processing method that separates the data constituting the file according to the characteristics of the data indicating whether or not to give priority to reading.
前記データの特性に応じて前記ファイルを構成するデータを分離した後、分離したそれぞれのデータを異なるストリームに格納し、
前記ストリームごとに異なる方法で前記ストリームのデータを格納する
情報処理方法。 The information processing method according to claim 1 or 2.
After separating the data constituting the file according to the characteristics of the data, each separated data is stored in a different stream.
An information processing method for storing data in the stream in a different way for each stream.
前記情報処理装置は、格納対象のデータを格納する機能を有するストレージ装置と、他の情報処理装置と、接続されており、
前記データの特性が所定の前記ストリームのデータを他の前記情報処理装置にコピーする
情報処理方法。 The information processing method according to claim 3.
The information processing device is connected to a storage device having a function of storing data to be stored and another information processing device.
An information processing method for copying the data of the stream whose characteristics of the data are predetermined to the other information processing apparatus.
記憶装置の空き容量に応じて格納されたデータを解放する
情報処理方法。 The information processing method according to any one of claims 1 to 4.
An information processing method that releases stored data according to the free space of the storage device.
格納したデータを読み出す要求を、異なる特徴を有する2種類のキューのいずれかに格納する
情報処理方法。 The information processing method according to any one of claims 1 to 5.
An information processing method in which a request for reading stored data is stored in one of two types of queues having different characteristics.
前記2種類のキューのうち予め定められたキューに処理が格納されている場合、当該予め定められたキューに格納されている処理を他方のキューに格納された処理よりも優先的に実行する
情報処理方法。 The information processing method according to claim 6.
Information that, when processing is stored in a predetermined queue of the above two types of queues, the processing stored in the predetermined queue is executed with priority over the processing stored in the other queue. Processing method.
読み出すデータの特性に応じて、当該データを読み出す要求を前記2種類のキューのうちのいずれかに格納する
情報処理方法。 The information processing method according to any one of claims 6 and 7.
An information processing method for storing a request for reading the data in one of the two types of queues according to the characteristics of the data to be read.
データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部と、
分離の結果に応じて、分離したデータを格納する書込部と、
を有する
情報処理装置。 An information processing device that has a function of processing a file write request and a file read request and also has a function of storing data to be stored.
A data separator that separates the data that makes up the file to be stored according to the characteristics of the data,
A writing unit that stores the separated data according to the result of the separation,
Information processing device with.
データの特性に応じて格納対象のファイルを構成するデータを分離するデータ分離部と、
分離の結果に応じて、分離したデータを格納する書込部と、
を実現するためのプログラム。
An information processing device that has a function to process file write requests and read requests and also has a function to store data to be stored.
A data separator that separates the data that makes up the file to be stored according to the characteristics of the data,
A writing unit that stores the separated data according to the result of the separation,
A program to realize.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019037817A JP7456601B2 (en) | 2019-03-01 | 2019-03-01 | Information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019037817A JP7456601B2 (en) | 2019-03-01 | 2019-03-01 | Information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020140647A true JP2020140647A (en) | 2020-09-03 |
JP7456601B2 JP7456601B2 (en) | 2024-03-27 |
Family
ID=72265021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019037817A Active JP7456601B2 (en) | 2019-03-01 | 2019-03-01 | Information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7456601B2 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05216724A (en) * | 1992-02-04 | 1993-08-27 | Fuji Xerox Co Ltd | File memory device |
JPH09247645A (en) * | 1996-03-12 | 1997-09-19 | Toshiba Corp | Video data management device for video server |
JP2001195195A (en) * | 2000-01-14 | 2001-07-19 | Matsushita Electric Ind Co Ltd | Data transform device, data inverse transform device and auxiliary data file generator |
JP2008234258A (en) * | 2007-03-20 | 2008-10-02 | Fujitsu Ltd | Access control device and access control method |
JP2010198424A (en) * | 2009-02-26 | 2010-09-09 | Konica Minolta Business Technologies Inc | Storage device and storage-controlling method |
WO2011099099A1 (en) * | 2010-02-10 | 2011-08-18 | 日本電気株式会社 | Storage device |
-
2019
- 2019-03-01 JP JP2019037817A patent/JP7456601B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05216724A (en) * | 1992-02-04 | 1993-08-27 | Fuji Xerox Co Ltd | File memory device |
JPH09247645A (en) * | 1996-03-12 | 1997-09-19 | Toshiba Corp | Video data management device for video server |
JP2001195195A (en) * | 2000-01-14 | 2001-07-19 | Matsushita Electric Ind Co Ltd | Data transform device, data inverse transform device and auxiliary data file generator |
JP2008234258A (en) * | 2007-03-20 | 2008-10-02 | Fujitsu Ltd | Access control device and access control method |
JP2010198424A (en) * | 2009-02-26 | 2010-09-09 | Konica Minolta Business Technologies Inc | Storage device and storage-controlling method |
WO2011099099A1 (en) * | 2010-02-10 | 2011-08-18 | 日本電気株式会社 | Storage device |
Also Published As
Publication number | Publication date |
---|---|
JP7456601B2 (en) | 2024-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10042751B1 (en) | Method and system for multi-tier all-flash array | |
US8239621B2 (en) | Distributed data storage system, data distribution method, and apparatus and program to be used for the same | |
US20230013281A1 (en) | Storage space optimization in a system with varying data redundancy schemes | |
WO2017119091A1 (en) | Distrubuted storage system, data storage method, and software program | |
US9367256B2 (en) | Storage system having defragmentation processing function | |
TW201933121A (en) | Data storage system and method for writing object of key-value pair | |
US20190042134A1 (en) | Storage control apparatus and deduplication method | |
WO2014153931A1 (en) | File storage method and device, access client and metadata server system | |
JP6406283B2 (en) | Storage apparatus and storage method | |
JPWO2011099099A1 (en) | Storage device | |
JP5459388B2 (en) | Storage device | |
JP7456601B2 (en) | Information processing method | |
US9575679B2 (en) | Storage system in which connected data is divided | |
JP2017142664A (en) | Data processing apparatus, data processing system, data processing method, and data processing program | |
JP6337982B1 (en) | Storage system | |
JP7306665B2 (en) | Storage device, data migration method, program | |
CN110196682B (en) | Data management method and device, computing equipment and storage medium | |
JP5751041B2 (en) | Storage device, storage method and program | |
JP6842064B2 (en) | Storage device, program, information processing method | |
JP5688676B2 (en) | Storage device and method for improving use efficiency of storage resource of storage device | |
KR102599116B1 (en) | Data input and output method using storage node based key-value srotre | |
JP5514245B2 (en) | Video distribution server and video distribution method | |
JP2018142176A (en) | Storage device, program, information processing method | |
JP2018169842A (en) | Hierarchical storage management unit, hierarchical storage system, data management method and program | |
JP2021105964A (en) | Information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220202 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230131 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230322 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230711 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230906 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240131 |
|
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: 20240213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7456601 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |