JP2007072643A - Data storage system - Google Patents
Data storage system Download PDFInfo
- Publication number
- JP2007072643A JP2007072643A JP2005257383A JP2005257383A JP2007072643A JP 2007072643 A JP2007072643 A JP 2007072643A JP 2005257383 A JP2005257383 A JP 2005257383A JP 2005257383 A JP2005257383 A JP 2005257383A JP 2007072643 A JP2007072643 A JP 2007072643A
- Authority
- JP
- Japan
- Prior art keywords
- data
- read
- unit
- storage
- parity
- 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.)
- Withdrawn
Links
Images
Landscapes
- Storage Device Security (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、各種データを保管するデータ保管システムに関し、より詳細には、保管されているデータのセキュリティ向上を図るための技術に関するものである。 The present invention relates to a data storage system for storing various data, and more particularly to a technique for improving security of stored data.
従来、各種のデータは、紙等の印刷メディアに印刷された状態、あるいはテープ・CD−R等の記憶メディアに記憶された状態で保管されていた。また、近年では、情報化社会の進行に伴い、データを電子化して保管する技術が発展してきている。たとえば医療分野においては、医用画像データや電子カルテデータ等を作成し、それらを参照可能な状態にアーカイブ化する技術が実用化されている。 Conventionally, various data has been stored in a state of being printed on a print medium such as paper or in a state of being stored in a storage medium such as a tape / CD-R. In recent years, with the progress of the information-oriented society, technology for storing data in an electronic form has been developed. For example, in the medical field, a technique for creating medical image data, electronic medical record data, and the like and archiving them so that they can be referred to has been put into practical use.
電子化されたデータを保管する上で重視すべき問題の一つとして、データの漏洩や改竄や消失を防止するためのセキュリティの確保が挙げられる。特に、近年のデータ保管システムは、インターネットやLAN等のネットワークを介してデータをやりとりしているため、当該ネットワークを通じて、いつ、どこで、誰がデータの改竄等を企てるか予測することは困難である。したがって、保管されているデータに対するあらゆる角度からのアクセスを勘案したセキュリティ策を講じる必要がある。 One of the problems that should be emphasized when storing digitized data is to ensure security to prevent data leakage, falsification, and loss. In particular, since recent data storage systems exchange data via a network such as the Internet or a LAN, it is difficult to predict when, where, and who intends to tamper with data through the network. Therefore, it is necessary to take security measures considering access from all angles to stored data.
また、災害の発生等によってシステム自体が破壊されてデータが消失するおそれもある。それに対処するものとして、たとえば、同一のデータを複数の保管場所に保管しておくシステムが、金融機関等の機密データの保管に実用化されている。このシステムによれば、例え一つの保管場所に災害等が発生した場合でも、他の保管場所のデータは保護されることとなる。 In addition, there is a risk that the system itself is destroyed due to the occurrence of a disaster or the like and data is lost. As a countermeasure, for example, a system for storing the same data in a plurality of storage locations has been put into practical use for storing confidential data of financial institutions and the like. According to this system, even when a disaster or the like occurs in one storage location, data in other storage locations is protected.
また、データを暗号化して保管し、データ参照時にはそれを復号化するシステムも広く利用されている。たとえば下記の特許文献1には、暗号技術を用いたデータのセキュリティシステムが開示されている。同文献に記載のシステムは、セキュリティ対象の伝送情報を送信側と受信側とで暗号化処理する構成とされている。送信側においては、この伝送情報を所定の形式で伝送し、この伝送情報を暗号化処理してメッセージ認証コード情報を取得し、伝送情報を送信した後にメッセージ認証コード情報を送信する。また、受信側においては、受信した伝送情報を暗号化処理してメッセージ認証コード情報を独立して取得し、両メッセージ認証コード情報を照合して一致を以て伝送情報の認証を行うとともに、認証された伝送情報を保管するようになっている。
In addition, a system that encrypts and stores data and decrypts the data when it is referenced is also widely used. For example,
しかしながら、上述したような既存の手法においては、あらゆる危険性を考慮すると、保管されているデータのセキュリティが十分に確保されているとは言い難い。 However, in the existing methods as described above, it is difficult to say that the security of stored data is sufficiently ensured in consideration of all dangers.
まず、印刷メディアや記憶メディアを用いる場合、災害等によりメディアの破壊や焼失が生じると、保管されているデータは失われてしまう。また、メディアが盗難されたり破壊されたりするおそれもある。なお、このようなメディアを保管するには保管スペースを確保する必要があり、複数の場所にコピーを保管することは費用対効果の面から問題がある。また、必要なデータを取り出すのに時間が掛かるという問題もある。 First, when using print media or storage media, if the media is destroyed or burnt down due to a disaster or the like, stored data is lost. There is also a risk of media being stolen or destroyed. In order to store such media, it is necessary to secure a storage space, and storing copies in a plurality of places is problematic from the viewpoint of cost effectiveness. Another problem is that it takes time to retrieve necessary data.
また、データを電子化して単一の保管場所に保管する場合、その保管場所に災害が発生するとデータが消失するおそれがある。 In addition, when data is digitized and stored in a single storage location, the data may be lost if a disaster occurs in the storage location.
一方、データを電子化して複数の保管場所に同一データをそれぞれ保管する場合には、災害によるデータ消失の危険性は減少するが、犯罪などによるデータの漏洩への対処がより困難になる。すなわち、各保管場所に同一のデータが保管させることから、災害等に備えて保管場所の数を増やせば増やすほど、データ漏洩の危険性が増大することとなる。 On the other hand, when data is digitized and the same data is stored in a plurality of storage locations, the risk of data loss due to a disaster is reduced, but it becomes more difficult to deal with data leakage due to crimes and the like. That is, since the same data is stored in each storage location, the risk of data leakage increases as the number of storage locations increases in preparation for a disaster or the like.
また、暗号技術やパスワード技術等のセキュリティ保護策を用いる場合、そのための投資コストや管理コストが発生するとともに、データの送受信を行う度ごと暗号処理(暗号化処理、復号化処理等)やパスワード処理(パスワード付与処理・照合処理等)によってオーバーヘッドが増大するため、装置性能が恒常的に低減してしまうおそれがある。また、マイクロプロセッサの処理速度の向上や暗号解読技術の進歩による暗号の陳腐化を考慮すると、使用する暗号を逐次強化する必要が生じ、そのためのコストも掛かることとなる。 In addition, when using security protection measures such as encryption technology and password technology, investment costs and management costs are incurred, and encryption processing (encryption processing, decryption processing, etc.) and password processing are performed each time data is transmitted and received. Since the overhead increases due to (password assignment processing / collation processing, etc.), the apparatus performance may be constantly reduced. In addition, considering the improvement of the processing speed of the microprocessor and the obsolescence of the cipher due to the advancement of the cryptanalysis technique, it is necessary to strengthen the cipher to be used successively, and the cost for that will be increased.
本発明は、このような問題点を解決するためのもので、災害や犯罪等によるデータの消失、漏洩、改竄などの様々な危険性に対するセキュリティ向上を図ることが可能なデータ保管システムを提供することを目的とする。 The present invention is for solving such problems, and provides a data storage system capable of improving security against various dangers such as data loss, leakage, and tampering due to disasters and crimes. For the purpose.
また、本発明は、コスト増加を抑制しつつセキュリティ能力の高いデータ保管システムを提供することを他の目的としている。 Another object of the present invention is to provide a data storage system with high security capability while suppressing an increase in cost.
上記目的を達成するために、請求項1に記載の発明は、広域ネットワークに接続され、互いに地理的に離れた場所に設置された複数のデータ保管装置と、前記広域ネットワークに接続され、データの保管要求を受け付ける保管要求受付手段と、前記保管要求が受け付けられたデータを2以上のデータブロックに分割する分割手段と、前記広域ネットワークを通じて、前記分割手段により得られた2以上のデータブロックを前記複数のデータ保管装置に分散して送信する送信手段とを有するデータ送信装置と、前記広域ネットワークに接続され、データの読出要求を受け付ける読出要求受付手段と、前記読出要求が受け付けられたデータに対応する2以上のデータブロックを前記広域ネットワークを通じて前記複数のデータ保管装置から読み出す読出手段と、前記読み出された2以上のデータブロックに基づいて前記データを復元する復元手段とを有するデータ復元装置と、を備えることを特徴とするデータ保管システムである。
In order to achieve the above-mentioned object, the invention according to
また、請求項2に記載の発明は、請求項1に記載のデータ保管システムであって、前記データ送信装置は、前記分割手段により得られた2以上のデータブロックに基づいて、各データブロックのパリティデータを生成するパリティデータ生成手段を更に有し、前記送信手段は、前記生成された各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置に送信し、前記データ復元装置は、前記読出手段により読み出された各データブロックについて、その保管先のデータ保管装置から適正に読み出されたか判断する判断手段を更に有し、前記読出手段は、適正に読み出されなかったと前記判断されたデータブロックのパリティデータを、その保管先のデータ保管装置から読み出し、前記復元手段は、前記読み出されたパリティデータに基づいて前記適正に読み出されなかったと判断されたデータブロックを再形成する再形成手段を含み、前記判断手段により適正に読み出されたと判断されたデータブロックと、前記再形成されたデータブロックとに基づいて、前記データを復元する、ことを特徴とする。
The invention according to
また、請求項3に記載の発明は、請求項2に記載のデータ保管システムであって、前記データ送信装置は、前記分割手段により得られた2以上のデータブロックのそれぞれのデータ構造を反映するチェック情報を生成するチェック情報生成手段を更に有し、前記送信手段は、前記2以上のデータブロックをそのチェック情報とともにそれぞれ送信し、前記データ復元装置の前記読出手段は、前記2以上のデータブロックをそのチェック情報とともにそれぞれ読み出し、前記判断手段は、前記読み出された2以上のデータブロックのそれぞれについて、そのチェック情報に基づいて前記適正に読み出されたかを判断する、ことを特徴とする。
The invention according to
また、請求項4に記載の発明は、請求項2に記載のデータ保管システムであって、前記データ送信装置の前記送信手段は、前記パリティデータ生成手段により生成された各データブロックのパリティデータを前記複数のデータ保管装置のうちの1つに送信するとともに、前記2以上のデータブロックを前記1つを除く前記複数のデータ保管装置に分散して送信することを特徴とする。
The invention according to
また、請求項5に記載の発明は、広域ネットワークに接続され、互いに地理的に離れた場所に設置された1以上の第1のデータ保管装置と、前記第1のデータ保管装置と地理的に離れた位置に設置され、ローカルネットワークに接続され、前記第1の保管装置から地理的に離れた場所に設置された1以上の第2のデータ保管装置と、前記広域ネットワーク及び前記ローカルネットワークのそれぞれに接続され、データの保管要求を受け付ける保管要求受付手段と、前記保管要求が受け付けられたデータを2以上のデータブロックに分割する分割手段と、前記広域ネットワーク及び前記ローカルネットワークを通じて、前記分割手段により得られた2以上のデータブロックを前記第1及び第2のデータ保管装置に分散して送信する送信手段と、データの読出要求を受け付ける読出要求受付手段と、前記読出要求が受け付けられたデータに対応する2以上のデータブロックを前記広域ネットワーク及び前記ローカルネットワークを通じて前記第1及び第2のデータ保管装置から読み出す読出手段と、前記読み出された2以上のデータブロックに基づいて前記データを復元する復元手段とを有するデータ処理装置と、を備えることを特徴とするデータ保管システムである。 According to a fifth aspect of the present invention, one or more first data storage devices connected to a wide area network and installed geographically apart from each other, and the first data storage device geographically One or more second data storage devices installed at remote locations, connected to a local network, and geographically separated from the first storage device; and each of the wide area network and the local network A storage request receiving means for receiving a data storage request, a dividing means for dividing the data for which the storage request has been received into two or more data blocks, through the wide area network and the local network, by the dividing means Transmission means for distributing and transmitting the obtained two or more data blocks to the first and second data storage devices; Read request receiving means for receiving a data read request, and two or more data blocks corresponding to the data for which the read request has been received are read from the first and second data storage devices through the wide area network and the local network. A data storage system comprising: a reading unit; and a data processing device having a restoring unit that restores the data based on the two or more read data blocks.
また、請求項6に記載の発明は、請求項5に記載のデータ保管システムであって、前記データ処理装置は、前記分割手段により得られた2以上のデータブロックに基づいて、各データブロックのパリティデータを生成するパリティデータ生成手段と、前記読出手段により読み出された各データブロックについて、その保管先の前記第1又は第2のデータ保管装置から適正に読み出されたか判断する判断手段とを更に有し、前記送信手段は、前記パリティデータ生成手段により生成された各パリティデータを、対応するデータブロックの送信先とは異なる前記第1又は第2のデータ保管装置に送信し、前記読出手段は、前記判断手段により適正に読み出されなかったと判断されたデータブロックのパリティデータを、その保管先の前記第1又は第2のデータ保管装置から読み出し、前記復元手段は、前記読み出されたパリティデータに基づいて前記適正に読み出されなかったと判断されたデータブロックを再形成する再形成手段を含み、前記判断手段により適正に読み出されたと判断されたデータブロックと、前記再形成されたデータブロックとに基づいて、前記データを復元する、ことを特徴とする。
The invention according to claim 6 is the data storage system according to
本発明の請求項1に係るデータ保管システムは、データ送信装置が、保管要求のなされたデータを2以上のデータブロックに分割し、この2以上のデータブロックを広域ネットワークを通じて複数のデータ保管装置に分散して送信するとともに、データ復元装置が、読出要求のなされたデータに対応する2以上のデータブロックを広域ネットワークを通じて複数のデータ保管装置から読み出し、それら2以上のデータブロックに基づいてデータを復元するように動作する。ここで、複数のデータ保管装置は、互いに地理的に離れた場所に設置されている。
In the data archiving system according to
また、本発明の請求項5に係るデータ保管システムは、データ処理装置が、保管要求のなされたデータを2以上のデータブロックに分割し、この2以上のデータブロックを広域ネットワークに接続された1以上の第1のデータ保管装置とローカルネットワークに接続された第2のデータ保管装置とに分散して送信するとともに、読出要求のなされたデータに対応する2以上のデータブロックを第1及び第2のデータ保管装置から読み出し、それら2以上のデータブロックに基づいてデータを復元するように動作する。ここで、第1、第2のデータ保管装置は、互いに地理的に離れた場所にて設置されている。
In the data archiving system according to
したがって、請求項1又は請求項5に係るデータ保管システムによれば、災害や犯罪等によってデータの消失、漏洩、改竄などが発生しても、データ全体が消失等することが無く、また、データ全体を盗難などするためには複数のデータ保管装置3からデータを盗み出すなどする必要があるため、それは困難である。
Therefore, according to the data storage system according to
また、請求項5に係るデータ保管システムによれば、データ処理装置と同じローカルネットワークにもデータ保管装置が設置されているので、少なくとも1つのデータブロックは、広域ネットワークを経由せずにローカルネットワークのみを通じて伝送される。したがって、広域ネットワークを経由するデータが全て漏洩等した場合であっても、データ全体が漏洩等することがない。
According to the data archiving system according to
本発明の請求項2又は請求項6に係るデータ保管システムによれば、分割手段により得られた各データブロックのパリティデータを生成し、対応するデータブロックの送信先とは異なるデータ保管装置に送信するとともに、読出手段による各データブロックの読み出し処理が適正に行われたかを判断し、適正に読み出されなかったと判断されたデータブロックのパリティデータを読み出し、そのパリティデータに基づいてデータブロックを再形成してデータを復元するように動作する。
According to the data storage system according to
したがって、データブロックの改竄等が発生した場合であっても、パリティデータを用いてそのデータブロックを再形成してデータ全体を復元できるので、データ全体の保護が可能となる。 Therefore, even when the data block is falsified, the entire data can be restored by re-forming the data block using the parity data, so that the entire data can be protected.
このように、本発明によれば、災害や犯罪等によるデータの消失、漏洩、改竄などの様々な危険性に対するデータのセキュリティ向上を図ることが可能となる。 Thus, according to the present invention, it is possible to improve data security against various dangers such as data loss, leakage, and tampering due to disasters, crimes, and the like.
また、暗号技術やパスワード技術等の他のセキュリティ保護策を講じる場合のようなコストも必要なく、恒常的なオーバーヘッドの増大による装置性能の低下のおそれもない。したがって、本発明によれば、コスト増加を抑制しつつセキュリティ能力の高いデータ保管システムを提供することが可能となる。 Further, there is no need for the cost required when other security protection measures such as encryption technology and password technology are taken, and there is no fear of deterioration in device performance due to constant increase in overhead. Therefore, according to the present invention, it is possible to provide a data storage system with high security capability while suppressing an increase in cost.
本発明に係るデータ保管システムの好適な実施形態の一例について、図面を適宜参照しながら詳細に説明する。 An example of a preferred embodiment of a data storage system according to the present invention will be described in detail with reference to the drawings as appropriate.
〈第1の実施形態〉
[システム構成]
本発明に係るデータ保管システムの好適な実施形態の一例を図1に示す。このデータ保管システムは、広域ネットワーク1000を介して通信可能に設けられたデータ送信サーバ1、データ復元サーバ2、及び、複数(N個)のデータ保管装置3−1、3−2、・・・・、3−Nを含んで構成される。
<First Embodiment>
[System configuration]
An example of a preferred embodiment of a data storage system according to the present invention is shown in FIG. This data storage system includes a
データ送信サーバ1は、本発明の「データ送信装置」の一例に相当する。また、データ復元サーバ2は、本発明の「データ復元装置」の一例に相当する。広域ネットワーク1000は、電話回線を通じたインターネットや専用線からなる広域通信網などのWAN(Wide Area Network)を含み、地理的に離れたコンピュータやデータベース等を互いに接続する情報通信網である。
The
データ送信サーバ1、データ復元サーバ2及び各データ保管装置3−1、3−2、・・・・、3−Nには、それぞれ、広域ネットワーク1000に対応するアドレス情報(IPアドレス等)があらかじめ付与されており、送信先のアドレス情報を指定することによりデータを目的の装置に送信するようになっている。
Each of the
データ送信サーバ1には、複数(ここでは3個)のコンピュータ端末4A、4B、4Cがローカルネットワーク1001を介してそれぞれ接続されている。また、データ復元サーバ2には、複数(ここでは2個)のコンピュータ端末5A、5Bがローカルネットワーク1002を介してそれぞれ接続されている。ローカルネットワーク1001、L2は、それぞれ、LAN(Local Area Network)などの、WANを含まない情報通信網である。
A plurality (three in this case) of
データ送信サーバ1及び各コンピュータ端末4A、4B、4Cには、ローカルネットワーク1001に対応するアドレス情報があらかじめ付与されており、送信先のアドレス情報を指定することにより目的の装置にデータを送信するようになっている。ローカルネットワーク1002により接続されたデータ復元サーバ2及び各コンピュータ端末5A、5Bについても同様である。
The
コンピュータ端末4A、4B、4C、5A、5Bは、それぞれ、既存のコンピュータを含んで構成され、CPU等のマイクロプロセッサ、RAM、ROM、ハードディスクドライブ、表示用のディスプレイ、キーボードやマウス等の操作・入力用のデバイス、CD−RやDVD−R等の各種メディアのドライブ装置、ローカルネットワーク1001対応のネットワークアダプタ等の通信機器などを具備している。
Each of the
コンピュータ端末4A、4B、4Cのそれぞれは、ローカルネットワーク1001を通じ、データ送信サーバ1に対してデータの保管要求を送信する機能を有する。ユーザは、所望のデータをコンピュータ端末4A、4B、4Cのいずれか(たとえばコンピュータ端末4A)に入力し、そのデータを保管させるための所定の操作を行う。当該操作を受けたコンピュータ端末4Aは、そのデータと、そのデータの保管を要求する信号(「保管要求信号」と呼ぶことにする。)とを、ローカルネットワーク1001を通じてデータ送信サーバ1に送信する。データ送信サーバ1は、この保管要求信号を受けて、当該データをデータ保管装置3−1〜3−Nに保管するための後述の処理を実行する。なお、保管要求信号には、当該データの識別情報や保管処理の実行を要求するコマンド等が含まれている。また、一回の保管要求によって複数のデータを一度に保管させるように要求することも可能である。
Each of the
一方、コンピュータ端末5A、5Bのそれぞれは、ローカルネットワーク1002を通じ、データ復元サーバ2に対してデータの読み出し要求を送信する機能を有する。ユーザが所定の操作を行うと、コンピュータ端末5A、5B(たとえばコンピュータ端末5A)は、データ保管装置3−1〜3−Nに保管されたデータのリスト情報を取得して表示する。このリスト情報は、たとえばデータ復元サーバ2により保持されている。ユーザは、そのリスト情報から所望のデータをマウス等で選択する。コンピュータ端末5Aは、選択されたデータの読み出しを要求する信号(「読出要求信号」と呼ぶことにする。)を、ローカルネットワーク1002を通じてデータ復元サーバ2に送信する。データ復元サーバ2は、この読出要求信号を受けて、当該データをデータ保管装置3−1〜3−Nから読み出し復元し(後述)、要求元のコンピュータ端末5Aに送信する。なお、読出要求信号には、当該データの識別情報や読出処理の実行を要求するコマンド等が含まれている。また、一回の読出要求によって複数のデータを一度に読み出させるように要求することも可能である。
On the other hand, each of the
以下、図2及び図3を更に参照しつつ、本実施形態に係るデータ保管システムを構成する広域ネットワーク1000を介して通信可能に設けられたデータ送信サーバ1、データ復元サーバ2、及び、複数(N個)のデータ保管装置3−1、3−2、・・・・、3−Nの構成についてそれぞれ詳しく説明する。
Hereinafter, with further reference to FIG. 2 and FIG. 3, a
ここで、図2は、本実施形態に係るデータ保管システムの機能的構成の一例を表すブロック図であり、図3は、データ送信サーバ1及びデータ復元サーバ2のハードウェア構成の一例を表すブロック図である。
Here, FIG. 2 is a block diagram illustrating an example of a functional configuration of the data storage system according to the present embodiment, and FIG. 3 is a block illustrating an example of a hardware configuration of the
[データ保管装置]
まず、複数のデータ保管装置3−1、3−2、・・・・、3−Nについて説明する。データ保管装置3−1、3−2、・・・・、3−Nは、それぞれ個別の通信線を介して広域ネットワーク1000に接続されている。データ保管装置3−1、3−2、・・・・、3−Nは、互いに地理的に離れた場所に設置され、望ましくは互いに遠く離れた場所に設置される(たとえば、北海道地方、東北地方、関東地方、中部地方、関西地方、中国地方、四国地方及び九州地方のうちの複数の地方にそれぞれ1台ずつ設置したり、あるいは、日本と諸外国とにそれぞれ1台ずつ設置することができる。)。
[Data storage device]
First, the plurality of data storage devices 3-1, 3-2,..., 3-N will be described. The data storage devices 3-1, 3-2,..., 3-N are connected to the
データ保管装置3−1、3−2、・・・・、3−Nは、それぞれ同様の構成を有している(以下、「データ保管装置3」と総称することがある。)。データ保管装置3は、たとえば、ハードディスクドライブ等の大容量記憶装置、広域ネットワーク1000に対応したネットワークインターフェイス、OS、データ管理用ユーティリティ等を備える公知のネットワークストレージによって構成される。
The data storage devices 3-1, 3-2,..., 3-N have the same configuration (hereinafter may be collectively referred to as “
データ保管装置3は、データ送信サーバ1から送信されたデータ復元サーバ2からの信号を受けて、
The
なお、データ保管装置3は、データベースとサーバとを含む構成とするなど、データ記憶機能、データ管理機能及び通信機能を具備するものであれば任意の構成を適用することが可能である。また、全てのデータ保管装置3が同じ構成とされる必要はない。
The
[データ送信サーバ]
データ送信サーバ1は、ローカルネットワーク1001を通じてコンピュータ端末4A、4B、4C(以下、「コンピュータ端末4」と総称することがある。)から要求された処理を実行したり、あるいは、コンピュータ端末4に対してデータやプログラムを提供する処理などを実行する。特に、コンピュータ端末4からのデータの保管要求を受けて、そのデータ(「保管データ」と呼ぶ。)をデータ保管装置3に送信して保管させる処理を実行する。この処理の実行に関わる構成を以下に説明する。
[Data transmission server]
The
〔ハードウェア構成〕
まず、データ送信サーバ1のハードウェア構成について図3を参照して説明する。データ送信サーバ1は、通常のコンピュータと同様に、CPU100(等のマイクロプロセッサ)、RAM110、ROM120、ハードディスクドライブ(HDD)130及び通信インターフェイス(I/F)140を具備している。これら各部は、バス150を介して接続されている。
[Hardware configuration]
First, the hardware configuration of the
CPU100は、ハードディスクドライブ130に格納されたデータ保管プログラム131をRAM110上に展開することにより、後述する本発明に特徴的な動作を実行する。また、CPU100は、各種の演算処理を行うとともに、データ送信サーバ1の各部の動作制御、たとえば通信インターフェイス140による通信処理の制御などを実行する。
The
データ送信サーバ1に搭載されるデータ保管プログラム131は、後述のデータ分割処理、パリティデータ生成処理、チェックID生成処理、データ送信処理等をデータ送信サーバ1に実行させるプログラムである。
The
通信インターフェイス140には、広域通信インターフェイス(I/F)141と、ローカル通信インターフェイス(I/F)142とが設けられている。広域通信インターフェイス(I/F)141は、広域ネットワーク1000を介してデータ通信を行うためのモデム等の通信機器を含んで構成される。また、ローカル通信インターフェイス(I/F)142は、ローカルネットワーク1001を介してデータ通信を行うためのネットワークアダプタ等の通信機器を含んで構成される。
The communication interface 140 is provided with a wide area communication interface (I / F) 141 and a local communication interface (I / F) 142. The wide area communication interface (I / F) 141 includes a communication device such as a modem for performing data communication via the
なお、データ送信サーバ1は、LCDやCRT等のディスプレイや操作入力用のキーボードやマウス等のユーザインターフェイスを備えていてもよい。
The
〔機能的構成〕
次に、上記のようなハードウェア構成を具備するデータ送信サーバ1の機能的構成について図2を参照しつつ説明する。
[Functional configuration]
Next, a functional configuration of the
データ送信サーバ1には、保管要求受付部11、データ分割部12、パリティデータ生成部13、チェックID生成部14及びデータ送信部15が設けられている。以下、これら各部の詳細についてそれぞれ説明する。なお、各部の動作の具体例については、後述の[動作]の項において説明する。
The
(保管要求受付部)
保管要求受付部11は、図3におけるローカル通信インターフェイス142を含んで構成され、コンピュータ端末4から送信された保管データと保管要求信号とを受け付け、その保管データをデータ分割部12に伝送する処理を行う。また、保管要求信号はCPU100に送られ、CPU100はデータ保管プログラム131を起動させて後述する処理の制御を開始する。この保管要求受付部11は、本発明の「保管要求受付手段」の一例に相当する。
(Storage request reception part)
The storage
(データ分割部)
データ分割部12は、保管要求受付部11から伝送された保管データを2以上のデータブロックに分割する本発明の「分割手段」の一例に相当するものであり、CPU100を含んで構成される。以下、このデータ分割部12が実行する処理内容について説明する。
(Data division part)
The data dividing unit 12 corresponds to an example of a “dividing unit” of the present invention that divides the storage data transmitted from the storage
まず、分割後のデータブロックの個数(分割個数)について説明する。データ送信サーバ1のハードディスクドライブ23には、データ保管装置3の個数(N個)を示す情報があらかじめ記憶されている。また、このデータ保管装置3の個数に基づく保管データの分割個数nもあらかじめ記憶されている。
First, the number of divided data blocks (divided number) will be described. The
本実施形態では、保管データの分割個数nは、データ保管装置3の個数(N個)から1を減算した結果を自然数(1以上の整数k)倍して得られた数、すなわち、分割個数n=k×(N−1)とされる。これは、N個のデータ保管装置3のうちの1つを後述のパリティデータ保管用とし、残りのN−1個を保管データのデータブロック保管用とする場合に適用されるものである。また、kは、各データ保管装置3に保管されるデータブロックの個数を示すものである。
In the present embodiment, the division number n of stored data is the number obtained by multiplying the result of subtracting 1 from the number (N) of
なお、データ分割部12が保管データのデータ量に基づいて分割個数を決定するように構成してもよい。また、N個のデータ保管装置3のうちのいくつか(M個;M<N)のみに保管するように要求や設定がなされている場合には、その個数Mを用いて分割個数を決定する。これらの場合においても、上記の分割個数nの式を用いることが望ましい。ただし、保管データの分割個数は、上記の式によるものに限定されるものではなく、システム環境やユーザの要求等に応じて適宜決定されるものである。 The data dividing unit 12 may be configured to determine the number of divisions based on the data amount of the stored data. Further, when a request or setting is made so that only some of the N data storage devices 3 (M; M <N) are stored, the number M is used to determine the division number. . Even in these cases, it is desirable to use the above-described equation for the number of divisions n. However, the number of divisions of the storage data is not limited to that according to the above formula, but is appropriately determined according to the system environment, user requirements, and the like.
なお、2つ以上のデータの保管要求が一度になされた場合、データ分割部12は、保管要求がなされた全てのデータを上記分割個数nのデータブロックに分割する。 When two or more data storage requests are made at once, the data dividing unit 12 divides all the data requested for storage into the above-mentioned number n of data blocks.
データ分割部12は、保管データをn個のデータブロックに分割するときに、各データブロックに所定の情報を付与する。この所定の情報には、当該保管データの識別情報(保管要求信号から取得される。)や、データの識別情報当該データブロックの属性情報や、データ長(データ量)情報や、隣接するデータブロックとの分割部分を特定するセパレータ情報などの情報が含まれている。この所定の情報は、たとえばデータブロックの先頭部分(ヘッダ)に付加される。なお、この所定の情報については、データ分割処理において従来から用いられているものであるため、以後、必要が無い限り言及はしないことにする。 The data dividing unit 12 gives predetermined information to each data block when dividing the storage data into n data blocks. The predetermined information includes identification information of the storage data (obtained from the storage request signal), data identification information, attribute information of the data block, data length (data amount) information, and adjacent data blocks And information such as separator information for specifying the divided portion. This predetermined information is added to the head portion (header) of the data block, for example. Since this predetermined information has been conventionally used in the data division processing, it will not be referred to unless it is necessary.
また、データ分割部12は、保管データをn個のデータブロックに分割するときに、各データブロックのデータ量を等しくするように分割するように構成されていることが望ましい。そのために、ダミーデータをデータブロックに付与するなどして、各データブロックのデータ量を調整するようにしてもよい。 Further, it is desirable that the data dividing unit 12 is configured to divide the storage data so that the data amount of each data block is equal when dividing the storage data into n data blocks. Therefore, the data amount of each data block may be adjusted by adding dummy data to the data block.
また、データ分割部12は、分割個数nを基準として保管データを分割する代わりに、データ量を基準として分割するようにしてもよい。すなわち、分割後のデータブロックのデータ量をあらかじめ設定(要求)しておき、保管データをそのデータ量ごとのデータブロックに分割するようにしてもよい。 Further, the data dividing unit 12 may divide the storage data on the basis of the data amount instead of dividing the storage data on the basis of the division number n. That is, the data amount of the divided data block may be set (requested) in advance, and the stored data may be divided into data blocks for each data amount.
保管データを分割して得られたn個のデータブロックは、パリティデータ生成部13及びデータ送信部15にそれぞれ送られる。
The n data blocks obtained by dividing the storage data are sent to the parity
(パリティデータ生成部)
パリティデータ生成部13は、データ分割部12により得られたn個のデータブロックに基づいて、各データブロックのパリティデータを生成する本発明の「パリティデータ生成手段」の一例に相当するものであり、CPU100を含んで構成される。パリティデータ生成部13は、データ分割部12からn個のデータブロックを受け、各データブロックについて、たとえば次の2つの公知の方法のいずれかの処理を行うことでパリティデータを生成する。
(Parity data generator)
The parity
パリティデータ生成部13は、n個のデータブロックのうちの2個以上のデータブロックの排他的論理和を演算することによって、当該2個以上のデータブロックのパリティデータを生成することができる。このとき、排他的論理和に供されるデータブロックは、たとえばデータブロックの分割個数nと、データブロックの送信先(保管先)となるデータ保管装置3の個数とに基づいて決定される。一例として、9個のデータブロックを3個のデータ保管装置に保管する場合には、(9÷3=)3個のデータブロックの排他的論理和を演算する。
The parity
2個以上のデータブロックについてパリティデータを生成する場合、データ送信部15による後述のデータブロック群の形成処理におけるグルーピングの形態を参照してパリティデータを生成することができる。望ましくは、各データブロック群から1つずつデータブロックを選択し、それらのデータブロックについてパリティデータを生成する。
When generating parity data for two or more data blocks, the parity data can be generated with reference to a grouping form in a data block group forming process described later by the
また、パリティデータ生成部13は、データブロック(「0」、「1」の配列からなるデジタルデータ)を単位データ(たとえば7ビット、8ビット等)ごとに区切るとともに、各単位データ中における「0」又は「1」の個数が偶数個であるか奇数個であるか(パリティビット)を求め、全ての単位データのパリティビットを配列させてパリティデータとすることもできる。
In addition, the parity
パリティデータ生成部13により生成された各データブロックのパリティデータは、データ送信部15に送られる。
The parity data of each data block generated by the parity
(チェックID生成部)
チェックID生成部14は、データ分割部12により得られたn個のデータブロックのそれぞれのチェック情報(チェックID)を生成する本発明の「チェック情報生成手段」の一例に相当するものであり、CPU100を含んで構成される。
(Check ID generator)
The check
チェックID生成部14が実行する処理の前提として、データ送信部15は、後述のように、データ分割部12から送られたn個のデータブロックに基づいて、各データ保管装置3に送信されるデータブロック群を形成する処理を行う。チェックID生成部14は、形成された各データブロック群ごとにチェックIDを生成する。このチェックIDとしては、たとえば、各データブロック群のパリティビット(前述)を適用することが可能である。なお、このチェックIDは、パリティビットに限定されるものではなく、対応するデータブロック群のデータ構造を反映する任意の情報を用いることができる。
As a premise of processing executed by the check
同様に、データ送信部15は、パリティデータ生成部13から送られたパリティデータに基づいてパリティデータ群を形成する(後述)。チェックID生成部14は、各パリティデータ群についてそのチェックIDを生成する。
Similarly, the
チェックID生成部14により生成されたチェックIDは、データ送信部15に送られる。
The check ID generated by the check
(データ送信部)
データ送信部15は、データ分割部12により得られたn個のデータブロックを広域ネットワークを通じて分散してデータ保管装置3に送信し保管させる本発明の「送信手段」の一例に相当するものであり、CPU100及び広域通信インターフェイス141を含んで構成される。また、データ送信部15は、パリティデータ生成部13により生成されたパリティデータをデータ保管装置3に送信する処理も行う。
(Data transmission part)
The
データ送信部15は、データ分割部12からn個のデータブロックを受けると、それらの送信先となるデータ保管装置3の個数のデータブロック群を形成する処理を行う。たとえば、各々等しいデータ量の9個のデータブロックの送信先として3個のデータ保管装置3を用いる場合、データ送信部15は、これら9個のデータブロックをたとえば3個ずつグルーピングして3つのデータブロック群を形成する。なお、データブロックの個数とその送信先の個数とが同じ場合など、その送信先にデータブロックを1つだけ送信する場合でも、そのデータブロックを「データブロック群」と称することとする。
When the
データ送信部15は、隣接するデータブロック(つまりデータが連続するデータブロック)を同一のデータブロック群に含めないようにグルーピングすることが望ましい。また、複数の保管データを一度に保管する場合においては、各保管データの全てのデータブロックを同一のデータブロック群に含めないようにグルーピングすることが望ましい。
The
また、データ送信部15は、パリティデータ生成部14から受けたパリティデータに基づき、1つ以上のパリティデータ群を形成する。パリティデータ群の個数は、あらかじめ設定(あるいは要求)されたパリティデータの送信先(保管先)となるデータ保管装置3の個数とされる。
In addition, the
更に、データ送信部15は、各データブロック群及び各パリティデータ群に対して、チェックID生成部14により生成されたチェックIDを付加する処理を行う。チェックIDは、データブロック群やパリティデータ群のたとえば末尾部分に付加される。
Further, the
データ送信部15による以上の処理により、データブロック群にそのチェックIDが付加された複数の送信データと、パリティデータ群にそのチェックIDが付加された1以上の送信データとが形成される。
Through the above processing by the
データ送信部15は、各送信データの送信先となるデータ保管装置3を指定するとともに、広域ネットワーク1000を通じて各送信データを指定送信先に送信する。このとき、各送信データのたとえばヘッダには、データ保管装置3にデータの保管を要求するコマンドが付加される。
The
データ保管装置3は、この送信データを受信すると、上記コマンドにしたがって当該送信データを保管(格納)する。以下、各データ保管装置3に保管された送信データを「保管部分データ」と呼ぶことがある。
When receiving the transmission data, the
なお、送信データを受信したときに、チェックIDを用いてその送信データに改竄や欠損等が発生していないか確認する処理をデータ保管装置3に実行させることが望ましい。改竄等が発生した場合には、再送信を要求する信号をデータ送信サーバ1に返送する。また、改竄等がない場合には、適正に保管された旨のメッセージをコンピュータ端末4等に表示させる信号をデータ送信サーバ1に返送する。
Note that when the transmission data is received, it is desirable to cause the
[データ復元サーバ]
次に、データ復元サーバ2の構成について説明する。データ復元サーバ2は、ローカルネットワーク1002を通じてコンピュータ端末5A、5B(以下、「コンピュータ端末5」と総称することがある。)から要求された処理を実行したり、あるいは、コンピュータ端末5に対してデータやプログラムを提供する処理などを実行する。特に、コンピュータ端末5から保管データの読出要求を受けて、その保管データをデータ保管装置3から読み出して復元し、要求元のコンピュータ端末5に送信する処理を実行する。この処理の実行に関わる構成を以下に説明する。
[Data recovery server]
Next, the configuration of the
〔ハードウェア構成〕
データ復元サーバ2は、データ送信サーバ1と同様のハードウェア構成を有する。すなわち、データ復元サーバ2には、図3に示すように、CPU100(等のマイクロプロセッサ)、RAM110、ROM120、ハードディスクドライブ(HDD)130及び通信インターフェイス(I/F)140が設けられている。これら各部はバス150を介して接続されている。また、LCDやCRT等のディスプレイや操作入力用のキーボードやマウス等のユーザインターフェイスが設けられていてもよい。
[Hardware configuration]
The
データ復元サーバ2に搭載されるデータ保管プログラム131は、後述のデータ読出処理、読出データ判断処理、データ再形成処理、データ復元処理等をデータ復号サーバ2に実行させるプログラムである。
The
また、通信インターフェイス140のローカル通信インターフェイス(I/F)142は、ローカルネットワーク1002を介してデータ通信を行うためのネットワークアダプタ等の通信機器を含んで構成される。
The local communication interface (I / F) 142 of the communication interface 140 is configured to include a communication device such as a network adapter for performing data communication via the
〔機能的構成〕
データ復元サーバ2の機能的構成について図2を参照しつつ説明する。
[Functional configuration]
A functional configuration of the
データ復元サーバ2には、読出要求受付部21、データ読出部22、読出データ判断部23、復元処理部24及び復元データ送信部27が設けられている。復元処理部24には、データ再形成部25とデータ復元部26とが設けられている。以下、これら各部の詳細についてそれぞれ説明する。なお、各部の動作の具体的な態様については、後述の[具体例]の項において説明する。
The
(読出要求受付部)
読出要求受付部21は、ローカル通信インターフェイス142を含んで構成され、コンピュータ端末5から送信された読出要求信号を受け付けて、その読出要求信号をデータ読出部22に伝送する処理を行う。また、読出要求信号はCPU100に送られ、CPU100はデータ保管プログラム131を起動させて後述する処理の制御を開始する。この読出要求受付部21は、本発明の「読出要求受付手段」の一例に相当する。
(Reading request reception part)
The read
(データ読出部)
データ読出部22は、読出要求受付部21から受けた読出要求信号が読み出しを要求する保管データに対応する保管部分データを、広域ネットワーク1000を通じてデータ保管装置3から読み出す本発明の「読出手段」の一例に相当する。読み出される保管部分データには、保管データのデータブロックを含むものと、そのパリティデータを含むものとがある。このデータ読出部22は、CPU100及びローカル通信インターフェイス142を含んで構成される。
(Data reading part)
The
より具体的には、データ読出部22は、読出要求信号から保管データの識別情報を取得し、この識別情報を含む信号を生成する。そして、この信号を広域ネットワーク1000を通じて各データ保管装置3に送信する。
More specifically, the
このとき、読み出すべき保管部分データの保管先が分かっている場合には、その保管先のデータ保管装置3にのみ選択的に信号を送信してもよい。このような信号の送信態様は、たとえば、データ送信サーバ1とデータ復元サーバ2とが保管先の情報を共有している場合や、後述の[変形例]にて説明するデータ送信サーバ1とデータ復元サーバ2とが同一の装置からなる場合などに適用可能である。
At this time, if the storage location of the storage partial data to be read is known, a signal may be selectively transmitted only to the
データ保管装置3は、データ復元サーバ2からの信号を受信すると、この信号から保管データの識別情報を取得し、この識別情報がヘッダに付加された保管部分データを検索する。そして、検索された保管部分データをデータ復元サーバ2に送信する。
When the
データ読出部22は、各データ保管装置3により送信された保管部分データを受信して読出データ判断部23に伝送する。データ読出部22により読み出された保管部分データを読出データと呼ぶことがある。
The
(読出データ判断部)
読出データ判断部23は、データ読出部22により読み出された各読出データ(データブロック(群)を含んでいる。)が適正に読み出されたかを判断する本発明の「判断手段」の一例に相当する。この読出データ判断部23は、CPU100を含んで構成される。
(Read data judgment unit)
The read
ここで、「適正に読み出された」とは、データ送信サーバ1のデータ分割部12により形成された元のデータブロックが、改竄や消失などの変更が発生していない状態で読み出されたことを意味するものとする。したがって、読み出されたデータブロックに改竄があったり一部が消失している場合や、データブロック全体が消失して何も読み出されなかった場合、読出データ判断部23は、当該データブロックは「適正に読み出されなかった」と判断する。
Here, “appropriately read” means that the original data block formed by the data dividing unit 12 of the
読出データ判断部23は、読出データからチェックIDを取得するとともに、チェックID生成部14と同じ要領で、その読出データ中のデータブロック(群)のチェックIDを生成し、取得したチェックIDと生成したチェックIDとが同一か否か判断することにより、読出データの適正判断を行う。
The read
それらが同一であると判断された場合、当該読出データ中のデータブロック(群)が適正に読み出されたものと判断し、その旨を示す信号をデータ読出部22に送る。データ読出部22は、この信号を受けると、対応する読出データを復元処理部24に送る。
If it is determined that they are the same, it is determined that the data block (group) in the read data has been properly read, and a signal indicating that is sent to the
一方、取得したチェックIDと生成したチェックIDとが同一でないと判断された場合には、当該読出データ中のデータブロック(群)が適正に読み出されなかったと判断し、その旨を示す信号(エラー信号)をデータ読出部22に送る。データ読出部22は、エラー信号を受けると、その読出データ中のデータブロック(群)のパリティデータ(群)を含む保管部分データを保管するデータ保管装置3に向けて、当該保管データの識別情報を含む信号を送信する。この信号を受けたデータ保管装置3は、目的の保管部分データを検索し、データ復元サーバ2に送信する。この保管部分データ(読出データ)は、データ読出部22により受信されて読出データ判断部23に送られる。
On the other hand, if it is determined that the acquired check ID and the generated check ID are not the same, it is determined that the data block (group) in the read data has not been properly read, and a signal ( Error signal) is sent to the
読出データ判断部23は、この読出データからチェックIDを取得するとともに、この読出データ中のパリティデータ(群)のチェックIDを生成し、それらの同一性を判断する。同一の場合、データ読出部22は、この読出データにフラグ等の判別情報を付加して復元処理部24に送る。同一でない場合には、当該パリティデータ(群)に対応するデータブロックを復元できない旨のメッセージ等をコンピュータ端末5に表示させる信号を出力する。
The read
なお、このようにしてパリティデータを含む保管部分データを取得する前に、適正に読み出されなかった読出データを再度読み出す工程を挟んでもよい。広域ネットワーク1000の通信状態による単なる伝送ミスの場合などには、この再度の読み出し処理によりデータを適正に取得できることがある。
In addition, before acquiring the storage partial data including the parity data in this way, a step of reading again the read data that has not been properly read may be interposed. In the case of a simple transmission error due to the communication state of the
(復元処理部)
復元処理部24は、データ読出部22により読み出された読出データ中のデータブロック(群)に基づいて保管データを復元する本発明の「復元手段」の一例に相当するものであり、CPU100を含んで構成される。この復元処理部24には、前述したように、データ再形成部25とデータ復元部26とが設けられている。
(Restore processing part)
The
復元処理部24は、前述のフラグ等の判別情報の有無を確認することで、読出データを振り分ける。具体的には、判別情報が付加されている読出データ(パリティデータを含んでいる。)についてはデータ再形成部25に振り分け、判別情報が付加されていない読出データ(データブロックを含んでいる。)についてはデータ復元部26に振り分ける。なお、パリティデータがパリティビットを用いて生成された場合には、適正に読み出されなかった読出データ(データブロックを含んでいる。)についてもデータ再形成部25に振り分ける。
The
(データ再形成部)
データ再形成部25は、当該判断に対応して読み出された読出データ中のパリティデータ(群)に基づいて、適正に読み出されなかったと判断されたデータブロックを再形成する本発明の「再形成手段」の一例に相当する。
(Data reconstruction part)
The
パリティデータが排他的論理和を用いて生成された場合、データ再形成部25は、従来と同様に、そのパリティデータと、適正に読み出された他のデータブロックとの排他的論理和を演算して、適正に読み出されなかったデータブロックを再形成する。また、パリティデータがパリティビットを用いて生成された場合には、適正に読み出されなかったデータブロックを、パリティビットを用いて単位データごとに修復することにより、そのデータブロックを再形成する。
When the parity data is generated using exclusive OR, the
再形成されたデータブロックは、データ復元部26に送られる。
The reconstructed data block is sent to the
(データ復元部)
全ての読出データが適正に読み出された場合、データ復元部26には、それら読出データが入力される。データ復元部26は、それら読出データ中のデータブロックを元の配列順に繋げることにより保管データを復元する。このとき、データブロックの配列は、各読出データのヘッダに付加されたセパレータ情報(前述)などを参照して認識される。
(Data restoration part)
When all the read data is read properly, the read data is input to the
一方、適正に読み出されなかった読出データが存在した場合、データ復元部26には、適正に読み出された読出データ(データブロックを含んでいる。)と、適正に読み出されなかった読出データについて再形成されたデータブロックとが入力される。データ復元部26は、これらのデータブロックを元の配列順に繋げることにより保管データを復元する。
On the other hand, when there is read data that has not been read properly, the
復元された保管データは、復元データ送信部27に送られる。
The restored stored data is sent to the restored
(復元データ送信部)
復元データ送信部27は、ローカル通信インターフェイス142を含んで構成され、復元処理部24により復元された保管データを読出要求元のコンピュータ端末5に送信する。
(Restored data transmission unit)
The restored
[動作]
以上のように構成された本実施形態に係るデータ保管システムの動作の一例について説明する。図4に示すフローチャートは、データ保管装置3にデータを保管させるための動作を表す。図5に示すフローチャートは、データ保管装置3からデータを読み出すための動作を表す。
[Operation]
An example of the operation of the data storage system according to this embodiment configured as described above will be described. The flowchart shown in FIG. 4 represents an operation for causing the
〔データ保管処理;図4〕
図4のフローチャートを参照して、データ保管処理について説明する。まず、ユーザが、コンピュータ端末4により保管データを指定して保管要求の操作を行うと(S1)、コンピュータ端末4からデータ送信サーバ1に保管データと保管要求信号が入力される(S2)。
[Data storage processing; Fig. 4]
The data storage process will be described with reference to the flowchart of FIG. First, when the user designates storage data by the
データ送信サーバ1は、保管要求受付部11が受信した保管データと保管要求信号を、データ分割部12によってn個のデータブロックに分割する(S3)。このとき、所定の情報(前述)が各データブロックに付与される。
The
続いて、パリティデータ生成部13が、これらn個のデータブロックのそれぞれのパリティデータを生成する(S4)。ここで、前述のように、複数のデータブロックについてパリティデータを生成してもよい。
Subsequently, the parity
データ送信部15は、n個のデータブロックをグルーピングして、それらの送信先となるデータ保管装置3の個数n′(2≦n′≦n)のデータブロック群を形成する(S5)。また、データ送信部15は、パリティデータ生成部14が生成した各データブロックのパリティデータをグルーピングして、m′(1≦m′≦n)個のパリティデータ群を形成する(S6)。
The
チェックID生成部14が、各データブロック群及び各パリティデータ群のチェックIDを生成し(S7)、データ送信部15が、各データブロック群及び各パリティデータ群に、対応するチェックIDを付加する(S8)。それにより、データブロック群とチェックIDとを含むn′個の送信データと、パリティデータ群とチェックIDとを含むm′個の送信データとが形成される。
The check
データ送信部15は、広域ネットワーク1000を通じ、各送信データを指定されたデータ保管装置3に送信する(S9)。
The
送信データを受信したデータ保管装置3は、その送信データが適正に伝送されたかをチェックIDを用いて判断する(S10)。送信データが適正に伝送された場合(S10;Y)、データ保管装置3は、その送信データを格納するとともに(S11)、保管処理の完了を示す信号をデータ送信サーバ1に返送する(S12)。データ送信サーバ1は、この信号を全ての送信先から受信したことに対応して、保管処理が完了した旨のメッセージを要求元のコンピュータ端末4に表示させ(S13)、データ保管処理を終了する。
The
一方、送信データが適正に伝送されなかった場合(S10;N)、データ保管装置3は、再送信を要求する信号をデータ送信サーバ1に返送し(S14)、データ送信サーバ1は、この信号に応じて当該送信データを再送信する(S15)。ここで、再送信回数(たとえば3回)をあらかじめ設定しておき、その回数だけ再送信しても適正に伝送されない場合(S16;Y)には、データの保管に失敗した旨を示すエラーメッセージをコンピュータ端末4に表示させ(S17)、データ保管処理を終了する。
On the other hand, when the transmission data is not properly transmitted (S10; N), the
〔データ読出処理;図5〕
図5のフローチャートを参照して、データ読出処理について説明する。まず、ユーザが、コンピュータ端末5により保管データを指定して読出要求の操作を行うと(S21)、コンピュータ端末5からデータ復元サーバ2に読出要求信号が入力される(S22)。
[Data read processing; FIG. 5]
The data reading process will be described with reference to the flowchart of FIG. First, when the user designates storage data by the
データ復元サーバ2は、データ読出部22により、読出要求された保管データに対応するn個の保管部分データ(データブロックを含むもの)を、広域ネットワーク1000を通じてデータ保管装置3からそれぞれ読み出す(S23)。読出データ判断部23は、各保管部分データ(読出データ)が適正に読み出されたか否か判断する(S24)。
In the
なお、パリティデータを含む保管部分データについても、ステップS23で読み出すようにしてもよい。 Note that storage partial data including parity data may also be read in step S23.
n個の読出データが全て適正に読み出されたと判断された場合(S24;Y)、復元処理部24のデータ復元部26は、これら読出データのn個のデータブロックに基づいて保管データを復元する(S25)。そして、復元された保管データを、読出要求元のコンピュータ端末5に送信して(S26)、データ読出処理を終了する。
When it is determined that all the n read data have been properly read (S24; Y), the
一方、n個の読出データのうち適正に読み出されなかったと判断されたものが存在する場合(S24;N)、この読出データ(「不適正読出データ」と呼ぶ。)について、次の処理を行う。 On the other hand, if there is n read data that is determined not to be read properly (S24; N), the following processing is performed for this read data (referred to as “inappropriate read data”). Do.
ここで、2台以上のデータ保管装置3からの読出処理が同時に不適正と判断されることはほとんど無いので、以下、1台のデータ保管装置3からの読出処理が不適正であった場合について説明する。
Here, since it is rarely determined that read processing from two or more
まず、データ読出部22が、不適正読出データ中のデータブロックのパリティデータを含む保管部分データを保管するデータ保管装置3から、その保管部分データを読み出す(S27)。読出データ判断部23は、この保管部分データが適正に読み出されたか判断する(S28)。
First, the
適正に読み出されなかったと判断された場合(S28;N)、要求された保管データを復元できない旨のメッセージ(エラーメッセージ)をコンピュータ端末5に表示させ(S29)、データ読出処理を終了する。なお、適正に読み出されたデータブロックを用いて、保管データを部分的に復元するようにしてもよい。 When it is determined that the data has not been properly read (S28; N), a message (error message) indicating that the requested stored data cannot be restored is displayed on the computer terminal 5 (S29), and the data reading process is terminated. Note that the stored data may be partially restored using the data block that has been properly read.
一方、適正に読み出されたと判断された場合(S28;Y)、データ再形成部25は、当該保管部分データ中のパリティデータ(群)に基づいて、不適正読出データ中のデータブロックを再形成する(S30)。更に、データ復元部26は、適正に読み出された読出データ中のデータブロックと、再形成された不適正読出データ中のデータブロックとに基づいて保管データを復元する(S31)。そして、復元された保管データを、読出要求元のコンピュータ端末5に送信して(S32)、データ読出処理を終了する。
On the other hand, when it is determined that the data has been properly read (S28; Y), the
[具体例]
このような本実施形態のデータ保管処理及びデータ読出処理の具体例について、図6を参照しつつ説明する。同図は、2つの保管データを同時に保管する例を示している。なお、データ保管装置3は、4台設置されているものとする(N=4)。
[Concrete example]
A specific example of the data storage process and the data read process of the present embodiment will be described with reference to FIG. This figure shows an example of storing two stored data simultaneously. Note that four
〔データ保管処理の具体例〕
図6(A)は、保管要求がなされた2つの保管データD、Eを示す(S1、S2)。データ送信サーバ1のデータ分割部12は、図6(B)に示すように、保管データDを5個のデータブロックD1、D2、D3、D4、D5に分割するとともに、保管データEを4個のデータブロックE1、E2、E3、E4に分割して、全体として9個のデータブロックを形成する(S3)。
[Specific example of data storage processing]
FIG. 6A shows two storage data D and E for which a storage request has been made (S1, S2). As shown in FIG. 6B, the data dividing unit 12 of the
ここで、分割個数n=k×(N−1)=3×(4−1)=9である。この分割個数nと、データブロックの保管先となるデータ保管装置3の個数(ここではN−1=3)とに基づいて、ステップS5でのグルーピングの形態が決定される。本例では、n=9、N−1=3であることを考慮して、9個のデータブロックD1〜D5、E1〜E4を、この順序で3つおきにグルーピングする。
Here, the division number n = k × (N−1) = 3 × (4-1) = 9. Based on the division number n and the number of
パリティデータ生成部13は、このグルーピングの形態に基づき、各グループ(データブロック群)から1つずつデータブロックを選択し、選択された3つのデータブロックについてパリティデータを生成する。それにより、図6(C)に示す3つのパリティデータP(D1+D2+D3)、P(D4+D5+E1)、P(E2+E3+E4)が生成される。
The parity
データ送信部15は、図6(C)に示すように、データブロックD1、D4、E2をグルーピングしてデータブロック群G1を形成し、データブロックD2、D5、E3をグルーピングしてデータブロック群G2を形成し、データブロックD3、E1、E4をグルーピングしてデータブロック群G3を形成する(S5)。また、パリティデータP(D1+D2+D3)、P(D4+D5+E1)、P(E2+E3+E4)をグルーピングしてパリティデータ群Pを形成する(S6)。
As shown in FIG. 6C, the
また、データ送信部15は、各データブロック群G1、G2、G3及びパリティデータ群PにチェックIDを付加する(S7、S8)。それにより、図6(D)に示すように、データブロック群とチェックIDとを含む3個の送信データT1、T2、T3と、パリティデータ群とチェックIDとを含む1個の送信データT4とが形成される。
In addition, the
データ送信部15は、送信データT1をデータ保管装置3−1に送信し、送信データT2をデータ保管装置3−2に送信し、送信データT3をデータ保管装置3−3に送信し、送信データT4をデータ保管装置3−4に送信して、それぞれ保管させる(S9〜S13)。適正に伝送されなかった場合の処理(S14〜S17)については、上記[動作]の項と同様であるため説明を省略する。
The
〔データ読出処理の具体例〕
引き続き図6を参照する。データ保管装置3−1、3−2、3−3、3−4には、図6(D)の保管部分データT1、T2、T3、T4がそれぞれ格納されている。保管データD、Eの読出要求がなされると(S21、S22)、データ復元サーバ2のデータ読出部22は、データ保管装置3−1、3−2、3−3から、保管部分データT1、T2、T3をそれぞれ読み出す(S23)。
[Specific example of data read processing]
Still referring to FIG. The data storage devices 3-1, 3-2, 3-3, and 3-4 store storage partial data T1, T2, T3, and T4 shown in FIG. 6D, respectively. When the reading request for the storage data D and E is made (S21 and S22), the
保管部分データ(読出データ)T1、T2、T3が全て適正に読み出されたと判断された場合(S24;Y)、データ復元部26は、読出データT1、T2、T3中のデータブロック群G1、G2、G3にそれぞれ含まれるデータブロック「D1、D4、E2」、「D2、D5、E3」、「D3、E1、E4」に基づき、保管データD、Eをそれぞれ復元する(S25)。
When it is determined that all the stored partial data (read data) T1, T2, and T3 have been properly read (S24; Y), the
具体的には、読出データT1、T2、T3から9個のデータブロックを取得するとともに、データの識別情報やセパレータ情報(前述)を参照してこれらデータブロックの配列を取得する。それにより、保管データDを構成するデータブロックの配列が「D1、D2、D3、D4、D5」であること、及び、保管データEを構成するデータブロックの配列が「E1、E2、E3、E4」であることが得られる。そして、この配列にしたがってデータブロックD1、D2、D3、D4、D5をこの配列順に繋げることにより保管データDを復元し、データブロックE1、E2、E3、E4をこの配列順に繋げることにより保管データEを復元する。 Specifically, nine data blocks are acquired from the read data T1, T2, and T3, and an array of these data blocks is acquired with reference to data identification information and separator information (described above). Thereby, the arrangement of the data blocks constituting the storage data D is “D1, D2, D3, D4, D5”, and the arrangement of the data blocks constituting the storage data E is “E1, E2, E3, E4”. Is obtained. Then, the storage data D is restored by connecting the data blocks D1, D2, D3, D4, D5 in this arrangement order according to this arrangement, and the storage data E is connected by connecting the data blocks E1, E2, E3, E4 in this arrangement order. To restore.
一方、3個の読出データT1、T2、T3のうち適正に読み出されなかったと判断されたものが存在する場合(S24;N)について説明する。ここでは、読出データT2が適正に読み出されなかったとする。 On the other hand, a case will be described in which there is data that is determined not to be read properly among the three read data T1, T2, and T3 (S24; N). Here, it is assumed that the read data T2 is not properly read.
まず、データ読出部22が、データ保管装置3−4から保管部分データT4を読み出す(S27)。保管部分データT4が適正に読み出されなかった場合(S28;N)、エラーメッセージが表示される(S29)。
First, the
一方、保管部分データT4が適正に読み出された場合(S28;Y)、データ再形成部25が、保管部分データT4中のパリティデータ群P(図6(C)参照)と、適正に読み出された保管部分データT1、T3を用いて、読出データT2中のデータブロックD2、D5、E3をそれぞれ再形成する(S30)。
On the other hand, when the storage partial data T4 is properly read (S28; Y), the
具体的には、(1)パリティデータP(D1+D2+D3)とデータブロックD1とデータブロックD3とに基づいてデータブロックD2を再形成し、(2)パリティデータP(D4+D5+E1)とデータブロックD4とデータブロックE1とに基づいてデータブロックD5を再形成し、(3)パリティデータP(E2+E3+E4)とデータブロックE2とデータブロックE4とに基づいてデータブロックE3を再形成する。模式的に表現すると、(1)(D1+D2+D3)−D1−D3=D2、(2)(D4+D5+E1)−D4−E1=D5、(3)(E2+E3+E4)−E2−E4=E3となる。 Specifically, (1) the data block D2 is reformed based on the parity data P (D1 + D2 + D3), the data block D1, and the data block D3, and (2) the parity data P (D4 + D5 + E1), the data block D4, and the data block The data block D5 is reconfigured based on E1, and (3) the data block E3 is reconfigured based on the parity data P (E2 + E3 + E4), the data block E2, and the data block E4. When expressed schematically, (1) (D1 + D2 + D3) −D1−D3 = D2, (2) (D4 + D5 + E1) −D4−E1 = D5, (3) (E2 + E3 + E4) −E2−E4 = E3.
データ復元部26は、適正に読み出された読出データT1、T3中のデータブロック(D1、D4、E2)、(D3、E1、E4)と、再形成された読出データT2中のデータブロック(D2、D5、E3)とに基づいて、保管データD、Eをそれぞれ復元する(S31)。この復元処理は、ステップS25と同様に行う。
The
[作用・効果]
本実施形態に係るデータ保管システムの作用及び効果について説明する。
[Action / Effect]
The operation and effect of the data storage system according to this embodiment will be described.
まず、本実施形態によれば、広域ネットワーク1000を通じて、地理的に離れた場所に設置された複数のデータ保管装置3に保管データを分散させて保管することができる。したがって、各データ保管装置3には、保管データの一部のみが格納されることとなる。それにより、たとえ或るデータ保管装置3からデータが漏洩したり盗難されたりしても、保管データ全体が漏洩、盗難等されることが無い。これは、広域ネットワーク1000を伝送中にデータが漏洩した場合も同様である。
First, according to the present embodiment, storage data can be distributed and stored in a plurality of
また、データ保管装置3は地理的に離れて設置されているため、保管データの全体を改竄したり盗難したりするには複数のデータ保管装置3からデータを改竄等する必要があるが、それは困難である。たとえば、1つのデータ保管装置3からのデータ漏洩が判明した場合には、他のデータ保管装置3に対するセキュリティを強化することができるので、更なるデータ漏洩を防止することが可能である。なお、データを電子化して複数のデータ保管装置に同一データを格納する従来の手法においては、1つのデータ保管装置からデータが漏洩すると全データが漏洩してしまうが、本実施形態ではそのようなことはない。
Further, since the
なお、「セキュリティ」とは、犯罪やユーザのミスなどに起因するデータの漏洩や改竄等に対する安全性確保対策だけでなく、地震や火災等の災害に起因するデータの消失等に対する安全性確保対策をも含むものとし、いわゆる「危機管理」と呼ばれるものに相当する。 “Security” means not only measures to ensure the safety of data leaks and tampering due to crimes and user errors, but also measures to ensure the safety of data loss due to disasters such as earthquakes and fires. It corresponds to what is called “crisis management”.
前述したように、連続するデータブロックを同一のデータブロック群に含めないようにすることで、各データ保管装置3に保管されるデータや、広域ネットワーク1000上を伝送されるデータから読み取れる有意義な情報の量を減少させることができる。すなわち、各データ保管装置3に格納されるデータや、広域ネットワーク1000上を一度に伝送されるデータは、連続性の無い複数のデータブロックを含んでいるが、そのデータから読み取れる有意義な情報は、各データブロックのデータ量程度となる。それにより、たとえデータが漏洩等しても、その意味を読み取ることが困難なために悪用されにくい。また、データを盗んでも有意義な情報を得にくいことから、漏洩等の発生自体を抑制することも期待される。
As described above, by not including consecutive data blocks in the same data block group, meaningful information that can be read from data stored in each
また、データ保管装置3に保管されているデータや伝送中のデータに改竄や消失が発生した場合でも、その改竄等されたデータをパリティデータを用いて再形成することができ、保管データを復元することができる。したがって、改竄等が発生した場合でも、保管データ全体を保護することが可能である。ここで、各パリティデータが、対応するデータブロックと異なるデータ保管装置3に保管されていることが重要である。なお、データの改竄等の発生の有無は、チェック情報(チェックID)によって簡単かつ効果的に判断することが可能である。
In addition, even if the data stored in the
このように、本実施形態に係るデータ保管システムによれば、災害等によるデータ消失や、犯罪等によるデータの漏洩・改竄などの様々な危険性に対するセキュリティの向上を図ることが可能である。 As described above, according to the data storage system according to the present embodiment, it is possible to improve security against various dangers such as data loss due to a disaster or the like, or data leakage / falsification due to a crime or the like.
また、本実施形態を適用するにあたり、暗号技術やパスワード技術等の他のセキュリティ保護策を講じた場合のように多大なコストが必要とされることもない。更に、オーバーヘッドの増大による装置性能の低下についても、パリティデータを用いたデータ再形成時にのみオーバーヘッドの増大が発生する可能性がある。つまり、暗号技術等を用いる場合には、データの送信時や受信時には常に暗号化処理や復号化処理等が実行されるために、装置性能の低下は恒常的なものとなるが、本実施形態に係る構成においては、災害や犯罪が発生した場合などの稀なケースにのみ、装置性能の低下が予想される。 In addition, when this embodiment is applied, a great amount of cost is not required unlike other security protection measures such as encryption technology and password technology. Furthermore, with regard to the deterioration of the apparatus performance due to the increase in overhead, there is a possibility that the increase in overhead occurs only at the time of data reconstruction using parity data. That is, when using encryption technology or the like, since the encryption process and the decryption process are always performed when data is transmitted or received, the apparatus performance is constantly degraded. In such a configuration, the apparatus performance is expected to deteriorate only in rare cases such as when a disaster or crime occurs.
このように、本実施形態に係るデータ保管システムによれば、システムの導入コストや運用コストの増加を効果的に抑制しつつも、セキュリティ能力の高いデータ保管システムを提供することが可能となる。 Thus, according to the data archiving system according to the present embodiment, it is possible to provide a data archiving system with high security capability while effectively suppressing an increase in system introduction cost and operation cost.
また、電子化したデータを保管するため、印刷メディアや記憶メディアを用いる場合のような保管スペースの問題やデータ取り出し時間の問題などは生じない。 In addition, since the computerized data is stored, there is no storage space problem or data extraction time problem as in the case of using a print medium or a storage medium.
[変形例]
本実施形態に係るデータ保管システムの変形例について説明する。なお、以下の変形例は、後述の第2の実施形態にも適宜に準用することが可能である。
[Modification]
A modification of the data storage system according to this embodiment will be described. Note that the following modifications can be applied to the second embodiment described later as appropriate.
上記実施形態では、N個のデータ保管装置3のうちの1つをパリティデータ保管用として用いるとともに、その他のN−1個にデータブロックを分散させて保管するように構成したが、データブロックやパリティデータの分散態様は、これに限定されるものではない。
In the above embodiment, one of the N
たとえば、データブロックとパリティデータの双方を、N個のデータ保管装置3に分散させるように構成できる。その一例を図7を参照して説明する。ここで、データ保管装置3の個数を3個とする(N=3)
For example, both data blocks and parity data can be configured to be distributed to N
図7(A)は、保管要求がなされた保管データFを示す。データ送信サーバ1のデータ分割部12は、図7(B)に示すように、保管データFを8個のデータブロックF1、F2、F3、F4、F5、F6、F7、F8に分割する。パリティデータ生成部13は、データブロックF1、F2のパリティデータP(1,2)と、データブロックF3、F4のパリティデータP(3,4)と、データブロックF5、F6のパリティデータP(5,6)と、データブロックF7、F8のパリティデータP(7,8)とをそれぞれ生成する。
FIG. 7A shows the storage data F for which a storage request has been made. As shown in FIG. 7B, the data dividing unit 12 of the
データ送信部15は、図7(C)に示すように、データブロックF1、パリティデータP(3,4)、データブロックF6及びデータブロックF7をグルーピングしてデータ群H1を形成し、データブロックF2、データブロックF3、パリティデータP(5,6)、及びデータブロックF8をグルーピングしてデータ群H2を形成し、パリティデータP(1,2)、データブロックF4、データブロックF5及びパリティデータP(7,8)をグルーピングしてデータ群H3を形成する。ここで、各パリティデータが、対応するデータブロックとは異なるデータ群に属するようにグルーピングを行うことが重要である。
As shown in FIG. 7C, the
更に、図示は省略するが、チェックID生成部14が、各データ群H1、H2、H3のチェックIDをそれぞれ生成し、データ送信部15が、各データ群H1、H2、H3にチェックIDを付加して3つの送信データを形成する。そして、データ送信部15は、データ群H1を含む送信データをデータ保管装置3−1に送信し、データ群H2を含む送信データをデータ保管装置3−2に送信し、データ群H3を含む送信データをデータ保管装置3−3に送信する。
Further, although not shown, the check
このようなデータの分散態様を適用しても、上記実施形態と同様のメリットを享受することができる。また、本変形例によれば、N個のデータ保管装置3のうちのいずれのデータが改竄されたり消去されたりしても、保管データを復元することが可能である。
Even when such a data distribution mode is applied, the same advantages as those of the above-described embodiment can be obtained. Further, according to the present modification, the stored data can be restored even if any of the N
上記実施形態では、データ送信サーバ1とデータ復元サーバ2とを異なる装置として構成したが、単一の装置に双方の機能を搭載することが可能である。その場合、データ送信サーバ1による処理(データ送信処理;図4参照)と、データ復元サーバ2による処理(データ復元処理;図5参照)との双方をコンピュータに実行させるデータ保管プログラム131を搭載すればよい。それにより、データの保管要求を行った装置を用いて、そのデータを読み出して復元することができるので、システムの利便性が向上する。なお、後述の第2の実施形態に係るデータ保管システムは、このような構成を適用したものである。
In the above embodiment, the
ここで、データ送信処理のみ実行可能な装置と、データ復元処理のみ実行可能な装置と、双方の処理を実行可能な装置とを含むシステムを構成することも可能である。また、システムに含まれるデータ送信装置の個数及びデータ復元装置の個数は、それぞれ任意である。 Here, it is also possible to configure a system including a device that can execute only the data transmission process, a device that can execute only the data restoration process, and a device that can execute both processes. Further, the number of data transmission devices and the number of data restoration devices included in the system are arbitrary.
上記実施形態のデータ保管システムは、本発明に係る様々な特徴的構成を備えている。本発明に係るデータ保管システムは、次のような構成を備えていれば十分である。 The data storage system of the above embodiment includes various characteristic configurations according to the present invention. The data storage system according to the present invention only needs to have the following configuration.
本発明に係る第1の構成は、以下に列挙する要素を備える:(1)広域ネットワーク1000に接続され、互いに地理的に離れた場所に設置された複数のデータ保管装置3;(2)データの保管要求を受け付ける保管要求受付部11と、そのデータをデータブロックに分割するデータ分割部12と、そのデータブロックを複数のデータ保管装置3に分散させて送信するデータ送信部15とを有するデータ送信サーバ1;(3)データの読出要求を受け付ける読出要求受付部21と、そのデータに対応するデータブロックをデータ保管装置3から読み出すデータ読出部22と、そのデータブロックに基づいてデータを復元する復元処理部24とを有するデータ復元サーバ2。この第1の構成は、本発明の基本構成である。
The first configuration according to the present invention includes the following elements: (1) A plurality of
この第1の構成によれば、互いに離れて設置されたデータ保管装置3に保管データを分散保管させるにより、データが漏洩等に対応できる。また、犯罪によるデータの盗み出しも困難となる。
According to the first configuration, the stored data is distributed and stored in the
本発明に係る第2の構成は、上記第1の構成に加えて、以下に列挙する特徴を備える:(1)データ送信サーバ1は、データ分割部12により得られた各データブロックのパリティデータを生成するパリティデータ生成部13を有する;(2)データ送信サーバ1のデータ送信部15は、各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置3に送信する;(3)データ復元サーバ2は、データ読出部22によりデータブロックが適正に読み出されたか判断する読出データ判断部23を有する;(4)データ読出部22は、適正に読み出されなかったと判断されたデータブロックのパリティデータをデータ保管装置から読み出す;(5)復元処理部24は、そのパリティデータに基づいてデータブロックを再形成するデータ再形成部25を有する;(6)復元処理部24は、適正に読み出されたと判断されたデータブロックと、再形成されたデータブロックとに基づいて、データを復元する。
The second configuration according to the present invention includes the following characteristics in addition to the first configuration: (1) The
この第2の構成によれば、データブロックに改竄や消失が発生した場合でも、パリティデータを用いてそのデータブロックを再形成でき、元のデータを復元することができる。 According to the second configuration, even when the data block is falsified or lost, the data block can be re-formed using the parity data, and the original data can be restored.
本発明に係る第3の構成は、上記第2の構成に加えて、以下に列挙する特徴を備える:(1)データ送信サーバ1は、データ分割部12により得られたデータブロックのチェックIDを生成するチェックID生成部14を有する;(2)データ送信部15は、各データブロックをそのチェックIDとともにデータ保管装置3に送信する;(3)データ読出部22は、データブロックをそのチェック情報とともにデータ保管装置3から読み出す;(4)読出データ判断部23は、読み出されたチェック情報に基づいて、そのデータブロックが適正に読み出されたかを判断する。
The third configuration according to the present invention has the following characteristics in addition to the second configuration described above: (1) The
この第3の構成によれば、データの改竄等の発生の有無を簡単かつ効果的に判断することができる。 According to the third configuration, it is possible to easily and effectively determine whether or not data has been tampered with.
本発明に係る第4の構成は、上記第2の構成において、パリティデータ保管用のデータ保管装置(たとえば3−N)を設けるとともに、その他のデータ保管装置3−1〜3−(N−1)にデータブロックを分散保管することを特徴とし、前述の変形例(図7参照)とともに、データブロック及びパリティデータの分散態様のバリエーションを提供するものである。 According to a fourth configuration of the present invention, in the second configuration, a data storage device (for example, 3-N) for storing parity data is provided, and other data storage devices 3-1 to 3- (N-1) are provided. The data block is distributed and stored, and the variation of the distribution mode of the data block and the parity data is provided together with the above-described modification (see FIG. 7).
〈第2の実施形態〉
上述した第1の実施形態に係るデータ保管システムは、広域ネットワーク上に配置された複数のデータ保管装置にデータを分散保管するように構成されていた。一方、本実施形態に係るデータ保管システムは、広域ネットワーク上のみならずローカルネットワーク上にもデータ保管装置を分散配置させることにより、保管データのセキュリティ向上を図るものである。
<Second Embodiment>
The data storage system according to the first embodiment described above is configured to store data in a distributed manner in a plurality of data storage devices arranged on a wide area network. On the other hand, the data storage system according to the present embodiment aims to improve the security of stored data by distributing data storage devices not only on a wide area network but also on a local network.
図8は、本実施形態に係るデータ保管システムの全体構成の一例を表している。このデータ保管システムは、広域ネットワーク1000に接続された第1の実施形態と同様のデータ保管装置3−1〜3−N(N≧1)と、広域ネットワーク1000及びローカルネットワーク1001にそれぞれ接続されたサーバ10と、ローカルネットワーク1001に接続されたデータ保管装置30と、ローカルネットワーク1001に接続されたコンピュータ端末40A、40B、40Cとを含んで構成される。
FIG. 8 shows an example of the overall configuration of the data storage system according to the present embodiment. This data storage system is connected to data storage devices 3-1 to 3-N (N ≧ 1) similar to the first embodiment connected to the
ここで、広域ネットワーク1000上のデータ保管装置3(第1のデータ保管装置)は、少なくとも1個設けられていれば十分である(第1の実施形態では複数個であった。)。また、ローカルネットワーク1001上のデータ保管装置30(第2のデータ保管装置)は、各データ保管装置3から地理的に離れた場所に設置されている。したがって、サーバ10も各データ保管装置3から離れた場所に設置されている。なお、データ保管装置30の設置個数は1個に限定されるものではなく、2個以上とすることも可能である。
Here, it is sufficient that at least one data storage device 3 (first data storage device) on the
サーバ10は、本発明の「データ処理装置」の一例に相当するものであり、第1の実施形態におけるデータ送信サーバ1及びデータ復元サーバ2の双方の機能を具備している。すなわち、図示は省略するが、サーバ10は、保管要求受付部11、データ分割部12、パリティデータ生成部13、チェックID生成部14、データ送信部15、読出要求受付部21、データ読出部22、読出データ判断部23、復元処理部24(データ再形成部25、データ復元部26を含む。)及び復元データ送信部27を備えている(図2参照)。これら各部は、第1の実施形態とほぼ同様に動作する。以下、第1の実施形態との相違点を説明する。
The
サーバ10のデータ送信部15は、データ分割部12によって得られた2以上のデータブロックのうちのいくつかを広域ネットワーク1000を通じてデータ保管装置3に(分散して)送信するとともに、その他のデータブロックをローカルネットワークを通じてデータ保管装置30に(分散して)送信するようになっている。
The
また、データ送信部15は、パリティデータ生成部13が生成した各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置3あるいはデータ保管装置30に送信する。これは、各データブロックとそのパリティデータとを異なるデータ保管装置3、30に送る送信データ中に含めるようにグルーピングすることで実現される(図7(C)参照)。
Further, the
サーバ10のデータ読出部22は、読出要求が受け付けられたデータに対応するデータブロックをデータ保管装置3、30からそれぞれ読み出すようになっている。データ復元部26は、このようにして読み出されたデータブロックに基づいてデータを復元する。
The
また、データ読出部22は、読出データ判断部23により適正に読み出されなかったと判断されたデータブロックがあった場合、当該データブロックのパリティデータを、その保管先のデータ保管装置3あるいはデータ保管装置30から読み出すようになっている。データ再構成部25は、このパリティデータに基づいて当該データブロックを再形成し、データ復元部26は、適正に取得されたデータブロックと、上記再形成されたデータブロックとに基づいて、データを復元する。
In addition, when there is a data block that is determined not to be read properly by the read
このような本実施形態に係るデータ保管システムによれば、広域ネットワーク1000に接続された1以上のデータ保管装置3と、ローカルネットワーク1001に接続された1以上のデータ保管装置30とを用いて、第1の実施形態と同様の処理(図4、図5参照)を実行することができる。
According to such a data storage system according to the present embodiment, using one or more
したがって、第1の実施形態と同様に、データ保管装置3、30のいずれかからデータが漏洩したり盗み出された場合や、データが広域ネットワーク1000を伝送しているときに漏洩等した場合であっても、保管データ全体が漏洩等することが無い。
Therefore, as in the first embodiment, there are cases where data is leaked or stolen from either of the
また、データ保管装置3は互いに地理的に離れた位置に設置されており、データ保管装置30は、データ保管装置3と地理的に離れた位置に設置されているため、保管データの全体を改竄したり盗難したりすることは困難である。
Further, since the
また、データ保管装置3、30に保管されているデータや伝送中のデータに改竄や消失が発生した場合でも、その改竄等されたデータをパリティデータを用いて再形成することができ、保管データを復元することができ、保管データ全体を保護することが可能である。
Even if data stored in the
このように、本実施形態に係るデータ保管システムによれば、災害等によるデータ消失や、犯罪等によるデータの漏洩・改竄などの様々な危険性に対するセキュリティの向上を図ることが可能である。 As described above, according to the data storage system according to the present embodiment, it is possible to improve security against various dangers such as data loss due to a disaster or the like, or data leakage / falsification due to a crime or the like.
更に、暗号技術等のセキュリティ保護策のように多大なコストが必要とされることもなく、オーバーヘッドの増大による装置性能の恒常的な低下を回避することが可能である。したがって、本実施形態によれば、コスト増加を抑制しつつセキュリティ能力の高いデータ保管システムを提供することが可能である。 In addition, a large amount of cost is not required unlike security protection measures such as encryption technology, and it is possible to avoid a permanent decrease in device performance due to an increase in overhead. Therefore, according to this embodiment, it is possible to provide a data storage system with high security capability while suppressing an increase in cost.
また、本実施形態に係るデータ保管システムによれば、次のような特有の作用、効果が奏される。本実施形態に係るデータ保管システムには、広域ネットワーク1000上のデータ保管装置3に加えて、サーバ10と同じローカルネットワーク1001上にもデータ保管装置30が設置され、これらのデータ保管装置3、30に保管データが分散されるようになっているので、保管データの少なくとも一部は、広域ネットワーク1000を経由せずに、ローカルネットワーク1001のみを通じて伝送されることとなる。したがって、広域ネットワーク1000を経由するデータが全て漏洩等した場合であっても、保管データ全体が漏洩等することがなく、有意義な情報が漏洩等する危険性を低減させることが可能である。
In addition, according to the data storage system according to the present embodiment, the following specific actions and effects are exhibited. In the data storage system according to the present embodiment, in addition to the
[その他]
第1、2の実施形態に係る処理をデータ送信サーバ1やデータ復元サーバ2やサーバ10に実行させるデータ保管プログラム131は、任意の記憶媒体(メディア)に、コンピュータ読み取り可能に記憶させることができる。その記憶媒体としては、フロッピー(登録商標)ディスク、CD−ROM、CD−R(W)、DVD−ROM、DVD−R(W)、DVD−RAM、MO、各種メモリカードなど、電気的方法、磁気的方法、光学的方法等の任意の物理的方法によってデータを記憶可能に構成されたものを使用することが可能である。
[Others]
The
以上に説明した構成は、本発明に係るデータ保管システムを好適に実施するための具体的構成の一例に過ぎないものである。したがって、本発明の要旨の範囲内における任意の変形を適宜に施すことが可能である。 The configuration described above is merely an example of a specific configuration for favorably implementing the data storage system according to the present invention. Therefore, arbitrary modifications within the scope of the present invention can be appropriately made.
1 データ送信サーバ
11 保管要求受付部
12 データ分割部
13 パリティデータ生成部
14 チェックID生成部
15 データ送信部
2 データ復元サーバ
21 読出要求受付部
22 データ読出部
23 読出データ判断部
24 復元処理部
25 データ再形成部
26 データ復元部
27 復元データ送信部
100 CPU
130 ハードディスクドライブ
131 データ保管プログラム
140 通信インターフェイス
141 広域通信インターフェイス
142 ローカル通信インターフェイス
3、3−1、3−2、・・・・、3−N、30 データ保管装置
4A、4B、4C、5A、5B、40A、40B、40C コンピュータ端末
10 サーバ
1000 広域ネットワーク
1001、1002 ローカルネットワーク
DESCRIPTION OF
DESCRIPTION OF
Claims (6)
前記広域ネットワークに接続され、データの保管要求を受け付ける保管要求受付手段と、前記保管要求が受け付けられたデータを2以上のデータブロックに分割する分割手段と、前記広域ネットワークを通じて、前記分割手段により得られた2以上のデータブロックを前記複数のデータ保管装置に分散して送信する送信手段とを有するデータ送信装置と、
前記広域ネットワークに接続され、データの読出要求を受け付ける読出要求受付手段と、前記読出要求が受け付けられたデータに対応する2以上のデータブロックを前記広域ネットワークを通じて前記複数のデータ保管装置から読み出す読出手段と、前記読み出された2以上のデータブロックに基づいて前記データを復元する復元手段とを有するデータ復元装置と、
を備えることを特徴とするデータ保管システム。 A plurality of data storage devices connected to a wide area network and installed geographically apart from each other;
A storage request receiving unit that is connected to the wide area network and receives a data storage request; a dividing unit that divides the data for which the storage request has been received into two or more data blocks; and obtained by the dividing unit through the wide area network. A data transmission device comprising: a transmission means for distributing and transmitting the two or more data blocks distributed to the plurality of data storage devices;
Read request accepting means connected to the wide area network and accepting a data read request; and read means for reading out two or more data blocks corresponding to the data for which the read request has been accepted from the plurality of data storage devices through the wide area network. And a data restoration device comprising restoration means for restoring the data based on the two or more read data blocks,
A data storage system comprising:
前記送信手段は、前記生成された各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置に送信し、
前記データ復元装置は、前記読出手段により読み出された各データブロックについて、その保管先のデータ保管装置から適正に読み出されたか判断する判断手段を更に有し、
前記読出手段は、適正に読み出されなかったと前記判断されたデータブロックのパリティデータを、その保管先のデータ保管装置から読み出し、
前記復元手段は、
前記読み出されたパリティデータに基づいて前記適正に読み出されなかったと判断されたデータブロックを再形成する再形成手段を含み、
前記判断手段により適正に読み出されたと判断されたデータブロックと、前記再形成されたデータブロックとに基づいて、前記データを復元する、
ことを特徴とする請求項1に記載のデータ保管システム。 The data transmission device further includes parity data generation means for generating parity data of each data block based on two or more data blocks obtained by the dividing means,
The transmission means transmits the generated parity data to a data storage device different from the transmission destination of the corresponding data block,
The data restoration device further includes a determination unit that determines whether each data block read by the reading unit has been properly read from the storage destination data storage device,
The reading means reads the parity data of the data block determined to have not been properly read from the data storage device of the storage destination,
The restoration means includes
Re-forming means for re-forming the data block determined not to be properly read based on the read parity data;
Restoring the data based on the data block determined to be properly read by the determination means and the re-formed data block;
The data storage system according to claim 1.
前記分割手段により得られた2以上のデータブロックのそれぞれのデータ構造を反映するチェック情報を生成するチェック情報生成手段を更に有し、
前記送信手段は、前記2以上のデータブロックをそのチェック情報とともにそれぞれ送信し、
前記データ復元装置の前記読出手段は、前記2以上のデータブロックをそのチェック情報とともにそれぞれ読み出し、
前記判断手段は、前記読み出された2以上のデータブロックのそれぞれについて、そのチェック情報に基づいて前記適正に読み出されたかを判断する、
ことを特徴とする請求項2に記載のデータ保管システム。 The data transmission device includes:
Check information generating means for generating check information reflecting the data structure of each of the two or more data blocks obtained by the dividing means;
The transmission means transmits the two or more data blocks together with the check information,
The reading means of the data restoration device reads the two or more data blocks together with their check information,
The determination means determines whether each of the two or more read data blocks has been properly read based on the check information.
The data storage system according to claim 2.
前記広域ネットワーク及び前記ローカルネットワークのそれぞれに接続され、データの保管要求を受け付ける保管要求受付手段と、前記保管要求が受け付けられたデータを2以上のデータブロックに分割する分割手段と、前記広域ネットワーク及び前記ローカルネットワークを通じて、前記分割手段により得られた2以上のデータブロックを前記第1及び第2のデータ保管装置に分散して送信する送信手段と、データの読出要求を受け付ける読出要求受付手段と、前記読出要求が受け付けられたデータに対応する2以上のデータブロックを前記広域ネットワーク及び前記ローカルネットワークを通じて前記第1及び第2のデータ保管装置から読み出す読出手段と、前記読み出された2以上のデータブロックに基づいて前記データを復元する復元手段とを有するデータ処理装置と、
を備えることを特徴とするデータ保管システム。 One or more first data storage devices connected to a wide area network and geographically separated from each other, and installed at a location geographically separated from the first data storage device and connected to a local network One or more second data storage devices installed geographically away from the first storage device;
A storage request receiving unit that is connected to each of the wide area network and the local network and receives a data storage request; a dividing unit that divides the data for which the storage request has been received into two or more data blocks; A transmission means for distributing and transmitting two or more data blocks obtained by the dividing means to the first and second data storage devices through the local network; a read request receiving means for receiving a data read request; Read means for reading two or more data blocks corresponding to the data for which the read request has been accepted from the first and second data storage devices through the wide area network and the local network, and the two or more read data Restore the data based on the block A data processing device having a means,
A data storage system comprising:
前記送信手段は、前記パリティデータ生成手段により生成された各パリティデータを、対応するデータブロックの送信先とは異なる前記第1又は第2のデータ保管装置に送信し、
前記読出手段は、前記判断手段により適正に読み出されなかったと判断されたデータブロックのパリティデータを、その保管先の前記第1又は第2のデータ保管装置から読み出し、
前記復元手段は、前記読み出されたパリティデータに基づいて前記適正に読み出されなかったと判断されたデータブロックを再形成する再形成手段を含み、前記判断手段により適正に読み出されたと判断されたデータブロックと、前記再形成されたデータブロックとに基づいて、前記データを復元する、
ことを特徴とする請求項5に記載のデータ保管システム。
The data processing device is configured to generate parity data of each data block based on two or more data blocks obtained by the dividing unit, and each data block read by the reading unit. A judgment means for judging whether the data is properly read from the first or second data storage device of the storage destination;
The transmission means transmits each parity data generated by the parity data generation means to the first or second data storage device different from the transmission destination of the corresponding data block,
The reading unit reads the parity data of the data block determined not to be properly read by the determining unit from the first or second data storage device of the storage destination,
The restoration means includes a reforming means for reforming the data block determined not to be properly read based on the read parity data, and is determined to have been properly read by the determination means. Restoring the data based on the data block and the reconstructed data block;
The data storage system according to claim 5, wherein:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005257383A JP2007072643A (en) | 2005-09-06 | 2005-09-06 | Data storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005257383A JP2007072643A (en) | 2005-09-06 | 2005-09-06 | Data storage system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007072643A true JP2007072643A (en) | 2007-03-22 |
Family
ID=37934037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005257383A Withdrawn JP2007072643A (en) | 2005-09-06 | 2005-09-06 | Data storage system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007072643A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013065135A1 (en) * | 2011-11-01 | 2013-05-10 | 株式会社野村総合研究所 | Data sharing system |
JP2013222272A (en) * | 2012-04-13 | 2013-10-28 | Lapis Semiconductor Co Ltd | Semiconductor device, confidential data management system, and confidential data management method |
JP2015138198A (en) * | 2014-01-23 | 2015-07-30 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Data concealing method, data concealing device, and data concealing program |
JP2015165833A (en) * | 2014-03-03 | 2015-09-24 | 株式会社東芝 | medical image storage apparatus |
JP2017116960A (en) * | 2017-03-17 | 2017-06-29 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Data concealing method, data concealing device, and data concealing program |
-
2005
- 2005-09-06 JP JP2005257383A patent/JP2007072643A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013065135A1 (en) * | 2011-11-01 | 2013-05-10 | 株式会社野村総合研究所 | Data sharing system |
WO2013065545A1 (en) * | 2011-11-01 | 2013-05-10 | 株式会社野村総合研究所 | Data sharing system |
JP2013222272A (en) * | 2012-04-13 | 2013-10-28 | Lapis Semiconductor Co Ltd | Semiconductor device, confidential data management system, and confidential data management method |
JP2015138198A (en) * | 2014-01-23 | 2015-07-30 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Data concealing method, data concealing device, and data concealing program |
JP2015165833A (en) * | 2014-03-03 | 2015-09-24 | 株式会社東芝 | medical image storage apparatus |
JP2017116960A (en) * | 2017-03-17 | 2017-06-29 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Data concealing method, data concealing device, and data concealing program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6118874A (en) | Encrypted data recovery method using split storage key and system thereof | |
JP3871996B2 (en) | Data division management method and program | |
KR101405720B1 (en) | Accelerated cryptography with an encryption attribute | |
JP2008103936A (en) | Secret information management device, and secret information management system | |
TWI417758B (en) | Data processing device, data processing system, and data processing method | |
JP2008250369A (en) | Management method of secrete data file, management system and proxy server therefor | |
US20120102321A1 (en) | Secret information distribution system, secret information distribution method and program | |
JP4539952B2 (en) | Information distributed storage system, apparatus, program and recording medium | |
CN102668445A (en) | Embedded sfe: offloading server and network using hardware token | |
US20150067334A1 (en) | Delivering data over a network | |
CN110650191A (en) | Data read-write method of distributed storage system | |
EP3817323A1 (en) | Encryption processing system, encryption processing method, and program | |
JP2007072643A (en) | Data storage system | |
JP2007164266A (en) | Database management method and personal information management system | |
JP2009049731A (en) | Encryption method, decryption method, and key management method | |
JP2005141436A5 (en) | ||
CN110912892B (en) | Certificate management method and device, electronic equipment and storage medium | |
CN109818965B (en) | Personal identity verification device and method | |
CN112463454B (en) | Data recovery method, server, terminal device and storage medium | |
CN110086805B (en) | Information security transmission method based on cross-domain distributed micro-service architecture | |
US20110320813A1 (en) | Network system and authentication method thereof | |
CN111478906B (en) | Anti-attack method, equipment and storage medium for parallel chain private transaction | |
CN106487509A (en) | A kind of method for generating key and host equipment | |
JP2021140299A (en) | Data matching system, information processing apparatus, and data matching method | |
KR100414188B1 (en) | Method and apparatus for protecting digital documents |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081202 |