JP2019159416A - Data management device, file system, data management method, and program - Google Patents
Data management device, file system, data management method, and program Download PDFInfo
- Publication number
- JP2019159416A JP2019159416A JP2018041161A JP2018041161A JP2019159416A JP 2019159416 A JP2019159416 A JP 2019159416A JP 2018041161 A JP2018041161 A JP 2018041161A JP 2018041161 A JP2018041161 A JP 2018041161A JP 2019159416 A JP2019159416 A JP 2019159416A
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- blocks
- data management
- memory
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、ファイルシステムで扱われるデータの管理を行うための、データ管理装置、それを用いたファイルシステム、及びデータ管理方法に関し、更には、これらを実現するためのプログラムに関する。 The present invention relates to a data management apparatus for managing data handled by a file system, a file system using the data management method, and a data management method, and further to a program for realizing these.
近年、コンピュータネットワークの発展により、企業等においては、複数の端末装置によるファイルの共有を可能にするファイルサーバが利用されている。ファイルサーバの1つとして、例えば、ネットワークアタッチストレージ(Network Attached Storage:以下「NAS」と表記する)が知られている(例えば、特許文献1参照)。 In recent years, with the development of computer networks, file servers that allow files to be shared by a plurality of terminal devices are used in companies and the like. As one of the file servers, for example, network attached storage (hereinafter referred to as “NAS”) is known (for example, see Patent Document 1).
一般に、NASは、NFS(Network File System)等のファイルシステムを備えており、ユーザは、端末装置を介して、NASに格納されているデータを、それがネットワーク上にあることを意識することなく、利用することができる。 In general, a NAS has a file system such as NFS (Network File System), and a user can read data stored in the NAS via a terminal device without being aware that the data is on the network. Can be used.
また、通常、NASは、ファイバーチャネルを介して1又は2以上のストレージ装置に接続される。更に、ストレージ装置は、複数台のNASによって共用される。加えて、NASには、停電時にストレージ装置への書き込みが完了していないデータを保持するため、不揮発性メモリ(NVRAM:Non-Volatile Random Access Memory)も備えられている(例えば、特許文献2参照)。 Usually, the NAS is connected to one or more storage apparatuses via a fiber channel. Furthermore, the storage device is shared by a plurality of NAS. In addition, the NAS is also provided with a non-volatile random access memory (NVRAM) in order to hold data that has not been written to the storage device during a power failure (see, for example, Patent Document 2). ).
ところで、NASは、通常、端末装置からデータの書き込み要求が発行されると、要求されたデータをストレージ装置に書き込み、その後、書き込みの完了を端末装置に通知する。このため、書き込み要求が発行されてから、書き込みの完了が通知されるまでの時間が長く、端末装置に対するレスポンスが遅いという問題がある。 By the way, normally, when a data write request is issued from the terminal device, the NAS writes the requested data to the storage device, and then notifies the terminal device of the completion of the write. For this reason, there is a problem that it takes a long time from when a write request is issued until the completion of writing is notified, and the response to the terminal device is slow.
このような問題を解消するため、NASでは、NVRAMに、データを書き込んだ時点で、端末装置に書き込みの完了を行うことも行われている。但し、この場合は、NASが障害によって停止してしまうと、ストレージ装置に書き込む前に、NVRAMのデータが失われてしまう。 In order to solve such a problem, in the NAS, when data is written in the NVRAM, the writing to the terminal device is also completed. However, in this case, if the NAS stops due to a failure, the data in the NVRAM is lost before writing to the storage device.
このため、複数のNASを用い、各NASが、隣接する1つのNASのNVRAMにも、同じデータを書き込むようにする、ファイルシステムが提案されている。このファイルシステムでは、データの書き込み元のNASが停止すると、データの書き込み先のNASが、データをストレージ装置に書き込むので、データの安全性の担保が図られる。 For this reason, a file system has been proposed in which a plurality of NAS is used, and each NAS writes the same data to the NVRAM of one adjacent NAS. In this file system, when the data writing source NAS stops, the data writing destination NAS writes the data to the storage device, so that the security of the data is ensured.
しかしながら、上記のファイルシステムでは、データの書き込み先(フェイルオーバー先)となるNASは1つであるため、データの書き込み元のNASが停止した際に、データの書き込み先のNASも停止してしまった場合に、データの安全性の担保が困難となる。 However, in the above file system, there is only one NAS as the data write destination (failover destination). Therefore, when the data write source NAS stops, the data write destination NAS also stops. In such a case, it is difficult to ensure the security of data.
また、上記のファイルシステムでは、データの書き込み元のNASが停止してしまった場合、NVRAMへの書き込みが完了した時点で、データの保全性を確保しつつ、端末装置に対して、書き込みの完了を通知できるNASは存在していない。更に、データ保全性を確保するためには、データのディスクへの書き込み完了が必要となる。この結果、このような場合、端末装置に対するレスポンスが遅延してしまう。 Further, in the above file system, when the data writing source NAS is stopped, when the writing to the NVRAM is completed, the writing to the terminal device is completed while ensuring the integrity of the data. There is no NAS that can notify. Furthermore, in order to ensure data integrity, it is necessary to complete the writing of data to the disk. As a result, in such a case, the response to the terminal device is delayed.
これは、データの保全性を確保するためには、書き込み完了を端末装置に返却する前に、ディスクにデータが書き込まれる事を保証する必要があるからである。この点について、以下により詳細に説明する。 This is because in order to ensure the integrity of data, it is necessary to ensure that data is written to the disk before the completion of writing is returned to the terminal device. This point will be described in more detail below.
まず、書き込み元のNASがダウンしても、NVRAMにデータを書き込んだ時点で、端末装置に書き込み完了を返却するためには、同じデータをディスクに書き込むための手段が確保されている必要がある。そして、通常の冗長構成を有するシステムでは、フェイルオーバー先となるNASは、NVRAMに同じデータを書き込んでおくという動作を行っていることから、上記手段は確保されているとも考えられる。 First, even if the write-source NAS is down, a means for writing the same data to the disk needs to be secured in order to return the write completion to the terminal device when the data is written to the NVRAM. . In a system having a normal redundant configuration, the above means can be considered to be secured because the failover destination NAS performs the operation of writing the same data in the NVRAM.
しかしながら、冗長構成を有するシステムでは、一方のNASがダウンしてしまうと、データ保全の視点から、もう一方のNASが、NVRAMにデータを書き込んだ時点で、端末装置に、書き込み完了の通知を返却することはできないようになっている。このため、上述したように、端末装置に対するレスポンスが遅延する。 However, in a system with a redundant configuration, if one NAS goes down, from the viewpoint of data integrity, when the other NAS writes data to NVRAM, a notification of write completion is returned to the terminal device. You can't do that. For this reason, as described above, the response to the terminal device is delayed.
本発明の目的の一例は、上記問題を解消し、ファイルシステムにおける、端末装置へのレスポンスの遅延を抑制しつつ、データの保全性の確保を図り得る、データ管理装置、ファイルシステム、データ管理方法、及びプログラムを提供することにある。 An example of an object of the present invention is to provide a data management device, a file system, and a data management method capable of solving the above-described problems and ensuring data integrity while suppressing delay in response to a terminal device in a file system. And providing a program.
上記目的を達成するため、本発明の一側面におけるデータ管理装置は、3台以上のファイルサーバを備えるファイルシステムにおいて、データを管理するための装置であって、
前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、データ検知部と、
書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ストライピング処理部と、
生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、分散処理部と、
を備えている、
ことを特徴とする。
In order to achieve the above object, a data management device according to one aspect of the present invention is a device for managing data in a file system including three or more file servers,
In any of the file servers, when data is written in a memory provided in the file server, a data detection unit that detects the fact,
Striping is performed on the data detected to be written, and three or more blocks are generated according to the number of the file servers, and a striping processing unit,
A distributed processing unit for storing the generated block in a distributed manner in the memory of each of the file servers;
With
It is characterized by that.
上記目的を達成するため、本発明の一側面におけるファイルシステムは、3台以上のファイルサーバと、データ管理装置とを備え、
前記データ管理装置は、
前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、データ検知部と、
書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ストライピング処理部と、
生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、分散処理部と、
を備えている、
ことを特徴とする。
In order to achieve the above object, a file system according to an aspect of the present invention includes three or more file servers and a data management device.
The data management device includes:
In any of the file servers, when data is written in a memory provided in the file server, a data detection unit that detects the fact,
Striping is performed on the data detected to be written, and three or more blocks are generated according to the number of the file servers, and a striping processing unit,
A distributed processing unit for storing the generated block in a distributed manner in the memory of each of the file servers;
With
It is characterized by that.
また、上記目的を達成するため、本発明の一側面におけるデータ管理方法は、3台以上のファイルサーバを備えるファイルシステムにおいて、データを管理するための方法であって、
(a)前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、ステップと、
(b)書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ステップと、
(c)生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、ステップと、
を有する、
ことを特徴とする。
In order to achieve the above object, a data management method according to one aspect of the present invention is a method for managing data in a file system including three or more file servers,
(A) detecting data when data is written in a memory provided in the file server in any of the file servers; and
(B) performing striping on the data detected to be written to generate three or more blocks according to the number of the file servers;
(C) distributing and storing the generated block in the memory of each of the file servers;
Having
It is characterized by that.
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、3台以上のファイルサーバを備えるファイルシステムにおいて、コンピュータによって、データを管理するためのプログラムであって、
前記コンピュータに、
(a)前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、ステップと、
(b)書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ステップと、
(c)生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、ステップと、
を実行させる、
ことを特徴とする。
Furthermore, in order to achieve the above object, a program according to one aspect of the present invention is a program for managing data by a computer in a file system including three or more file servers,
In the computer,
(A) detecting data when data is written in a memory provided in the file server in any of the file servers; and
(B) performing striping on the data detected to be written to generate three or more blocks according to the number of the file servers;
(C) distributing and storing the generated block in the memory of each of the file servers;
To execute,
It is characterized by that.
以上のように、本発明によれば、ファイルシステムにおける、端末装置へのレスポンスの遅延を抑制しつつ、データの保全性の確保を図ることができる。 As described above, according to the present invention, it is possible to ensure data integrity while suppressing delay in response to a terminal device in a file system.
(実施の形態)
以下、本発明の実施の形態における、ファイルシステム、データ管理装置、データ管理方法、及びプログラムについて、図1〜図5を参照しながら説明する。
(Embodiment)
Hereinafter, a file system, a data management device, a data management method, and a program according to an embodiment of the present invention will be described with reference to FIGS.
[装置構成]
最初に、本実施の形態におけるデータ管理装置の概略構成について図1を用いて説明する。図1は、本発明の実施の形態におけるデータ管理装置の概略構成を示すブロック図である。
[Device configuration]
First, a schematic configuration of the data management apparatus according to the present embodiment will be described with reference to FIG. FIG. 1 is a block diagram showing a schematic configuration of a data management apparatus according to an embodiment of the present invention.
図1に示す、本実施の形態におけるデータ管理装置10は、3台以上のファイルサーバを備えるファイルシステムにおいて、データを管理するための装置である。図1に示すように、データ管理装置10は、データ検知部11と、ストライピング処理部12と、分散処理部13とを備えている。
A
データ検知部11は、ファイルサーバのいずれかにおいて、このファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する。ストライピング処理部12は、書き込みが検知されたデータに対して、ストライピングを実行して、ファイルサーバの台数に応じて、3つ以上のブロックを生成する。分散処理部13は、生成されたブロックを、ファイルサーバそれぞれのメモリに分散して格納させる。
The
このように、本実施の形態では、特定のファイルサーバのメモリにデータが書き込まれると、このデータは、そのメモリと他のファイルサーバのメモリとに分散して格納される。また、ファイルシステムを構成するファイルサーバは3台以上存在している。つまり、本実施の形態では、ファイルシステムを構成するファイルサーバの各メモリは、RAIDのように機能する。 Thus, in this embodiment, when data is written in the memory of a specific file server, this data is distributed and stored in the memory and the memory of another file server. Further, there are three or more file servers that constitute the file system. That is, in this embodiment, each memory of the file server that constitutes the file system functions like a RAID.
このため、データの書き込み元のファイルサーバ(NAS)が停止してしまった場合でも、一定数のファイルサーバが稼働していれば、データを復元することができるので、データの保全性の確保が図られる。また、データの保全性の確保が図られ、このような場合でも、データがディスクに書き込まれる事が保証されるので、データのディスクへの書き込みの前に、データの書き込みを依頼した端末装置に対してレスポンスを返却することができる。この結果、端末装置へのレスポンスの遅延も抑制される。 For this reason, even if the file server (NAS) from which the data is written is stopped, the data can be restored if a certain number of file servers are operating. Figured. In addition, data integrity is ensured, and even in such a case, it is guaranteed that the data is written to the disk. Therefore, before the data is written to the disk, the terminal device that requested the data writing is requested. A response can be returned. As a result, a delay in response to the terminal device is also suppressed.
続いて、図2を用いて、本実施の形態におけるファイルシステムとデータ管理装置10との構成をより詳細に説明する。図2は、本発明の実施の形態におけるデータ管理装置の具体的構成を示すブロック図である。
Next, the configuration of the file system and the
図2に示すように、本実施の形態では、ファイルシステム100は、5台のファイルサーバ20を備えている。各ファイルサーバ20は、それぞれ、NASであり、互いにネットワーク30を介してデータ通信可能に接続されている。また、各ファイルサーバ20の構成は同一であり、それぞれ、メモリ22を備えている。メモリ22は、具体的には、不揮発性メモリ(NVRAM)である。
As shown in FIG. 2, in the present embodiment, the file system 100 includes five
また、本実施の形態では、データ管理装置10は、ファイルサーバ20毎に、そのオペレーティングシステム(OS:Operating System)21によって、後述するプログラムによって構築されている。なお、図2においては、1つのファイルサーバ20に構築されているデータ管理装置10の構成のみが図示されており、他のファイルサーバ20に構築されているデータ管理装置10の構成は省略されている。
In the present embodiment, the
また、この構成により、本実施の形態では、各データ管理装置10のデータ検知部11は、それを備えるデータ管理装置10を構築しているファイルサーバ20のメモリ22を、検知対象として、データの書き込みを検知する。また、ストライピング処理部12は、それを備えるデータ管理装置10において、データ検知部11がデータの書き込みを検知すると、書き込みが検知されたデータに対してストライピングを実行する。
Also, with this configuration, in the present embodiment, the
更に、本実施の形態では、ストライピング処理部12及び分散処理部13は、RAID2〜6に定義されている記録方式に準拠して、データのストライピング及び分散を行うことができる。この場合、1台のファイルサーバ20が停止しても、2台以上のファイルサ
ーバそれぞれがデータを復元することができるので、データの保全性が確保される。そして、この結果、データのディスクへの書き込みが完了する前に、ファイルシステム100にアクセスしてきた端末装置に対して、レスポンスを返却できる。
Furthermore, in the present embodiment, the
また、ストライピング処理部12及び分散処理部13が、RAID6に定義されている記録方式を採用したとする。この場合は、2台のファイルサーバが停止したとしても、データを復元でき、更に、データのディスクへの書き込みが完了する前に、ファイルシステム100にアクセスしてきた端末装置に対して、レスポンスを返却できる。
Further, it is assumed that the
ここで、図3を用いて、ストライピング処理部12及び分散処理部13の機能についてより詳細に説明する。図3は、本発明の実施の形態におけるデータ管理装置においてストライピング処理部及び分散処理部が実行する処理の具体例を示す図である。
Here, the functions of the
図3の例では、ストライピング処理部12及び分散処理部13は、RAID5に定義されている記録方式に準拠して、データのストライピング及び分散を行っている。また、図3の例では、ファイルサーバ20の台数は5台であるとする。
In the example of FIG. 3, the
具体的には、図3に示すように、データの書き込みが検知されると、ストライピング処理部12は、データを分割して、ブロックA1〜A4、B1〜B4、C1〜C4、D1〜D4、E1〜E4を生成する。
Specifically, as shown in FIG. 3, when data writing is detected, the
また、ストライピング処理部12は、ブロックA1〜A4を用いて、パリティデータによるブロックPAを生成する。同様に、ストライピング処理部12は、ブロックB1〜B4を用いて、パリティデータによるブロックPBを生成し、ブロックC1〜C4を用いて、パリティデータによるブロックPCを生成し、ブロックD1〜D4を用いて、パリティデータによるブロックPDを生成する。
In addition, the
更に、分散処理部13は、ファイルサーバ20のメモリ22それぞれ毎に、データを分割して得られたブロックと、パリティデータによるブロックとを格納させる。図3の例では、分散処理部13は、メモリ(1)に、ブロックA1、B1、C1、及びD1と、ブロックPEとを格納させ、メモリ(2)に、ブロックA2、B2、C2、及びE1と、ブロックPDとを格納させ、メモリ(3)に、ブロックA3、B3、D2、及びE2と、ブロックPCとを格納させる。また、分散処理部13は、メモリ(4)に、ブロックA4、C3、D3及びE3と、ブロックPBとを格納させ、メモリ(5)に、ブロックB4、C4、D4、及びE4と、ブロックPAとを格納させる。
Further, the distributed
このように、図3の例では、いずれかのファイルサーバ20のメモリ22に書き込まれたデータは、5台のファイルサーバ20の各メモリ22に、RAID5に準拠した記録方式に沿って格納される。よって、1台のファイルサーバ20が停止した場合は、残りのファイルサーバ20がデータを復元することができ、データの保全性が確保される。そして、データを復元したファイルサーバ20は、データのディスクへの書き込みが完了する前に、ファイルシステム100にアクセスしてきた端末装置に対して、レスポンスを返却できる。
As described above, in the example of FIG. 3, the data written in the
[装置動作]
次に、本実施の形態におけるデータ管理装置10の動作について図4を用いて説明する。図4は、本発明の実施の形態におけるデータ管理装置10の動作を示すフロー図である。以下の説明においては、適宜図1〜図3を参照する。また、本実施の形態では、データ管理装置10を動作させることによって、データ管理方法が実施される。よって、本実施の形態におけるデータ管理方法の説明は、以下のデータ管理装置10の動作説明に代える
。
[Device operation]
Next, the operation of the
図4に示すように、最初に、データ検知部11は、それを備えるデータ管理装置10を構築しているファイルサーバ20のメモリ22を、検知対象として、データの書き込みを検知する(ステップS1)。なお、データの書き込みが検知されていない場合は、データ検知部11は待機状態となる。
As shown in FIG. 4, first, the
次に、ストライピング処理部12は、ステップS1で検知されたデータに対して、ストライピングを実行して、ファイルサーバ20の台数に応じて、3つ以上のブロックを生成する(ステップS2)。具体的には、ステップS2では、ストライピング処理部12は、RAID2〜6に定義されている記録方式に準拠して、生成したブロックを用いて、パリティデータによるブロックも生成する。
Next, the
次に、分散処理部13は、ステップS2で生成されたブロックを、ファイルサーバ20それぞれのメモリ22に分散して格納させる(ステップS3)。具体的には、ステップS3では、分散処理部13は、ステップS2で生成されたブロック、及びパリティデータによるブロックを、RAID2〜6に定義されている記録方式に準拠して、各メモリ22に格納する。
Next, the distributed
[実施の形態による効果]
以上のように本実施の形態では、いずれかのファイルサーバ20のメモリ22に書き込まれたデータは、RAID2〜6に定義されている記録方式に準拠して、各ファイルサーバ20のメモリ22に分散して格納される。このため、データの書き込み元のファイルサーバ20が停止してしまった場合でも、他のファイルサーバ20がデータを復元できるので、データの安全性の確保が図られる。そして、この結果、このような場合であっても、他のファイルサーバ20は、データのディスクへの書き込みの前に、データの書き込みを依頼した端末装置に対してレスポンスを返却することができ、端末装置へのレスポンスの遅延も抑制される。
[Effects of the embodiment]
As described above, in the present embodiment, data written to the
また、上述の例は、ファイルサーバ20毎に、各ファイルサーバ20に、データ管理装置10が構築されている態様を示しているが、本実施の形態は、これに限定されるものではない。本実施の形態は、いずれかのファイルサーバ20のみに、データ管理装置10が構築されている態様であっても良いし、ファイルサーバ20とは別のサーバによって、データ管理装置10が構築されている態様であっても良い。
Moreover, although the above-mentioned example has shown the aspect by which the
[プログラム]
本実施の形態におけるプログラムは、コンピュータに、図4に示すステップS1〜S3を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるデータ管理装置10とデータ管理方法とを実現することができる。この場合、コンピュータのプロセッサは、データ検知部11、ストライピング処理部12、及び分散処理部13として機能し、処理を行なう。また、コンピュータとしては、ファイルサーバ20を構成するコンピュータが挙げられる。
[program]
The program in the present embodiment may be a program that causes a computer to execute steps S1 to S3 shown in FIG. By installing and executing this program on a computer, the
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、データ検知部11、ストライピング処理部12、及び分散処理部13のいずれかとして機能しても良い。
The program in the present embodiment may be executed by a computer system constructed by a plurality of computers. In this case, for example, each computer may function as any of the
ここで、本実施の形態におけるプログラムを実行することによって、データ管理装置を実現するコンピュータの一例について図5を用いて説明する。図5は、本発明の実施の形
態におけるデータ管理装置を実現するコンピュータの一例を示すブロック図である。なお、図5に示すコンピュータは、図2に示したファイルサーバ20を構成するコンピュータである。
Here, an example of a computer that realizes the data management apparatus by executing the program according to the present embodiment will be described with reference to FIG. FIG. 5 is a block diagram illustrating an example of a computer that implements the data management apparatus according to the embodiment of the present invention. 5 is a computer constituting the
図5に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)を備えていても良い。
As shown in FIG. 5, the
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
The
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
Specific examples of the
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
The data reader /
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記録媒体が挙げられる。
Specific examples of the
なお、本実施の形態におけるデータ管理装置10は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、データ管理装置10は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
Note that the
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記14)によって表現することができるが、以下の記載に限定されるものではない。 Part or all of the above-described embodiments can be expressed by (Appendix 1) to (Appendix 14) described below, but is not limited to the following description.
(付記1)
3台以上のファイルサーバを備えるファイルシステムにおいて、データを管理するための装置であって、
前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、データ検知部と、
書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ストライピング処理部と、
生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、分散処理部と、
を備えている、
ことを特徴とするデータ管理装置。
(Appendix 1)
In a file system including three or more file servers, an apparatus for managing data,
In any of the file servers, when data is written in a memory provided in the file server, a data detection unit that detects the fact,
Striping is performed on the data detected to be written, and three or more blocks are generated according to the number of the file servers, and a striping processing unit,
A distributed processing unit for storing the generated block in a distributed manner in the memory of each of the file servers;
With
A data management apparatus characterized by that.
(付記2)
付記1に記載のデータ管理装置であって、
前記ストライピング処理部は、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記分散処理部が、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするデータ管理装置。
(Appendix 2)
The data management device according to attachment 1, wherein
The striping processor divides the data to generate two or more first blocks, and further uses the first block to generate two or more second blocks based on parity data.
The distributed processing unit stores any one of the first blocks and any one of the second blocks in the memory of each of the file servers.
A data management apparatus characterized by that.
(付記3)
付記1または2に記載のデータ管理装置であって、
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするデータ管理装置。
(Appendix 3)
The data management device according to
The memory provided in the file server is a non-volatile memory.
A data management apparatus characterized by that.
(付記4)
付記1〜3のいずれかに記載のデータ管理装置であって、
当該データ管理装置が、いずれかの前記ファイルサーバによって、または前記ファイルサーバそれぞれ毎に当該ファイルサーバによって、構築されている、
ことを特徴とするデータ管理装置。
(Appendix 4)
A data management device according to any one of appendices 1-3,
The data management device is constructed by any one of the file servers or by the file server for each of the file servers,
A data management apparatus characterized by that.
(付記5)
3台以上のファイルサーバと、データ管理装置とを備え、
前記データ管理装置は、
前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、データ検知部と、
書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ストライピング処理部と、
生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、分散処理部と、
を備えている、
ことを特徴とするファイルシステム。
(Appendix 5)
It has three or more file servers and a data management device.
The data management device includes:
In any of the file servers, when data is written in a memory provided in the file server, a data detection unit that detects the fact,
Striping is performed on the data detected to be written, and three or more blocks are generated according to the number of the file servers, and a striping processing unit,
A distributed processing unit for storing the generated block in a distributed manner in the memory of each of the file servers;
With
A file system characterized by that.
(付記6)
付記5に記載のファイルシステムであって、
前記ストライピング処理部は、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記分散処理部が、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするファイルシステム。
(Appendix 6)
The file system according to appendix 5,
The striping processor divides the data to generate two or more first blocks, and further uses the first block to generate two or more second blocks based on parity data.
The distributed processing unit stores any one of the first blocks and any one of the second blocks in the memory of each of the file servers.
A file system characterized by that.
(付記7)
付記5または6に記載のファイルシステムであって、
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするファイルシステム。
(Appendix 7)
The file system according to appendix 5 or 6,
The memory provided in the file server is a non-volatile memory.
A file system characterized by that.
(付記8)
付記5〜7のいずれかに記載のファイルシステムであって、
前記データ管理装置は、いずれかの前記ファイルサーバによって、または前記ファイルサーバそれぞれ毎に当該ファイルサーバによって、構築されている、
ことを特徴とするファイルシステム。
(Appendix 8)
The file system according to any one of appendices 5 to 7,
The data management device is constructed by any one of the file servers or by the file server for each of the file servers,
A file system characterized by that.
(付記9)
3台以上のファイルサーバを備えるファイルシステムにおいて、データを管理するための方法であって、
(a)前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、ステップと、
(b)書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ステップと、
(c)生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、ステップと、
を有する、
ことを特徴とするデータ管理方法。
(Appendix 9)
In a file system comprising three or more file servers, a method for managing data,
(A) detecting data when data is written in a memory provided in the file server in any of the file servers; and
(B) performing striping on the data detected to be written to generate three or more blocks according to the number of the file servers;
(C) distributing and storing the generated block in the memory of each of the file servers;
Having
A data management method characterized by the above.
(付記10)
付記9に記載のデータ管理方法であって、
前記(b)のステップにおいて、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記(c)のステップにおいて、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするデータ管理方法。
(Appendix 10)
A data management method according to attachment 9, wherein
In the step (b), the data is divided to generate two or more first blocks, and further, using the first block, two or more second blocks based on parity data are generated,
In the step (c), any one of the first blocks and any one of the second blocks is stored in the memory of each of the file servers.
A data management method characterized by the above.
(付記11)
付記9または10に記載のデータ管理方法であって、
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするデータ管理方法。
(Appendix 11)
The data management method according to
The memory provided in the file server is a non-volatile memory.
A data management method characterized by the above.
(付記12)
3台以上のファイルサーバを備えるファイルシステムにおいて、コンピュータによって、データを管理するためのプログラムであって、
前記コンピュータに、
(a)前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、ステップと、
(b)書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ステップと、
(c)生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、ステップと、
を実行させる、
ことを特徴とするプログラム。
(Appendix 12)
In a file system comprising three or more file servers, a program for managing data by a computer,
In the computer,
(A) detecting data when data is written in a memory provided in the file server in any of the file servers; and
(B) performing striping on the data detected to be written to generate three or more blocks according to the number of the file servers;
(C) distributing and storing the generated block in the memory of each of the file servers;
To execute,
A program characterized by that.
(付記13)
付記12に記載のプログラムであって、
前記(b)のステップにおいて、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロック
を生成し、
前記(c)のステップにおいて、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするプログラム。
(Appendix 13)
The program according to
In the step (b), the data is divided to generate two or more first blocks, and further, using the first block, two or more second blocks based on parity data are generated,
In the step (c), any one of the first blocks and any one of the second blocks is stored in the memory of each of the file servers.
A program characterized by that.
(付記14)
付記12または13に記載のプログラムであって、
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするプログラム。
(Appendix 14)
The program according to
The memory provided in the file server is a non-volatile memory.
A program characterized by that.
以上のように、本発明によれば、ファイルシステムにおける、端末装置へのレスポンスの遅延を抑制しつつ、データの保全性の確保を図ることができる。本発明は、特に、複数のファイルサーバ(NAS)を備えたファイルシステムに有用である。 As described above, according to the present invention, it is possible to ensure data integrity while suppressing delay in response to a terminal device in a file system. The present invention is particularly useful for a file system including a plurality of file servers (NAS).
10 データ管理装置
11 データ検知部
12 ストライピング処理部
13 分散処理部
20 ファイルサーバ
21 オペレーティングシステム
22 メモリ
30 ネットワーク
100 ファイルシステム
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス
DESCRIPTION OF
112
Claims (14)
前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、データ検知部と、
書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ストライピング処理部と、
生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、分散処理部と、
を備えている、
ことを特徴とするデータ管理装置。 In a file system including three or more file servers, an apparatus for managing data,
In any of the file servers, when data is written in a memory provided in the file server, a data detection unit that detects the fact,
Striping is performed on the data detected to be written, and three or more blocks are generated according to the number of the file servers, and a striping processing unit,
A distributed processing unit for storing the generated block in a distributed manner in the memory of each of the file servers;
With
A data management apparatus characterized by that.
前記ストライピング処理部は、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記分散処理部が、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするデータ管理装置。 The data management device according to claim 1,
The striping processor divides the data to generate two or more first blocks, and further uses the first block to generate two or more second blocks based on parity data.
The distributed processing unit stores any one of the first blocks and any one of the second blocks in the memory of each of the file servers.
A data management apparatus characterized by that.
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするデータ管理装置。 The data management device according to claim 1 or 2,
The memory provided in the file server is a non-volatile memory.
A data management apparatus characterized by that.
当該データ管理装置が、いずれかの前記ファイルサーバによって、または前記ファイルサーバそれぞれ毎に当該ファイルサーバによって、構築されている、
ことを特徴とするデータ管理装置。 The data management device according to any one of claims 1 to 3,
The data management device is constructed by any one of the file servers or by the file server for each of the file servers,
A data management apparatus characterized by that.
前記データ管理装置は、
前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、データ検知部と、
書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ストライピング処理部と、
生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、分散処理部と、
を備えている、
ことを特徴とするファイルシステム。 It has three or more file servers and a data management device.
The data management device includes:
In any of the file servers, when data is written in a memory provided in the file server, a data detection unit that detects the fact,
Striping is performed on the data detected to be written, and three or more blocks are generated according to the number of the file servers, and a striping processing unit,
A distributed processing unit for storing the generated block in a distributed manner in the memory of each of the file servers;
With
A file system characterized by that.
前記ストライピング処理部は、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記分散処理部が、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするファイルシステム。 The file system according to claim 5,
The striping processor divides the data to generate two or more first blocks, and further uses the first block to generate two or more second blocks based on parity data.
The distributed processing unit stores any one of the first blocks and any one of the second blocks in the memory of each of the file servers.
A file system characterized by that.
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするファイルシステム。 The file system according to claim 5 or 6,
The memory provided in the file server is a non-volatile memory.
A file system characterized by that.
前記データ管理装置は、いずれかの前記ファイルサーバによって、または前記ファイルサーバそれぞれ毎に当該ファイルサーバによって、構築されている、
ことを特徴とするファイルシステム。 The file system according to any one of claims 5 to 7,
The data management device is constructed by any one of the file servers or by the file server for each of the file servers,
A file system characterized by that.
(a)前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、ステップと、
(b)書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ステップと、
(c)生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、ステップと、
を有する、
ことを特徴とするデータ管理方法。 In a file system comprising three or more file servers, a method for managing data,
(A) detecting data when data is written in a memory provided in the file server in any of the file servers; and
(B) performing striping on the data detected to be written to generate three or more blocks according to the number of the file servers;
(C) distributing and storing the generated block in the memory of each of the file servers;
Having
A data management method characterized by the above.
前記(b)のステップにおいて、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記(c)のステップにおいて、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするデータ管理方法。 The data management method according to claim 9, comprising:
In the step (b), the data is divided to generate two or more first blocks, and further, using the first block, two or more second blocks based on parity data are generated,
In the step (c), any one of the first blocks and any one of the second blocks is stored in the memory of each of the file servers.
A data management method characterized by the above.
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするデータ管理方法。 A data management method according to claim 9 or 10, wherein
The memory provided in the file server is a non-volatile memory.
A data management method characterized by the above.
前記コンピュータに、
(a)前記ファイルサーバのいずれかにおいて、当該ファイルサーバに備えられたメモリにデータが書き込まれた場合に、そのことを検知する、ステップと、
(b)書き込みが検知された前記データに対して、ストライピングを実行して、前記ファイルサーバの台数に応じて、3つ以上のブロックを生成する、ステップと、
(c)生成された前記ブロックを、前記ファイルサーバそれぞれの前記メモリに分散して格納させる、ステップと、
を実行させる、
ことを特徴とするプログラム。 In a file system comprising three or more file servers, a program for managing data by a computer,
In the computer,
(A) detecting data when data is written in a memory provided in the file server in any of the file servers; and
(B) performing striping on the data detected to be written to generate three or more blocks according to the number of the file servers;
(C) distributing and storing the generated block in the memory of each of the file servers;
To execute,
A program characterized by that.
前記(b)のステップにおいて、前記データを分割して2以上の第1のブロックを生成し、更に、前記第1のブロックを用いて、パリティデータによる2以上の第2のブロックを生成し、
前記(c)のステップにおいて、前記ファイルサーバそれぞれの前記メモリに、いずれかの前記第1のブロックと、いずれかの前記第2のブロックとを格納させる、
ことを特徴とするプログラム。 A program according to claim 12,
In the step (b), the data is divided to generate two or more first blocks, and further, using the first block, two or more second blocks based on parity data are generated,
In the step (c), any one of the first blocks and any one of the second blocks is stored in the memory of each of the file servers.
A program characterized by that.
前記ファイルサーバに備えられたメモリが、不揮発性メモリである、
ことを特徴とするプログラム。 A program according to claim 12 or 13,
The memory provided in the file server is a non-volatile memory.
A program characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018041161A JP2019159416A (en) | 2018-03-07 | 2018-03-07 | Data management device, file system, data management method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018041161A JP2019159416A (en) | 2018-03-07 | 2018-03-07 | Data management device, file system, data management method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019159416A true JP2019159416A (en) | 2019-09-19 |
Family
ID=67993436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018041161A Pending JP2019159416A (en) | 2018-03-07 | 2018-03-07 | Data management device, file system, data management method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019159416A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835637A (en) * | 2020-03-19 | 2021-12-24 | 北京奥星贝斯科技有限公司 | Data writing method, device and equipment |
-
2018
- 2018-03-07 JP JP2018041161A patent/JP2019159416A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835637A (en) * | 2020-03-19 | 2021-12-24 | 北京奥星贝斯科技有限公司 | Data writing method, device and equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10977124B2 (en) | Distributed storage system, data storage method, and software program | |
CN102047237B (en) | Providing object-level input/output requests between virtual machines to access a storage subsystem | |
CN109725831B (en) | Method, system and computer readable medium for managing storage system | |
EP2557494B1 (en) | Storage apparatus and data copy method between thin-provisioning virtual volumes | |
US9405625B2 (en) | Optimizing and enhancing performance for parity based storage | |
US9354907B1 (en) | Optimized restore of virtual machine and virtual disk data | |
CN103098030A (en) | Virtual machine aware replication method and system | |
US10031808B2 (en) | Raid 10 reads optimized for solid state drives | |
CN109725830B (en) | Method, apparatus and storage medium for managing redundant array of independent disks | |
CN109725823B (en) | Method and apparatus for managing a hybrid storage disk array | |
CN110413208B (en) | Method, apparatus and computer program product for managing a storage system | |
US10235082B1 (en) | System and method for improving extent pool I/O performance by introducing disk level credits on mapped RAID | |
CN110413694A (en) | Metadata management method and relevant apparatus | |
US20100281213A1 (en) | Changing the redundancy protection for data associated with a file | |
WO2019210844A1 (en) | Anomaly detection method and apparatus for storage device, and distributed storage system | |
US10860224B2 (en) | Method and system for delivering message in storage system | |
US20190129646A1 (en) | Method, system, and computer program product for managing storage system | |
EP4170499A1 (en) | Data storage method, storage system, storage device, and storage medium | |
US10705742B2 (en) | Managing input/output (I/O) concurrency numbers to control storage system responses | |
JP2019159416A (en) | Data management device, file system, data management method, and program | |
CN109213427B (en) | Method and apparatus for managing storage system | |
US9866444B2 (en) | Dynamic conversion of hardware resources of a server system | |
CN113641298A (en) | Data storage method, device and computer program product | |
CN107515723B (en) | Method and system for managing memory in a storage system | |
US11640337B2 (en) | Data recovery of distributed data using redundant codes |