JP2007072643A - Data storage system - Google Patents

Data storage system Download PDF

Info

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
Application number
JP2005257383A
Other languages
Japanese (ja)
Inventor
Makoto Sunaoka
誠 砂岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Canon Medical Systems Corp
Original Assignee
Toshiba Corp
Toshiba Medical Systems Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Medical Systems Corp filed Critical Toshiba Corp
Priority to JP2005257383A priority Critical patent/JP2007072643A/en
Publication of JP2007072643A publication Critical patent/JP2007072643A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To improve security to losing, leakage, and falsification or the like of data by disaster, crime or the like. <P>SOLUTION: A wide-area network 1000 is connected with: a data transmission server 1; a data restoration server 2; and a plurality of data storage devices 3 installed in places geographically apart from each other. The data transmission server 1 has: a data division part 12 dividing the data performed with storage requirement into at least two data blocks; and a data transmission part 15 distributing at least the two data blocks to the plurality of data storage devices 3 via the wide-area network 1000 and transmitting them. The data restoration server 2 has: a data reading part 22 reading at least the two data blocks corresponding to the data performed with reading requirement from the plurality of data storage devices 3 via the wide-area network 1000; and a restoration processing part 24 restoring the data on the basis of at least the two read data blocks. <P>COPYRIGHT: (C)2007,JPO&INPIT

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, Patent Document 1 below discloses a data security system using an encryption technique. The system described in this document is configured to encrypt the transmission information to be secured between the transmission side and the reception side. On the transmission side, the transmission information is transmitted in a predetermined format, the transmission information is encrypted to obtain message authentication code information, and the message authentication code information is transmitted after transmitting the transmission information. On the receiving side, the received transmission information is encrypted and the message authentication code information is obtained independently, and both message authentication code information is collated to authenticate the transmission information with a match. The transmission information is stored.

特開平10−79732号公報Japanese Patent Laid-Open No. 10-79732

しかしながら、上述したような既存の手法においては、あらゆる危険性を考慮すると、保管されているデータのセキュリティが十分に確保されているとは言い難い。   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 claim 1 is characterized in that a plurality of data storage devices connected to a wide area network and installed geographically apart from each other, and connected to the wide area network, A storage request receiving unit that receives a storage request, a dividing unit that divides the data for which the storage request is received into two or more data blocks, and two or more data blocks obtained by the dividing unit through the wide area network Corresponding to the data for which the read request is accepted, the data transmission device having a transmission means for distributing and transmitting to a plurality of data storage devices, the read request accepting means for receiving the data read request connected to the wide area network Read two or more data blocks from the plurality of data storage devices through the wide area network A reading unit, a data storage system, characterized by and a data recovery device having a restoring means for restoring the data based on the read two or more data blocks were.

また、請求項2に記載の発明は、請求項1に記載のデータ保管システムであって、前記データ送信装置は、前記分割手段により得られた2以上のデータブロックに基づいて、各データブロックのパリティデータを生成するパリティデータ生成手段を更に有し、前記送信手段は、前記生成された各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置に送信し、前記データ復元装置は、前記読出手段により読み出された各データブロックについて、その保管先のデータ保管装置から適正に読み出されたか判断する判断手段を更に有し、前記読出手段は、適正に読み出されなかったと前記判断されたデータブロックのパリティデータを、その保管先のデータ保管装置から読み出し、前記復元手段は、前記読み出されたパリティデータに基づいて前記適正に読み出されなかったと判断されたデータブロックを再形成する再形成手段を含み、前記判断手段により適正に読み出されたと判断されたデータブロックと、前記再形成されたデータブロックとに基づいて、前記データを復元する、ことを特徴とする。   The invention according to claim 2 is the data archiving system according to claim 1, wherein the data transmitting device is configured to store each data block based on two or more data blocks obtained by the dividing unit. Parity data generation means for generating parity data is further provided, wherein the transmission means transmits the generated parity data to a data storage device different from the transmission destination of the corresponding data block, and the data restoration device The data block read by the reading unit further includes a determination unit that determines whether the data block has been properly read from the data storage device of the storage destination; The parity data of the determined data block is read from the data storage device at the storage destination, and the restoration means is configured to read the read data block. A data block determined to have been properly read by the determination means, and a data block determined to be read properly by the determination means; The data is restored based on the data block.

また、請求項3に記載の発明は、請求項2に記載のデータ保管システムであって、前記データ送信装置は、前記分割手段により得られた2以上のデータブロックのそれぞれのデータ構造を反映するチェック情報を生成するチェック情報生成手段を更に有し、前記送信手段は、前記2以上のデータブロックをそのチェック情報とともにそれぞれ送信し、前記データ復元装置の前記読出手段は、前記2以上のデータブロックをそのチェック情報とともにそれぞれ読み出し、前記判断手段は、前記読み出された2以上のデータブロックのそれぞれについて、そのチェック情報に基づいて前記適正に読み出されたかを判断する、ことを特徴とする。   The invention according to claim 3 is the data archiving system according to claim 2, wherein the data transmitting device reflects each data structure of two or more data blocks obtained by the dividing means. Check information generating means for generating check information is further provided, wherein the transmitting means transmits the two or more data blocks together with the check information, and the reading means of the data restoration device includes the two or more data blocks. And the check information, and the determination means determines whether each of the two or more read data blocks has been read properly based on the check information.

また、請求項4に記載の発明は、請求項2に記載のデータ保管システムであって、前記データ送信装置の前記送信手段は、前記パリティデータ生成手段により生成された各データブロックのパリティデータを前記複数のデータ保管装置のうちの1つに送信するとともに、前記2以上のデータブロックを前記1つを除く前記複数のデータ保管装置に分散して送信することを特徴とする。   The invention according to claim 4 is the data archiving system according to claim 2, wherein the transmitting means of the data transmitting device stores the parity data of each data block generated by the parity data generating means. The data is transmitted to one of the plurality of data storage devices, and the two or more data blocks are distributed and transmitted to the plurality of data storage devices except the one.

また、請求項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 claim 5, wherein the data processing device is configured to store each data block based on two or more data blocks obtained by the dividing unit. Parity data generation means for generating parity data, and determination means for determining whether each data block read by the reading means has been 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, and reads the data The means stores the parity data of the data block determined to have not been properly read out by the determination means as the first or the storage destination of the data block. The restoration unit includes a re-forming unit that re-forms the data block that is determined not to be properly read based on the read parity data, and the determination unit includes: The data is restored based on the data block determined to be read properly and the re-formed data block.

本発明の請求項1に係るデータ保管システムは、データ送信装置が、保管要求のなされたデータを2以上のデータブロックに分割し、この2以上のデータブロックを広域ネットワークを通じて複数のデータ保管装置に分散して送信するとともに、データ復元装置が、読出要求のなされたデータに対応する2以上のデータブロックを広域ネットワークを通じて複数のデータ保管装置から読み出し、それら2以上のデータブロックに基づいてデータを復元するように動作する。ここで、複数のデータ保管装置は、互いに地理的に離れた場所に設置されている。   In the data archiving system according to claim 1 of the present invention, the data transmitting device divides the requested data into two or more data blocks, and the two or more data blocks are divided into a plurality of data archiving devices through the wide area network. In addition to transmitting in a distributed manner, the data restoration device reads two or more data blocks corresponding to the data requested to be read from a plurality of data storage devices through the wide area network, and restores the data based on the two or more data blocks. To work. Here, the plurality of data storage devices are installed at geographically distant locations.

また、本発明の請求項5に係るデータ保管システムは、データ処理装置が、保管要求のなされたデータを2以上のデータブロックに分割し、この2以上のデータブロックを広域ネットワークに接続された1以上の第1のデータ保管装置とローカルネットワークに接続された第2のデータ保管装置とに分散して送信するとともに、読出要求のなされたデータに対応する2以上のデータブロックを第1及び第2のデータ保管装置から読み出し、それら2以上のデータブロックに基づいてデータを復元するように動作する。ここで、第1、第2のデータ保管装置は、互いに地理的に離れた場所にて設置されている。   In the data archiving system according to claim 5 of the present invention, the data processing apparatus divides the data requested to be stored into two or more data blocks, and the two or more data blocks are connected to a wide area network. The first data storage device and the second data storage device connected to the local network are distributed and transmitted, and two or more data blocks corresponding to the data requested to be read are transmitted to the first and second data storage devices. The data is read from the data storage device, and the data is restored based on the two or more data blocks. Here, the first and second data storage devices are installed at locations geographically separated from each other.

したがって、請求項1又は請求項5に係るデータ保管システムによれば、災害や犯罪等によってデータの消失、漏洩、改竄などが発生しても、データ全体が消失等することが無く、また、データ全体を盗難などするためには複数のデータ保管装置3からデータを盗み出すなどする必要があるため、それは困難である。   Therefore, according to the data storage system according to claim 1 or 5, even if data loss, leakage, falsification, etc. occur due to a disaster or crime, the entire data is not lost, and the data Since it is necessary to steal data from a plurality of data storage devices 3 in order to steal the whole, it is difficult.

また、請求項5に係るデータ保管システムによれば、データ処理装置と同じローカルネットワークにもデータ保管装置が設置されているので、少なくとも1つのデータブロックは、広域ネットワークを経由せずにローカルネットワークのみを通じて伝送される。したがって、広域ネットワークを経由するデータが全て漏洩等した場合であっても、データ全体が漏洩等することがない。   According to the data archiving system according to claim 5, since the data archiving apparatus is also installed in the same local network as the data processing apparatus, at least one data block can be transmitted only to the local network without going through the wide area network. Transmitted through. Therefore, even when all data passing through the wide area network is leaked, the entire data is not leaked.

本発明の請求項2又は請求項6に係るデータ保管システムによれば、分割手段により得られた各データブロックのパリティデータを生成し、対応するデータブロックの送信先とは異なるデータ保管装置に送信するとともに、読出手段による各データブロックの読み出し処理が適正に行われたかを判断し、適正に読み出されなかったと判断されたデータブロックのパリティデータを読み出し、そのパリティデータに基づいてデータブロックを再形成してデータを復元するように動作する。   According to the data storage system according to claim 2 or 6 of the present invention, the parity data of each data block obtained by the dividing means is generated and transmitted to a data storage device different from the transmission destination of the corresponding data block. At the same time, it is determined whether the reading process of each data block by the reading means has been performed properly, the parity data of the data block determined to have not been read properly is read, and the data block is re-based based on the parity data. Operate to form and restore data.

したがって、データブロックの改竄等が発生した場合であっても、パリティデータを用いてそのデータブロックを再形成してデータ全体を復元できるので、データ全体の保護が可能となる。   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 data transmission server 1, a data restoration server 2, and a plurality (N) of data storage devices 3-1, 3-2,. -It is comprised including 3-N.

データ送信サーバ1は、本発明の「データ送信装置」の一例に相当する。また、データ復元サーバ2は、本発明の「データ復元装置」の一例に相当する。広域ネットワーク1000は、電話回線を通じたインターネットや専用線からなる広域通信網などのWAN(Wide Area Network)を含み、地理的に離れたコンピュータやデータベース等を互いに接続する情報通信網である。   The data transmission server 1 corresponds to an example of the “data transmission device” of the present invention. The data restoration server 2 corresponds to an example of the “data restoration device” of the present invention. The wide area network 1000 includes a wide area network (WAN) such as the Internet through a telephone line or a dedicated line, and is an information communication network that connects computers and databases that are geographically distant from each other.

データ送信サーバ1、データ復元サーバ2及び各データ保管装置3−1、3−2、・・・・、3−Nには、それぞれ、広域ネットワーク1000に対応するアドレス情報(IPアドレス等)があらかじめ付与されており、送信先のアドレス情報を指定することによりデータを目的の装置に送信するようになっている。   Each of the data transmission server 1, the data restoration server 2, and the data storage devices 3-1, 3-2,..., 3-N has address information (IP address, etc.) corresponding to the wide area network 1000 in advance. The data is transmitted to the target apparatus by designating address information of the transmission destination.

データ送信サーバ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 computer terminals 4A, 4B, and 4C are connected to the data transmission server 1 via the local network 1001, respectively. A plurality (two in this case) of computer terminals 5A and 5B are connected to the data restoration server 2 via the local network 1002, respectively. The local networks 1001 and L2 are information communication networks that do not include a WAN, such as a LAN (Local Area Network).

データ送信サーバ1及び各コンピュータ端末4A、4B、4Cには、ローカルネットワーク1001に対応するアドレス情報があらかじめ付与されており、送信先のアドレス情報を指定することにより目的の装置にデータを送信するようになっている。ローカルネットワーク1002により接続されたデータ復元サーバ2及び各コンピュータ端末5A、5Bについても同様である。   The data transmission server 1 and each of the computer terminals 4A, 4B, and 4C are assigned address information corresponding to the local network 1001 in advance, and data is transmitted to the target device by designating the destination address information. It has become. The same applies to the data restoration server 2 and the computer terminals 5A and 5B connected by the local network 1002.

コンピュータ端末4A、4B、4C、5A、5Bは、それぞれ、既存のコンピュータを含んで構成され、CPU等のマイクロプロセッサ、RAM、ROM、ハードディスクドライブ、表示用のディスプレイ、キーボードやマウス等の操作・入力用のデバイス、CD−RやDVD−R等の各種メディアのドライブ装置、ローカルネットワーク1001対応のネットワークアダプタ等の通信機器などを具備している。   Each of the computer terminals 4A, 4B, 4C, 5A, and 5B includes an existing computer, and operates and inputs a microprocessor such as a CPU, a RAM, a ROM, a hard disk drive, a display for display, a keyboard, a mouse, and the like. Device, a drive device for various media such as CD-R and DVD-R, and communication equipment such as a network adapter compatible with the local network 1001.

コンピュータ端末4A、4B、4Cのそれぞれは、ローカルネットワーク1001を通じ、データ送信サーバ1に対してデータの保管要求を送信する機能を有する。ユーザは、所望のデータをコンピュータ端末4A、4B、4Cのいずれか(たとえばコンピュータ端末4A)に入力し、そのデータを保管させるための所定の操作を行う。当該操作を受けたコンピュータ端末4Aは、そのデータと、そのデータの保管を要求する信号(「保管要求信号」と呼ぶことにする。)とを、ローカルネットワーク1001を通じてデータ送信サーバ1に送信する。データ送信サーバ1は、この保管要求信号を受けて、当該データをデータ保管装置3−1〜3−Nに保管するための後述の処理を実行する。なお、保管要求信号には、当該データの識別情報や保管処理の実行を要求するコマンド等が含まれている。また、一回の保管要求によって複数のデータを一度に保管させるように要求することも可能である。   Each of the computer terminals 4A, 4B, and 4C has a function of transmitting a data storage request to the data transmission server 1 through the local network 1001. The user inputs desired data to one of the computer terminals 4A, 4B, and 4C (for example, the computer terminal 4A), and performs a predetermined operation for storing the data. The computer terminal 4A that has received the operation transmits the data and a signal requesting storage of the data (referred to as a “storage request signal”) to the data transmission server 1 through the local network 1001. In response to the storage request signal, the data transmission server 1 executes a process described later for storing the data in the data storage devices 3-1 to 3 -N. The storage request signal includes identification information of the data, a command for requesting execution of storage processing, and the like. It is also possible to request that a plurality of data be stored at once by a single storage request.

一方、コンピュータ端末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 computer terminals 5 A and 5 B has a function of transmitting a data read request to the data restoration server 2 through the local network 1002. When the user performs a predetermined operation, the computer terminals 5A and 5B (for example, the computer terminal 5A) acquire and display the list information of the data stored in the data storage devices 3-1 to 3-N. This list information is held by the data restoration server 2, for example. The user selects desired data from the list information with a mouse or the like. The computer terminal 5A transmits a signal (referred to as a “read request signal”) requesting reading of the selected data to the data restoration server 2 through the local network 1002. In response to this read request signal, the data restoration server 2 reads and restores the data from the data storage devices 3-1 to 3 -N (described later), and transmits the data to the requesting computer terminal 5 </ b> A. The read request signal includes identification information of the data, a command for requesting execution of read processing, and the like. It is also possible to request to read a plurality of data at a time by a single read request.

以下、図2及び図3を更に参照しつつ、本実施形態に係るデータ保管システムを構成する広域ネットワーク1000を介して通信可能に設けられたデータ送信サーバ1、データ復元サーバ2、及び、複数(N個)のデータ保管装置3−1、3−2、・・・・、3−Nの構成についてそれぞれ詳しく説明する。   Hereinafter, with further reference to FIG. 2 and FIG. 3, a data transmission server 1, a data restoration server 2, and a plurality of ( (N) data storage devices 3-1, 3-2,..., 3-N will be described in detail.

ここで、図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 data transmission server 1 and the data restoration server 2. FIG.

[データ保管装置]
まず、複数のデータ保管装置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 wide area network 1000 through individual communication lines. The data storage devices 3-1, 3-2,..., 3-N are installed in geographically distant locations, preferably in distant locations (for example, Hokkaido, Tohoku, etc.). One unit can be installed in each of the regions, Kanto region, Chubu region, Kansai region, Chugoku region, Shikoku region and Kyushu region, or one unit can be installed in Japan and other countries. it can.).

データ保管装置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 “data storage device 3”). The data archiving apparatus 3 is configured by a known network storage including a mass storage device such as a hard disk drive, a network interface corresponding to the wide area network 1000, an OS, a data management utility, and the like.

データ保管装置3は、データ送信サーバ1から送信されたデータ復元サーバ2からの信号を受けて、   The data storage device 3 receives the signal from the data restoration server 2 transmitted from the data transmission server 1,

なお、データ保管装置3は、データベースとサーバとを含む構成とするなど、データ記憶機能、データ管理機能及び通信機能を具備するものであれば任意の構成を適用することが可能である。また、全てのデータ保管装置3が同じ構成とされる必要はない。   The data storage device 3 can be applied with any configuration as long as it has a data storage function, a data management function, and a communication function, such as a configuration including a database and a server. Moreover, it is not necessary for all the data storage devices 3 to have the same configuration.

[データ送信サーバ]
データ送信サーバ1は、ローカルネットワーク1001を通じてコンピュータ端末4A、4B、4C(以下、「コンピュータ端末4」と総称することがある。)から要求された処理を実行したり、あるいは、コンピュータ端末4に対してデータやプログラムを提供する処理などを実行する。特に、コンピュータ端末4からのデータの保管要求を受けて、そのデータ(「保管データ」と呼ぶ。)をデータ保管装置3に送信して保管させる処理を実行する。この処理の実行に関わる構成を以下に説明する。
[Data transmission server]
The data transmission server 1 executes processing requested from the computer terminals 4A, 4B, and 4C (hereinafter sometimes collectively referred to as “computer terminal 4”) through the local network 1001, or Process to provide data and programs. In particular, in response to a data storage request from the computer terminal 4, processing for transmitting the data (referred to as “storage data”) to the data storage device 3 and storing it is executed. A configuration related to the execution of this process will be described below.

〔ハードウェア構成〕
まず、データ送信サーバ1のハードウェア構成について図3を参照して説明する。データ送信サーバ1は、通常のコンピュータと同様に、CPU100(等のマイクロプロセッサ)、RAM110、ROM120、ハードディスクドライブ(HDD)130及び通信インターフェイス(I/F)140を具備している。これら各部は、バス150を介して接続されている。
[Hardware configuration]
First, the hardware configuration of the data transmission server 1 will be described with reference to FIG. The data transmission server 1 includes a CPU 100 (such as a microprocessor), a RAM 110, a ROM 120, a hard disk drive (HDD) 130, and a communication interface (I / F) 140, as in a normal computer. These units are connected via a bus 150.

CPU100は、ハードディスクドライブ130に格納されたデータ保管プログラム131をRAM110上に展開することにより、後述する本発明に特徴的な動作を実行する。また、CPU100は、各種の演算処理を行うとともに、データ送信サーバ1の各部の動作制御、たとえば通信インターフェイス140による通信処理の制御などを実行する。   The CPU 100 executes a characteristic operation of the present invention, which will be described later, by expanding the data storage program 131 stored in the hard disk drive 130 on the RAM 110. Further, the CPU 100 performs various arithmetic processes and also performs operation control of each unit of the data transmission server 1, for example, control of communication processes by the communication interface 140.

データ送信サーバ1に搭載されるデータ保管プログラム131は、後述のデータ分割処理、パリティデータ生成処理、チェックID生成処理、データ送信処理等をデータ送信サーバ1に実行させるプログラムである。   The data storage program 131 installed in the data transmission server 1 is a program that causes the data transmission server 1 to execute data division processing, parity data generation processing, check ID generation processing, data transmission processing, and the like, which will be described later.

通信インターフェイス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 wide area network 1000. The local communication interface (I / F) 142 includes a communication device such as a network adapter for performing data communication via the local network 1001.

なお、データ送信サーバ1は、LCDやCRT等のディスプレイや操作入力用のキーボードやマウス等のユーザインターフェイスを備えていてもよい。   The data transmission server 1 may include a user interface such as a display such as an LCD or a CRT, a keyboard for operation input, or a mouse.

〔機能的構成〕
次に、上記のようなハードウェア構成を具備するデータ送信サーバ1の機能的構成について図2を参照しつつ説明する。
[Functional configuration]
Next, a functional configuration of the data transmission server 1 having the above hardware configuration will be described with reference to FIG.

データ送信サーバ1には、保管要求受付部11、データ分割部12、パリティデータ生成部13、チェックID生成部14及びデータ送信部15が設けられている。以下、これら各部の詳細についてそれぞれ説明する。なお、各部の動作の具体例については、後述の[動作]の項において説明する。   The data transmission server 1 includes a storage request reception unit 11, a data division unit 12, a parity data generation unit 13, a check ID generation unit 14, and a data transmission unit 15. Hereinafter, details of each of these units will be described. A specific example of the operation of each unit will be described in the [Operation] section below.

(保管要求受付部)
保管要求受付部11は、図3におけるローカル通信インターフェイス142を含んで構成され、コンピュータ端末4から送信された保管データと保管要求信号とを受け付け、その保管データをデータ分割部12に伝送する処理を行う。また、保管要求信号はCPU100に送られ、CPU100はデータ保管プログラム131を起動させて後述する処理の制御を開始する。この保管要求受付部11は、本発明の「保管要求受付手段」の一例に相当する。
(Storage request reception part)
The storage request reception unit 11 includes the local communication interface 142 in FIG. 3, and receives storage data and a storage request signal transmitted from the computer terminal 4 and transmits the storage data to the data division unit 12. Do. Further, the storage request signal is sent to the CPU 100, and the CPU 100 activates the data storage program 131 and starts control of processing to be described later. The storage request reception unit 11 corresponds to an example of “storage request reception unit” of the present invention.

(データ分割部)
データ分割部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 request receiving unit 11 into two or more data blocks, and includes the CPU 100. Hereinafter, processing contents executed by the data dividing unit 12 will be described.

まず、分割後のデータブロックの個数(分割個数)について説明する。データ送信サーバ1のハードディスクドライブ23には、データ保管装置3の個数(N個)を示す情報があらかじめ記憶されている。また、このデータ保管装置3の個数に基づく保管データの分割個数nもあらかじめ記憶されている。   First, the number of divided data blocks (divided number) will be described. The hard disk drive 23 of the data transmission server 1 stores information indicating the number (N) of data storage devices 3 in advance. Further, the division number n of the storage data based on the number of the data storage devices 3 is also stored in advance.

本実施形態では、保管データの分割個数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 data storage devices 3 by a natural number (an integer k equal to or greater than 1), that is, the number of divisions. n = k × (N−1). This is applied when one of the N data storage devices 3 is used for storing parity data, which will be described later, and the remaining N-1 is used for storing data blocks of stored data. K indicates the number of data blocks stored in each data storage device 3.

なお、データ分割部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 data generation unit 13 and the data transmission unit 15, respectively.

(パリティデータ生成部)
パリティデータ生成部13は、データ分割部12により得られたn個のデータブロックに基づいて、各データブロックのパリティデータを生成する本発明の「パリティデータ生成手段」の一例に相当するものであり、CPU100を含んで構成される。パリティデータ生成部13は、データ分割部12からn個のデータブロックを受け、各データブロックについて、たとえば次の2つの公知の方法のいずれかの処理を行うことでパリティデータを生成する。
(Parity data generator)
The parity data generation unit 13 corresponds to an example of the “parity data generation unit” of the present invention that generates parity data of each data block based on the n data blocks obtained by the data division unit 12. The CPU 100 is configured. The parity data generation unit 13 receives n data blocks from the data division unit 12 and generates parity data for each data block by performing, for example, one of the following two known methods.

パリティデータ生成部13は、n個のデータブロックのうちの2個以上のデータブロックの排他的論理和を演算することによって、当該2個以上のデータブロックのパリティデータを生成することができる。このとき、排他的論理和に供されるデータブロックは、たとえばデータブロックの分割個数nと、データブロックの送信先(保管先)となるデータ保管装置3の個数とに基づいて決定される。一例として、9個のデータブロックを3個のデータ保管装置に保管する場合には、(9÷3=)3個のデータブロックの排他的論理和を演算する。   The parity data generation unit 13 can generate parity data of two or more data blocks by calculating an exclusive OR of two or more data blocks of the n data blocks. At this time, the data blocks to be subjected to exclusive OR are determined based on, for example, the number n of data block divisions and the number of data storage devices 3 that are transmission destinations (storage destinations) of the data blocks. As an example, when nine data blocks are stored in three data storage devices, an exclusive OR of (9 ÷ 3 =) three data blocks is calculated.

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 data transmission unit 15. Preferably, one data block is selected from each data block group, and parity data is generated for these data blocks.

また、パリティデータ生成部13は、データブロック(「0」、「1」の配列からなるデジタルデータ)を単位データ(たとえば7ビット、8ビット等)ごとに区切るとともに、各単位データ中における「0」又は「1」の個数が偶数個であるか奇数個であるか(パリティビット)を求め、全ての単位データのパリティビットを配列させてパリティデータとすることもできる。   In addition, the parity data generation unit 13 divides the data block (digital data having an arrangement of “0” and “1”) into unit data (for example, 7 bits, 8 bits, etc.) and “0” in each unit data. It is also possible to determine whether the number of “1” or “1” is an even number or an odd number (parity bit) and to arrange parity bits of all unit data as parity data.

パリティデータ生成部13により生成された各データブロックのパリティデータは、データ送信部15に送られる。   The parity data of each data block generated by the parity data generation unit 13 is sent to the data transmission unit 15.

(チェックID生成部)
チェックID生成部14は、データ分割部12により得られたn個のデータブロックのそれぞれのチェック情報(チェックID)を生成する本発明の「チェック情報生成手段」の一例に相当するものであり、CPU100を含んで構成される。
(Check ID generator)
The check ID generation unit 14 corresponds to an example of the “check information generation unit” of the present invention that generates check information (check ID) of each of the n data blocks obtained by the data division unit 12. It is configured including the CPU 100.

チェックID生成部14が実行する処理の前提として、データ送信部15は、後述のように、データ分割部12から送られたn個のデータブロックに基づいて、各データ保管装置3に送信されるデータブロック群を形成する処理を行う。チェックID生成部14は、形成された各データブロック群ごとにチェックIDを生成する。このチェックIDとしては、たとえば、各データブロック群のパリティビット(前述)を適用することが可能である。なお、このチェックIDは、パリティビットに限定されるものではなく、対応するデータブロック群のデータ構造を反映する任意の情報を用いることができる。   As a premise of processing executed by the check ID generation unit 14, the data transmission unit 15 is transmitted to each data storage device 3 based on n data blocks transmitted from the data division unit 12, as will be described later. A process of forming a data block group is performed. The check ID generation unit 14 generates a check ID for each formed data block group. As the check ID, for example, the parity bit (described above) of each data block group can be applied. The check ID is not limited to the parity bit, and arbitrary information reflecting the data structure of the corresponding data block group can be used.

同様に、データ送信部15は、パリティデータ生成部13から送られたパリティデータに基づいてパリティデータ群を形成する(後述)。チェックID生成部14は、各パリティデータ群についてそのチェックIDを生成する。   Similarly, the data transmission unit 15 forms a parity data group based on the parity data sent from the parity data generation unit 13 (described later). The check ID generation unit 14 generates a check ID for each parity data group.

チェックID生成部14により生成されたチェックIDは、データ送信部15に送られる。   The check ID generated by the check ID generation unit 14 is sent to the data transmission unit 15.

(データ送信部)
データ送信部15は、データ分割部12により得られたn個のデータブロックを広域ネットワークを通じて分散してデータ保管装置3に送信し保管させる本発明の「送信手段」の一例に相当するものであり、CPU100及び広域通信インターフェイス141を含んで構成される。また、データ送信部15は、パリティデータ生成部13により生成されたパリティデータをデータ保管装置3に送信する処理も行う。
(Data transmission part)
The data transmission unit 15 corresponds to an example of the “transmission unit” of the present invention in which the n data blocks obtained by the data division unit 12 are distributed and transmitted to the data storage device 3 through the wide area network and stored. The CPU 100 and the wide area communication interface 141 are configured. The data transmission unit 15 also performs processing for transmitting the parity data generated by the parity data generation unit 13 to the data storage device 3.

データ送信部15は、データ分割部12からn個のデータブロックを受けると、それらの送信先となるデータ保管装置3の個数のデータブロック群を形成する処理を行う。たとえば、各々等しいデータ量の9個のデータブロックの送信先として3個のデータ保管装置3を用いる場合、データ送信部15は、これら9個のデータブロックをたとえば3個ずつグルーピングして3つのデータブロック群を形成する。なお、データブロックの個数とその送信先の個数とが同じ場合など、その送信先にデータブロックを1つだけ送信する場合でも、そのデータブロックを「データブロック群」と称することとする。   When the data transmission unit 15 receives n data blocks from the data division unit 12, the data transmission unit 15 performs a process of forming data block groups corresponding to the number of data storage devices 3 serving as transmission destinations. For example, when three data storage devices 3 are used as transmission destinations of nine data blocks each having the same amount of data, the data transmission unit 15 groups these nine data blocks, for example, three by three, A block group is formed. Even when only one data block is transmitted to the transmission destination, such as when the number of data blocks is the same as the transmission destination, the data block is referred to as a “data block group”.

データ送信部15は、隣接するデータブロック(つまりデータが連続するデータブロック)を同一のデータブロック群に含めないようにグルーピングすることが望ましい。また、複数の保管データを一度に保管する場合においては、各保管データの全てのデータブロックを同一のデータブロック群に含めないようにグルーピングすることが望ましい。   The data transmission unit 15 is desirably grouped so that adjacent data blocks (that is, data blocks in which data is continuous) are not included in the same data block group. Further, when storing a plurality of stored data at a time, it is desirable to perform grouping so that all data blocks of each stored data are not included in the same data block group.

また、データ送信部15は、パリティデータ生成部14から受けたパリティデータに基づき、1つ以上のパリティデータ群を形成する。パリティデータ群の個数は、あらかじめ設定(あるいは要求)されたパリティデータの送信先(保管先)となるデータ保管装置3の個数とされる。   In addition, the data transmission unit 15 forms one or more parity data groups based on the parity data received from the parity data generation unit 14. The number of parity data groups is the number of data storage devices 3 that are transmission destinations (storage destinations) of parity data set (or requested) in advance.

更に、データ送信部15は、各データブロック群及び各パリティデータ群に対して、チェックID生成部14により生成されたチェックIDを付加する処理を行う。チェックIDは、データブロック群やパリティデータ群のたとえば末尾部分に付加される。   Further, the data transmission unit 15 performs processing for adding the check ID generated by the check ID generation unit 14 to each data block group and each parity data group. The check ID is added to, for example, the end portion of the data block group or parity data group.

データ送信部15による以上の処理により、データブロック群にそのチェックIDが付加された複数の送信データと、パリティデータ群にそのチェックIDが付加された1以上の送信データとが形成される。   Through the above processing by the data transmitting unit 15, a plurality of transmission data in which the check ID is added to the data block group and one or more transmission data in which the check ID is added to the parity data group are formed.

データ送信部15は、各送信データの送信先となるデータ保管装置3を指定するとともに、広域ネットワーク1000を通じて各送信データを指定送信先に送信する。このとき、各送信データのたとえばヘッダには、データ保管装置3にデータの保管を要求するコマンドが付加される。   The data transmission unit 15 designates the data storage device 3 as a transmission destination of each transmission data, and transmits each transmission data to the designated transmission destination through the wide area network 1000. At this time, a command for requesting the data storage device 3 to store the data is added to, for example, the header of each transmission data.

データ保管装置3は、この送信データを受信すると、上記コマンドにしたがって当該送信データを保管(格納)する。以下、各データ保管装置3に保管された送信データを「保管部分データ」と呼ぶことがある。   When receiving the transmission data, the data storage device 3 stores (stores) the transmission data according to the command. Hereinafter, the transmission data stored in each data storage device 3 may be referred to as “storage partial data”.

なお、送信データを受信したときに、チェックIDを用いてその送信データに改竄や欠損等が発生していないか確認する処理をデータ保管装置3に実行させることが望ましい。改竄等が発生した場合には、再送信を要求する信号をデータ送信サーバ1に返送する。また、改竄等がない場合には、適正に保管された旨のメッセージをコンピュータ端末4等に表示させる信号をデータ送信サーバ1に返送する。   Note that when the transmission data is received, it is desirable to cause the data storage device 3 to execute processing for checking whether the transmission data is falsified or missing using the check ID. When falsification or the like occurs, a signal requesting retransmission is returned to the data transmission server 1. If there is no falsification or the like, a signal for displaying on the computer terminal 4 a message indicating that the data has been properly stored is returned to the data transmission server 1.

[データ復元サーバ]
次に、データ復元サーバ2の構成について説明する。データ復元サーバ2は、ローカルネットワーク1002を通じてコンピュータ端末5A、5B(以下、「コンピュータ端末5」と総称することがある。)から要求された処理を実行したり、あるいは、コンピュータ端末5に対してデータやプログラムを提供する処理などを実行する。特に、コンピュータ端末5から保管データの読出要求を受けて、その保管データをデータ保管装置3から読み出して復元し、要求元のコンピュータ端末5に送信する処理を実行する。この処理の実行に関わる構成を以下に説明する。
[Data recovery server]
Next, the configuration of the data restoration server 2 will be described. The data restoration server 2 executes processing requested from the computer terminals 5A and 5B (hereinafter sometimes collectively referred to as “computer terminal 5”) through the local network 1002, or performs data processing on the computer terminal 5. Executes processing that provides programs and programs. In particular, in response to a request to read stored data from the computer terminal 5, the stored data is read from the data storage device 3, restored, and transmitted to the requesting computer terminal 5. A configuration related to the execution of this process will be described below.

〔ハードウェア構成〕
データ復元サーバ2は、データ送信サーバ1と同様のハードウェア構成を有する。すなわち、データ復元サーバ2には、図3に示すように、CPU100(等のマイクロプロセッサ)、RAM110、ROM120、ハードディスクドライブ(HDD)130及び通信インターフェイス(I/F)140が設けられている。これら各部はバス150を介して接続されている。また、LCDやCRT等のディスプレイや操作入力用のキーボードやマウス等のユーザインターフェイスが設けられていてもよい。
[Hardware configuration]
The data restoration server 2 has the same hardware configuration as the data transmission server 1. That is, the data restoration server 2 is provided with a CPU 100 (such as a microprocessor), a RAM 110, a ROM 120, a hard disk drive (HDD) 130, and a communication interface (I / F) 140, as shown in FIG. These units are connected via a bus 150. A user interface such as a display such as an LCD or CRT, a keyboard for operation input, or a mouse may be provided.

データ復元サーバ2に搭載されるデータ保管プログラム131は、後述のデータ読出処理、読出データ判断処理、データ再形成処理、データ復元処理等をデータ復号サーバ2に実行させるプログラムである。   The data storage program 131 installed in the data restoration server 2 is a program that causes the data decryption server 2 to execute data read processing, read data determination processing, data reconstruction processing, data restoration processing, and the like, which will be described later.

また、通信インターフェイス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 local network 1002.

〔機能的構成〕
データ復元サーバ2の機能的構成について図2を参照しつつ説明する。
[Functional configuration]
A functional configuration of the data restoration server 2 will be described with reference to FIG.

データ復元サーバ2には、読出要求受付部21、データ読出部22、読出データ判断部23、復元処理部24及び復元データ送信部27が設けられている。復元処理部24には、データ再形成部25とデータ復元部26とが設けられている。以下、これら各部の詳細についてそれぞれ説明する。なお、各部の動作の具体的な態様については、後述の[具体例]の項において説明する。   The data restoration server 2 includes a read request accepting unit 21, a data reading unit 22, a read data determining unit 23, a restoration processing unit 24, and a restored data transmitting unit 27. The restoration processing unit 24 includes a data reconstruction unit 25 and a data restoration unit 26. Hereinafter, details of each of these units will be described. Note that a specific mode of operation of each unit will be described in the section of [Specific example] described later.

(読出要求受付部)
読出要求受付部21は、ローカル通信インターフェイス142を含んで構成され、コンピュータ端末5から送信された読出要求信号を受け付けて、その読出要求信号をデータ読出部22に伝送する処理を行う。また、読出要求信号はCPU100に送られ、CPU100はデータ保管プログラム131を起動させて後述する処理の制御を開始する。この読出要求受付部21は、本発明の「読出要求受付手段」の一例に相当する。
(Reading request reception part)
The read request receiving unit 21 includes a local communication interface 142, and receives a read request signal transmitted from the computer terminal 5, and transmits the read request signal to the data reading unit 22. Further, the read request signal is sent to the CPU 100, and the CPU 100 activates the data storage program 131 and starts control of processing to be described later. The read request receiving unit 21 corresponds to an example of “read request receiving means” of the present invention.

(データ読出部)
データ読出部22は、読出要求受付部21から受けた読出要求信号が読み出しを要求する保管データに対応する保管部分データを、広域ネットワーク1000を通じてデータ保管装置3から読み出す本発明の「読出手段」の一例に相当する。読み出される保管部分データには、保管データのデータブロックを含むものと、そのパリティデータを含むものとがある。このデータ読出部22は、CPU100及びローカル通信インターフェイス142を含んで構成される。
(Data reading part)
The data reading unit 22 reads the storage partial data corresponding to the storage data requested to be read by the read request signal received from the read request receiving unit 21 from the data storage device 3 through the wide area network 1000. It corresponds to an example. The stored partial data to be read includes data including the data block of the stored data and data including the parity data. The data reading unit 22 includes a CPU 100 and a local communication interface 142.

より具体的には、データ読出部22は、読出要求信号から保管データの識別情報を取得し、この識別情報を含む信号を生成する。そして、この信号を広域ネットワーク1000を通じて各データ保管装置3に送信する。   More specifically, the data reading unit 22 obtains storage data identification information from the read request signal, and generates a signal including this identification information. Then, this signal is transmitted to each data storage device 3 through the wide area network 1000.

このとき、読み出すべき保管部分データの保管先が分かっている場合には、その保管先のデータ保管装置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 data storage device 3 of the storage location. Such a signal transmission mode is, for example, when the data transmission server 1 and the data restoration server 2 share information on the storage destination, or when the data transmission server 1 and the data described in [Modification] described later are used. The present invention is applicable when the restoration server 2 is composed of the same device.

データ保管装置3は、データ復元サーバ2からの信号を受信すると、この信号から保管データの識別情報を取得し、この識別情報がヘッダに付加された保管部分データを検索する。そして、検索された保管部分データをデータ復元サーバ2に送信する。   When the data storage device 3 receives the signal from the data restoration server 2, the data storage device 3 acquires the storage data identification information from this signal, and searches the storage partial data with the identification information added to the header. Then, the retrieved storage partial data is transmitted to the data restoration server 2.

データ読出部22は、各データ保管装置3により送信された保管部分データを受信して読出データ判断部23に伝送する。データ読出部22により読み出された保管部分データを読出データと呼ぶことがある。   The data reading unit 22 receives the storage partial data transmitted by each data storage device 3 and transmits it to the read data determination unit 23. The stored partial data read by the data reading unit 22 may be referred to as read data.

(読出データ判断部)
読出データ判断部23は、データ読出部22により読み出された各読出データ(データブロック(群)を含んでいる。)が適正に読み出されたかを判断する本発明の「判断手段」の一例に相当する。この読出データ判断部23は、CPU100を含んで構成される。
(Read data judgment unit)
The read data determination unit 23 is an example of the “determination unit” of the present invention that determines whether each read data (including data block (group)) read by the data read unit 22 has been read properly. It corresponds to. The read data determination unit 23 includes a CPU 100.

ここで、「適正に読み出された」とは、データ送信サーバ1のデータ分割部12により形成された元のデータブロックが、改竄や消失などの変更が発生していない状態で読み出されたことを意味するものとする。したがって、読み出されたデータブロックに改竄があったり一部が消失している場合や、データブロック全体が消失して何も読み出されなかった場合、読出データ判断部23は、当該データブロックは「適正に読み出されなかった」と判断する。   Here, “appropriately read” means that the original data block formed by the data dividing unit 12 of the data transmission server 1 is read in a state in which no alteration such as falsification or disappearance has occurred. It means that. Therefore, when the read data block is falsified or partially lost, or when the entire data block is lost and nothing is read, the read data determination unit 23 determines that the data block is It is determined that “It was not read properly”.

読出データ判断部23は、読出データからチェックIDを取得するとともに、チェックID生成部14と同じ要領で、その読出データ中のデータブロック(群)のチェックIDを生成し、取得したチェックIDと生成したチェックIDとが同一か否か判断することにより、読出データの適正判断を行う。   The read data determination unit 23 acquires the check ID from the read data, generates the check ID of the data block (group) in the read data in the same manner as the check ID generation unit 14, and generates the check ID and the generated check ID By determining whether or not the check ID is the same, the appropriateness of the read data is determined.

それらが同一であると判断された場合、当該読出データ中のデータブロック(群)が適正に読み出されたものと判断し、その旨を示す信号をデータ読出部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 data reading unit 22. Upon receiving this signal, the data reading unit 22 sends the corresponding read data to the restoration processing unit 24.

一方、取得したチェック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 data reading unit 22. When the data reading unit 22 receives the error signal, the data reading unit 22 identifies the stored data identification information toward the data storage device 3 that stores the storage partial data including the parity data (group) of the data block (group) in the read data. A signal containing is transmitted. Upon receiving this signal, the data storage device 3 searches for the target storage partial data and transmits it to the data restoration server 2. This stored partial data (read data) is received by the data read unit 22 and sent to the read data determination unit 23.

読出データ判断部23は、この読出データからチェックIDを取得するとともに、この読出データ中のパリティデータ(群)のチェックIDを生成し、それらの同一性を判断する。同一の場合、データ読出部22は、この読出データにフラグ等の判別情報を付加して復元処理部24に送る。同一でない場合には、当該パリティデータ(群)に対応するデータブロックを復元できない旨のメッセージ等をコンピュータ端末5に表示させる信号を出力する。   The read data determination unit 23 obtains a check ID from the read data, generates a check ID of parity data (group) in the read data, and determines their identity. If they are the same, the data reading unit 22 adds determination information such as a flag to the read data and sends it to the restoration processing unit 24. If they are not the same, a signal for displaying on the computer terminal 5 a message indicating that the data block corresponding to the parity data (group) cannot be restored is output.

なお、このようにしてパリティデータを含む保管部分データを取得する前に、適正に読み出されなかった読出データを再度読み出す工程を挟んでもよい。広域ネットワーク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 wide area network 1000, data may be appropriately acquired by this re-reading process.

(復元処理部)
復元処理部24は、データ読出部22により読み出された読出データ中のデータブロック(群)に基づいて保管データを復元する本発明の「復元手段」の一例に相当するものであり、CPU100を含んで構成される。この復元処理部24には、前述したように、データ再形成部25とデータ復元部26とが設けられている。
(Restore processing part)
The restoration processing unit 24 corresponds to an example of the “restoring means” of the present invention that restores the stored data based on the data block (group) in the read data read by the data reading unit 22. Consists of including. As described above, the restoration processing unit 24 includes the data reconstruction unit 25 and the data restoration unit 26.

復元処理部24は、前述のフラグ等の判別情報の有無を確認することで、読出データを振り分ける。具体的には、判別情報が付加されている読出データ(パリティデータを含んでいる。)についてはデータ再形成部25に振り分け、判別情報が付加されていない読出データ(データブロックを含んでいる。)についてはデータ復元部26に振り分ける。なお、パリティデータがパリティビットを用いて生成された場合には、適正に読み出されなかった読出データ(データブロックを含んでいる。)についてもデータ再形成部25に振り分ける。   The restoration processing unit 24 sorts the read data by checking the presence / absence of the discrimination information such as the flag. Specifically, the read data (including parity data) to which the discrimination information is added is distributed to the data reconstruction unit 25, and the read data (including the data block) to which the discrimination information is not added. ) Are distributed to the data restoration unit 26. Note that when parity data is generated using parity bits, read data (including data blocks) that has not been properly read is also distributed to the data reconstruction unit 25.

(データ再形成部)
データ再形成部25は、当該判断に対応して読み出された読出データ中のパリティデータ(群)に基づいて、適正に読み出されなかったと判断されたデータブロックを再形成する本発明の「再形成手段」の一例に相当する。
(Data reconstruction part)
The data reconstruction unit 25 reconstructs a data block that is determined not to be properly read based on the parity data (group) in the read data that is read in response to the determination. It corresponds to an example of “re-forming means”.

パリティデータが排他的論理和を用いて生成された場合、データ再形成部25は、従来と同様に、そのパリティデータと、適正に読み出された他のデータブロックとの排他的論理和を演算して、適正に読み出されなかったデータブロックを再形成する。また、パリティデータがパリティビットを用いて生成された場合には、適正に読み出されなかったデータブロックを、パリティビットを用いて単位データごとに修復することにより、そのデータブロックを再形成する。   When the parity data is generated using exclusive OR, the data reconstruction unit 25 calculates the exclusive OR of the parity data and another data block that has been appropriately read out as in the conventional case. Then, the data block that has not been read properly is re-formed. When parity data is generated using parity bits, the data block that has not been read properly is restored for each unit data using the parity bit, thereby re-forming the data block.

再形成されたデータブロックは、データ復元部26に送られる。   The reconstructed data block is sent to the data restoration unit 26.

(データ復元部)
全ての読出データが適正に読み出された場合、データ復元部26には、それら読出データが入力される。データ復元部26は、それら読出データ中のデータブロックを元の配列順に繋げることにより保管データを復元する。このとき、データブロックの配列は、各読出データのヘッダに付加されたセパレータ情報(前述)などを参照して認識される。
(Data restoration part)
When all the read data is read properly, the read data is input to the data restoration unit 26. The data restoration unit 26 restores the stored data by connecting the data blocks in the read data in the original arrangement order. At this time, the arrangement of the data blocks is recognized with reference to separator information (described above) added to the header of each read data.

一方、適正に読み出されなかった読出データが存在した場合、データ復元部26には、適正に読み出された読出データ(データブロックを含んでいる。)と、適正に読み出されなかった読出データについて再形成されたデータブロックとが入力される。データ復元部26は、これらのデータブロックを元の配列順に繋げることにより保管データを復元する。   On the other hand, when there is read data that has not been read properly, the data restoration unit 26 reads read data that has been read correctly (including data blocks) and read data that has not been read properly. The data block reconstructed for the data is input. The data restoration unit 26 restores the stored data by connecting these data blocks in the original arrangement order.

復元された保管データは、復元データ送信部27に送られる。   The restored stored data is sent to the restored data transmission unit 27.

(復元データ送信部)
復元データ送信部27は、ローカル通信インターフェイス142を含んで構成され、復元処理部24により復元された保管データを読出要求元のコンピュータ端末5に送信する。
(Restored data transmission unit)
The restored data transmission unit 27 is configured to include the local communication interface 142 and transmits the storage data restored by the restoration processing unit 24 to the computer terminal 5 that is the read request source.

[動作]
以上のように構成された本実施形態に係るデータ保管システムの動作の一例について説明する。図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 data storage device 3 to store data. The flowchart shown in FIG. 5 represents an operation for reading data from the data storage device 3.

〔データ保管処理;図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 computer terminal 4 and performs a storage request operation (S1), storage data and a storage request signal are input from the computer terminal 4 to the data transmission server 1 (S2).

データ送信サーバ1は、保管要求受付部11が受信した保管データと保管要求信号を、データ分割部12によってn個のデータブロックに分割する(S3)。このとき、所定の情報(前述)が各データブロックに付与される。   The data transmission server 1 divides the storage data and the storage request signal received by the storage request receiving unit 11 into n data blocks by the data dividing unit 12 (S3). At this time, predetermined information (described above) is given to each data block.

続いて、パリティデータ生成部13が、これらn個のデータブロックのそれぞれのパリティデータを生成する(S4)。ここで、前述のように、複数のデータブロックについてパリティデータを生成してもよい。   Subsequently, the parity data generation unit 13 generates parity data for each of the n data blocks (S4). Here, as described above, parity data may be generated for a plurality of data blocks.

データ送信部15は、n個のデータブロックをグルーピングして、それらの送信先となるデータ保管装置3の個数n′(2≦n′≦n)のデータブロック群を形成する(S5)。また、データ送信部15は、パリティデータ生成部14が生成した各データブロックのパリティデータをグルーピングして、m′(1≦m′≦n)個のパリティデータ群を形成する(S6)。   The data transmission unit 15 groups n data blocks to form a data block group of the number n ′ (2 ≦ n ′ ≦ n) of the data storage devices 3 that are the transmission destinations (S5). The data transmission unit 15 groups the parity data of each data block generated by the parity data generation unit 14 to form m ′ (1 ≦ m ′ ≦ n) parity data groups (S6).

チェックID生成部14が、各データブロック群及び各パリティデータ群のチェックIDを生成し(S7)、データ送信部15が、各データブロック群及び各パリティデータ群に、対応するチェックIDを付加する(S8)。それにより、データブロック群とチェックIDとを含むn′個の送信データと、パリティデータ群とチェックIDとを含むm′個の送信データとが形成される。   The check ID generation unit 14 generates a check ID for each data block group and each parity data group (S7), and the data transmission unit 15 adds a corresponding check ID to each data block group and each parity data group. (S8). As a result, n ′ pieces of transmission data including a data block group and a check ID and m ′ pieces of transmission data including a parity data group and a check ID are formed.

データ送信部15は、広域ネットワーク1000を通じ、各送信データを指定されたデータ保管装置3に送信する(S9)。   The data transmission unit 15 transmits each transmission data to the designated data storage device 3 through the wide area network 1000 (S9).

送信データを受信したデータ保管装置3は、その送信データが適正に伝送されたかをチェックIDを用いて判断する(S10)。送信データが適正に伝送された場合(S10;Y)、データ保管装置3は、その送信データを格納するとともに(S11)、保管処理の完了を示す信号をデータ送信サーバ1に返送する(S12)。データ送信サーバ1は、この信号を全ての送信先から受信したことに対応して、保管処理が完了した旨のメッセージを要求元のコンピュータ端末4に表示させ(S13)、データ保管処理を終了する。   The data storage device 3 that has received the transmission data uses the check ID to determine whether the transmission data has been properly transmitted (S10). When the transmission data is properly transmitted (S10; Y), the data storage device 3 stores the transmission data (S11) and returns a signal indicating completion of the storage process to the data transmission server 1 (S12). . In response to receiving this signal from all the transmission destinations, the data transmission server 1 displays a message indicating that the storage process has been completed on the requesting computer terminal 4 (S13), and ends the data storage process. .

一方、送信データが適正に伝送されなかった場合(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 data storage device 3 returns a signal requesting retransmission to the data transmission server 1 (S14), and the data transmission server 1 In response to this, the transmission data is retransmitted (S15). Here, if the number of retransmissions (for example, 3 times) is set in advance, and if the number of retransmissions does not allow proper transmission (S16; Y), an error message indicating that data storage has failed. Is displayed on the computer terminal 4 (S17), and the data storage process is terminated.

〔データ読出処理;図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 computer terminal 5 and performs a read request operation (S21), a read request signal is input from the computer terminal 5 to the data restoration server 2 (S22).

データ復元サーバ2は、データ読出部22により、読出要求された保管データに対応するn個の保管部分データ(データブロックを含むもの)を、広域ネットワーク1000を通じてデータ保管装置3からそれぞれ読み出す(S23)。読出データ判断部23は、各保管部分データ(読出データ)が適正に読み出されたか否か判断する(S24)。   In the data restoration server 2, the data reading unit 22 reads n pieces of storage partial data (including data blocks) corresponding to the storage data requested to be read from the data storage device 3 through the wide area network 1000 (S 23). . The read data determining unit 23 determines whether or not each storage partial data (read data) has been read properly (S24).

なお、パリティデータを含む保管部分データについても、ステップ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 data restoration unit 26 of the restoration processing unit 24 restores the stored data based on the n data blocks of the read data. (S25). Then, the restored stored data is transmitted to the computer terminal 5 that is the read request source (S26), and the data read process is terminated.

一方、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 data storage devices 3 is inappropriate at the same time, the following is a case where read processing from one data storage device 3 is inappropriate. explain.

まず、データ読出部22が、不適正読出データ中のデータブロックのパリティデータを含む保管部分データを保管するデータ保管装置3から、その保管部分データを読み出す(S27)。読出データ判断部23は、この保管部分データが適正に読み出されたか判断する(S28)。   First, the data reading unit 22 reads the storage partial data from the data storage device 3 that stores the storage partial data including the parity data of the data block in the inappropriate read data (S27). The read data determining unit 23 determines whether or not the storage partial data has been read properly (S28).

適正に読み出されなかったと判断された場合(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 data re-forming unit 25 re-creates the data block in the improper read data based on the parity data (group) in the stored partial data. Form (S30). Further, the data restoration unit 26 restores the stored data based on the data block in the read data that has been properly read and the data block in the improper read data that has been recreated (S31). Then, the restored stored data is transmitted to the computer terminal 5 as the read request source (S32), and the data read process is terminated.

[具体例]
このような本実施形態のデータ保管処理及びデータ読出処理の具体例について、図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 data storage devices 3 are installed (N = 4).

〔データ保管処理の具体例〕
図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 data transmission server 1 divides the storage data D into five data blocks D1, D2, D3, D4, and D5 and four storage data E. The data blocks E1, E2, E3, and E4 are divided into nine data blocks as a whole (S3).

ここで、分割個数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 data storage devices 3 that are storage destinations of data blocks (N−1 = 3 in this case), the grouping mode in step S5 is determined. In this example, considering that n = 9 and N−1 = 3, nine data blocks D1 to D5 and E1 to E4 are grouped every three in this order.

パリティデータ生成部13は、このグルーピングの形態に基づき、各グループ(データブロック群)から1つずつデータブロックを選択し、選択された3つのデータブロックについてパリティデータを生成する。それにより、図6(C)に示す3つのパリティデータP(D1+D2+D3)、P(D4+D5+E1)、P(E2+E3+E4)が生成される。   The parity data generation unit 13 selects one data block from each group (data block group) based on this grouping form, and generates parity data for the selected three data blocks. Thereby, three parity data P (D1 + D2 + D3), P (D4 + D5 + E1) and P (E2 + E3 + E4) shown in FIG. 6C are generated.

データ送信部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 data transmitting unit 15 groups the data blocks D1, D4, and E2 to form a data block group G1, and groups the data blocks D2, D5, and E3 to group the data block group G2. And data blocks D3, E1, and E4 are grouped to form a data block group G3 (S5). Further, the parity data P (D1 + D2 + D3), P (D4 + D5 + E1), and P (E2 + E3 + E4) are grouped to form a parity data group P (S6).

また、データ送信部15は、各データブロック群G1、G2、G3及びパリティデータ群PにチェックIDを付加する(S7、S8)。それにより、図6(D)に示すように、データブロック群とチェックIDとを含む3個の送信データT1、T2、T3と、パリティデータ群とチェックIDとを含む1個の送信データT4とが形成される。   In addition, the data transmission unit 15 adds a check ID to each data block group G1, G2, G3 and parity data group P (S7, S8). Accordingly, as shown in FIG. 6D, three transmission data T1, T2, T3 including a data block group and a check ID, and one transmission data T4 including a parity data group and a check ID, Is formed.

データ送信部15は、送信データT1をデータ保管装置3−1に送信し、送信データT2をデータ保管装置3−2に送信し、送信データT3をデータ保管装置3−3に送信し、送信データT4をデータ保管装置3−4に送信して、それぞれ保管させる(S9〜S13)。適正に伝送されなかった場合の処理(S14〜S17)については、上記[動作]の項と同様であるため説明を省略する。   The data transmission unit 15 transmits the transmission data T1 to the data storage device 3-1, transmits the transmission data T2 to the data storage device 3-2, transmits the transmission data T3 to the data storage device 3-3, and transmits the transmission data. T4 is transmitted to the data storage device 3-4 and stored therein (S9 to S13). Since the processing (S14 to S17) when the transmission is not properly performed is the same as that in the above [Operation] section, the description thereof is omitted.

〔データ読出処理の具体例〕
引き続き図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 data reading unit 22 of the data restoration server 2 receives the storage partial data T1, from the data storage devices 3-1, 3-2, and 3-3. T2 and T3 are read out (S23).

保管部分データ(読出データ)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 data restoration unit 26 selects the data block group G1 in the read data T1, T2, and T3, Based on the data blocks “D1, D4, E2”, “D2, D5, E3”, “D3, E1, E4” included in G2 and G3, respectively, the stored data D and E are restored (S25).

具体的には、読出データ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 data reading unit 22 reads the storage partial data T4 from the data storage device 3-4 (S27). When the storage partial data T4 is not properly read (S28; N), an error message is displayed (S29).

一方、保管部分データ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 data reconstruction unit 25 reads the parity data group P (see FIG. 6C) in the storage partial data T4 appropriately. Data blocks D2, D5, and E3 in the read data T2 are re-formed using the stored part data T1 and T3 that have been extracted (S30).

具体的には、(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 data restoring unit 26 includes data blocks (D1, D4, E2) and (D3, E1, E4) in the read data T1 and T3 that have been properly read, and data blocks ( The stored data D and E are restored based on D2, D5, and E3), respectively (S31). This restoration process is performed in the same manner as in step S25.

[作用・効果]
本実施形態に係るデータ保管システムの作用及び効果について説明する。
[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 data storage devices 3 installed at geographically distant locations through the wide area network 1000. Therefore, only a part of the stored data is stored in each data storage device 3. Thus, even if data is leaked or stolen from a certain data storage device 3, the entire stored data is not leaked or stolen. The same applies to the case where data leaks during transmission through the wide area network 1000.

また、データ保管装置3は地理的に離れて設置されているため、保管データの全体を改竄したり盗難したりするには複数のデータ保管装置3からデータを改竄等する必要があるが、それは困難である。たとえば、1つのデータ保管装置3からのデータ漏洩が判明した場合には、他のデータ保管装置3に対するセキュリティを強化することができるので、更なるデータ漏洩を防止することが可能である。なお、データを電子化して複数のデータ保管装置に同一データを格納する従来の手法においては、1つのデータ保管装置からデータが漏洩すると全データが漏洩してしまうが、本実施形態ではそのようなことはない。   Further, since the data storage device 3 is geographically separated, it is necessary to falsify data from a plurality of data storage devices 3 in order to falsify or steal the entire stored data. Have difficulty. For example, when data leakage from one data storage device 3 is found, the security for other data storage devices 3 can be strengthened, so that further data leakage can be prevented. In the conventional method of digitizing data and storing the same data in a plurality of data storage devices, if data leaks from one data storage device, all data leaks. There is nothing.

なお、「セキュリティ」とは、犯罪やユーザのミスなどに起因するデータの漏洩や改竄等に対する安全性確保対策だけでなく、地震や火災等の災害に起因するデータの消失等に対する安全性確保対策をも含むものとし、いわゆる「危機管理」と呼ばれるものに相当する。   “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 data storage device 3 or data transmitted over the wide area network 1000. The amount of can be reduced. That is, the data stored in each data storage device 3 and the data transmitted at once over the wide area network 1000 include a plurality of non-continuous data blocks, but meaningful information that can be read from the data is: It is about the data amount of each data block. As a result, even if data leaks, it is difficult to misuse it because it is difficult to read its meaning. In addition, since it is difficult to obtain meaningful information even if data is stolen, it is expected to suppress the occurrence of leakage and the like.

また、データ保管装置3に保管されているデータや伝送中のデータに改竄や消失が発生した場合でも、その改竄等されたデータをパリティデータを用いて再形成することができ、保管データを復元することができる。したがって、改竄等が発生した場合でも、保管データ全体を保護することが可能である。ここで、各パリティデータが、対応するデータブロックと異なるデータ保管装置3に保管されていることが重要である。なお、データの改竄等の発生の有無は、チェック情報(チェックID)によって簡単かつ効果的に判断することが可能である。   In addition, even if the data stored in the data storage device 3 or the data being transmitted is falsified or lost, the falsified data can be recreated using parity data, and the stored data can be restored. can do. Therefore, even when tampering or the like occurs, it is possible to protect the entire stored data. Here, it is important that each parity data is stored in a data storage device 3 different from the corresponding data block. Whether or not data has been tampered with can be easily and effectively determined by check information (check ID).

このように、本実施形態に係るデータ保管システムによれば、災害等によるデータ消失や、犯罪等によるデータの漏洩・改竄などの様々な危険性に対するセキュリティの向上を図ることが可能である。   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 data storage devices 3 is used for parity data storage, and the data blocks are distributed and stored in the other N−1 units. The distribution mode of the parity data is not limited to this.

たとえば、データブロックとパリティデータの双方を、N個のデータ保管装置3に分散させるように構成できる。その一例を図7を参照して説明する。ここで、データ保管装置3の個数を3個とする(N=3)   For example, both data blocks and parity data can be configured to be distributed to N data storage devices 3. One example will be described with reference to FIG. Here, the number of data storage devices 3 is three (N = 3).

図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 data transmission server 1 divides the storage data F into eight data blocks F1, F2, F3, F4, F5, F6, F7, and F8. The parity data generation unit 13 includes parity data P (1, 2) of the data blocks F1, F2, parity data P (3,4) of the data blocks F3, F4, and parity data P (5 of the data blocks F5, F6. , 6) and parity data P (7, 8) of data blocks F7, F8, respectively.

データ送信部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 data transmission unit 15 groups the data block F1, the parity data P (3, 4), the data block F6, and the data block F7 to form a data group H1, and the data block F2 , Data block F3, parity data P (5, 6), and data block F8 are grouped to form data group H2, and parity data P (1, 2), data block F4, data block F5 and parity data P ( 7 and 8) are grouped to form a data group H3. Here, it is important to perform grouping so that each parity data belongs to a data group different from the corresponding data block.

更に、図示は省略するが、チェック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 ID generation unit 14 generates check IDs for the data groups H1, H2, and H3, and the data transmission unit 15 adds check IDs to the data groups H1, H2, and H3. Thus, three transmission data are formed. Then, the data transmission unit 15 transmits transmission data including the data group H1 to the data storage device 3-1, transmits transmission data including the data group H2 to the data storage device 3-2, and includes transmission including the data group H3. Data is transmitted to the data storage device 3-3.

このようなデータの分散態様を適用しても、上記実施形態と同様のメリットを享受することができる。また、本変形例によれば、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 data storage devices 3 has been tampered with or deleted.

上記実施形態では、データ送信サーバ1とデータ復元サーバ2とを異なる装置として構成したが、単一の装置に双方の機能を搭載することが可能である。その場合、データ送信サーバ1による処理(データ送信処理;図4参照)と、データ復元サーバ2による処理(データ復元処理;図5参照)との双方をコンピュータに実行させるデータ保管プログラム131を搭載すればよい。それにより、データの保管要求を行った装置を用いて、そのデータを読み出して復元することができるので、システムの利便性が向上する。なお、後述の第2の実施形態に係るデータ保管システムは、このような構成を適用したものである。   In the above embodiment, the data transmission server 1 and the data restoration server 2 are configured as different devices, but both functions can be mounted on a single device. In that case, a data storage program 131 is installed which causes the computer to execute both the processing by the data transmission server 1 (data transmission processing; see FIG. 4) and the processing by the data restoration server 2 (data restoration processing; see FIG. 5). That's fine. As a result, it is possible to read and restore the data using the device that has requested the data storage, thereby improving the convenience of the system. Note that a data storage system according to a second embodiment described later applies such a configuration.

ここで、データ送信処理のみ実行可能な装置と、データ復元処理のみ実行可能な装置と、双方の処理を実行可能な装置とを含むシステムを構成することも可能である。また、システムに含まれるデータ送信装置の個数及びデータ復元装置の個数は、それぞれ任意である。   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 data storage devices 3 connected to the wide area network 1000 and installed geographically apart from each other; (2) data Data having a storage request receiving unit 11 that receives the storage request, a data dividing unit 12 that divides the data into data blocks, and a data transmission unit 15 that distributes the data blocks to a plurality of data storage devices 3 and transmits the data blocks Transmission server 1; (3) a read request receiving unit 21 for receiving a data read request, a data reading unit 22 for reading a data block corresponding to the data from the data storage device 3, and restoring data based on the data block A data restoration server 2 having a restoration processing unit 24. This first configuration is the basic configuration of the present invention.

この第1の構成によれば、互いに離れて設置されたデータ保管装置3に保管データを分散保管させるにより、データが漏洩等に対応できる。また、犯罪によるデータの盗み出しも困難となる。   According to the first configuration, the stored data is distributed and stored in the data storage devices 3 that are installed apart from each other, so that the data can be dealt with in leakage. In addition, it is difficult to steal data by crime.

本発明に係る第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 data transmission server 1 uses the parity data of each data block obtained by the data dividing unit 12 (2) The data transmission unit 15 of the data transmission server 1 transmits each parity data to the data storage device 3 different from the transmission destination of the corresponding data block; (3 ) The data restoration server 2 has a read data determination unit 23 that determines whether the data block is properly read by the data read unit 22; (4) the data read unit 22 is determined not to be read properly. Read out the parity data of the data block from the data storage device; (5) The restoration processing unit 24 recreates the data block based on the parity data That has a data reshaping section 25; (6) restoration processing unit 24, and data blocks that are determined to have been properly read, based on the the reshaped data blocks to recover the data.

この第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 data transmission server 1 sets the check ID of the data block obtained by the data dividing unit 12. (2) The data transmission unit 15 transmits each data block together with its check ID to the data storage device 3; (3) the data reading unit 22 transmits the data block to the check information. (4) The read data determination unit 23 determines whether the data block has been read properly based on the read check information.

この第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 wide area network 1000, and to the wide area network 1000 and the local network 1001, respectively. The server 10 includes a data storage device 30 connected to the local network 1001, and computer terminals 40A, 40B, and 40C connected to the local network 1001.

ここで、広域ネットワーク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 wide area network 1000 is provided (in the first embodiment, a plurality of data storage devices 3 are provided). Further, the data storage device 30 (second data storage device) on the local network 1001 is installed at a location geographically distant from each data storage device 3. Therefore, the server 10 is also installed at a location away from each data storage device 3. The number of installed data storage devices 30 is not limited to one, and can be two or more.

サーバ10は、本発明の「データ処理装置」の一例に相当するものであり、第1の実施形態におけるデータ送信サーバ1及びデータ復元サーバ2の双方の機能を具備している。すなわち、図示は省略するが、サーバ10は、保管要求受付部11、データ分割部12、パリティデータ生成部13、チェックID生成部14、データ送信部15、読出要求受付部21、データ読出部22、読出データ判断部23、復元処理部24(データ再形成部25、データ復元部26を含む。)及び復元データ送信部27を備えている(図2参照)。これら各部は、第1の実施形態とほぼ同様に動作する。以下、第1の実施形態との相違点を説明する。   The server 10 corresponds to an example of the “data processing apparatus” of the present invention, and has the functions of both the data transmission server 1 and the data restoration server 2 in the first embodiment. That is, although not shown, the server 10 includes a storage request receiving unit 11, a data dividing unit 12, a parity data generating unit 13, a check ID generating unit 14, a data transmitting unit 15, a reading request receiving unit 21, and a data reading unit 22. , A read data determination unit 23, a restoration processing unit 24 (including a data reconstruction unit 25 and a data restoration unit 26), and a restoration data transmission unit 27 (see FIG. 2). These units operate in substantially the same manner as in the first embodiment. Hereinafter, differences from the first embodiment will be described.

サーバ10のデータ送信部15は、データ分割部12によって得られた2以上のデータブロックのうちのいくつかを広域ネットワーク1000を通じてデータ保管装置3に(分散して)送信するとともに、その他のデータブロックをローカルネットワークを通じてデータ保管装置30に(分散して)送信するようになっている。   The data transmitting unit 15 of the server 10 transmits (distributed) some of the two or more data blocks obtained by the data dividing unit 12 to the data storage device 3 through the wide area network 1000 and other data blocks. Are transmitted (distributed) to the data storage device 30 through the local network.

また、データ送信部15は、パリティデータ生成部13が生成した各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置3あるいはデータ保管装置30に送信する。これは、各データブロックとそのパリティデータとを異なるデータ保管装置3、30に送る送信データ中に含めるようにグルーピングすることで実現される(図7(C)参照)。   Further, the data transmission unit 15 transmits each parity data generated by the parity data generation unit 13 to the data storage device 3 or the data storage device 30 different from the transmission destination of the corresponding data block. This is realized by grouping each data block and its parity data so as to be included in transmission data sent to different data storage devices 3 and 30 (see FIG. 7C).

サーバ10のデータ読出部22は、読出要求が受け付けられたデータに対応するデータブロックをデータ保管装置3、30からそれぞれ読み出すようになっている。データ復元部26は、このようにして読み出されたデータブロックに基づいてデータを復元する。   The data reading unit 22 of the server 10 reads data blocks corresponding to the data for which the read request has been received from the data storage devices 3 and 30, respectively. The data restoration unit 26 restores data based on the data block read in this way.

また、データ読出部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 data determining unit 23, the data reading unit 22 stores the parity data of the data block in the data storage device 3 or the data storage of the storage destination. Reading is performed from the device 30. The data reconstruction unit 25 reconstructs the data block based on the parity data, and the data restoration unit 26 reconstructs the data based on the appropriately acquired data block and the reconstructed data block. Restore.

このような本実施形態に係るデータ保管システムによれば、広域ネットワーク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 data storage devices 3 connected to the wide area network 1000 and one or more data storage devices 30 connected to the local network 1001, Processing similar to that of the first embodiment (see FIGS. 4 and 5) can be executed.

したがって、第1の実施形態と同様に、データ保管装置3、30のいずれかからデータが漏洩したり盗み出された場合や、データが広域ネットワーク1000を伝送しているときに漏洩等した場合であっても、保管データ全体が漏洩等することが無い。   Therefore, as in the first embodiment, there are cases where data is leaked or stolen from either of the data storage devices 3 and 30, or when data is leaked while being transmitted through the wide area network 1000. However, the entire stored data does not leak.

また、データ保管装置3は互いに地理的に離れた位置に設置されており、データ保管装置30は、データ保管装置3と地理的に離れた位置に設置されているため、保管データの全体を改竄したり盗難したりすることは困難である。   Further, since the data storage device 3 is installed at a location geographically separated from each other, and the data storage device 30 is installed at a location geographically separated from the data storage device 3, the entire storage data is falsified. It is difficult to do or steal.

また、データ保管装置3、30に保管されているデータや伝送中のデータに改竄や消失が発生した場合でも、その改竄等されたデータをパリティデータを用いて再形成することができ、保管データを復元することができ、保管データ全体を保護することが可能である。   Even if data stored in the data storage devices 3 and 30 or data being transmitted is falsified or lost, the falsified data can be recreated using parity data, and the stored data Can be restored and the entire stored data can be protected.

このように、本実施形態に係るデータ保管システムによれば、災害等によるデータ消失や、犯罪等によるデータの漏洩・改竄などの様々な危険性に対するセキュリティの向上を図ることが可能である。   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 data storage device 3 on the wide area network 1000, the data storage device 30 is installed on the same local network 1001 as the server 10, and these data storage devices 3, 30 Therefore, at least a part of the storage data is transmitted only through the local network 1001 without passing through the wide area network 1000. Therefore, even if all data passing through the wide area network 1000 is leaked, the entire stored data is not leaked, and the risk of leaking meaningful information can be reduced.

[その他]
第1、2の実施形態に係る処理をデータ送信サーバ1やデータ復元サーバ2やサーバ10に実行させるデータ保管プログラム131は、任意の記憶媒体(メディア)に、コンピュータ読み取り可能に記憶させることができる。その記憶媒体としては、フロッピー(登録商標)ディスク、CD−ROM、CD−R(W)、DVD−ROM、DVD−R(W)、DVD−RAM、MO、各種メモリカードなど、電気的方法、磁気的方法、光学的方法等の任意の物理的方法によってデータを記憶可能に構成されたものを使用することが可能である。
[Others]
The data archiving program 131 that causes the data transmission server 1, the data restoration server 2, and the server 10 to execute the processes according to the first and second embodiments can be stored in an arbitrary storage medium (media) in a computer-readable manner. . As the storage medium, floppy (registered trademark) disk, CD-ROM, CD-R (W), DVD-ROM, DVD-R (W), DVD-RAM, MO, various memory cards, and other electrical methods, It is possible to use one configured to store data by any physical method such as a magnetic method or an optical method.

以上に説明した構成は、本発明に係るデータ保管システムを好適に実施するための具体的構成の一例に過ぎないものである。したがって、本発明の要旨の範囲内における任意の変形を適宜に施すことが可能である。   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の実施形態の全体構成の一例を表す概略システム構成図である。1 is a schematic system configuration diagram showing an example of an overall configuration of a first embodiment of a data storage system according to the present invention. 本発明に係るデータ保管システムの第1の実施形態におけるデータ送信サーバ及びデータ復元サーバの機能的構成の一例を表す概略ブロック図である。It is a schematic block diagram showing an example of functional composition of a data transmission server and a data restoration server in a 1st embodiment of a data storage system concerning the present invention. 本発明に係るデータ保管システムの第1の実施形態におけるデータ送信サーバ及びデータ復元サーバのハードウェア構成の一例を表す概略ブロック図である。It is a schematic block diagram showing an example of the hardware constitutions of the data transmission server and data restoration server in 1st Embodiment of the data storage system which concerns on this invention. 本発明に係るデータ保管システムの第1の実施形態によるデータ保管処理の一例を表すフローチャートである。It is a flowchart showing an example of the data storage process by 1st Embodiment of the data storage system which concerns on this invention. 本発明に係るデータ保管システムの第1の実施形態によるデータ読出処理の一例を表すフローチャートである。It is a flowchart showing an example of the data reading process by 1st Embodiment of the data storage system which concerns on this invention. 本発明に係るデータ保管システムの第1の実施形態によるデータ保管処理の一具体例を説明するための概略説明図である。It is a schematic explanatory drawing for demonstrating one specific example of the data storage process by 1st Embodiment of the data storage system which concerns on this invention. 本発明に係るデータ保管システムの第1の実施形態の変形例によるデータ保管処理の一具体例を説明するための概略説明図である。It is a schematic explanatory drawing for demonstrating one specific example of the data storage process by the modification of 1st Embodiment of the data storage system which concerns on this invention. 本発明に係るデータ保管システムの第2の実施形態の全体構成の一例を表す概略システム構成図である。It is a schematic system block diagram showing an example of the whole structure of 2nd Embodiment of the data storage system which concerns on this invention.

符号の説明Explanation of symbols

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 SYMBOLS 1 Data transmission server 11 Storage request reception part 12 Data division part 13 Parity data generation part 14 Check ID generation part 15 Data transmission part 2 Data restoration server 21 Read request reception part 22 Data reading part 23 Read data judgment part 24 Restoration process part 25 Data reconstruction unit 26 Data restoration unit 27 Restored data transmission unit 100 CPU
DESCRIPTION OF SYMBOLS 130 Hard disk drive 131 Data storage program 140 Communication interface 141 Wide area communication interface 142 Local communication interface 3, 3-1, 3-2, ..., 3-N, 30 Data storage device 4A, 4B, 4C, 5A, 5B 40A, 40B, 40C Computer terminal 10 Server 1000 Wide area network 1001, 1002 Local network

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:
前記データ送信装置は、前記分割手段により得られた2以上のデータブロックに基づいて、各データブロックのパリティデータを生成するパリティデータ生成手段を更に有し、
前記送信手段は、前記生成された各パリティデータを、対応するデータブロックの送信先とは異なるデータ保管装置に送信し、
前記データ復元装置は、前記読出手段により読み出された各データブロックについて、その保管先のデータ保管装置から適正に読み出されたか判断する判断手段を更に有し、
前記読出手段は、適正に読み出されなかったと前記判断されたデータブロックのパリティデータを、その保管先のデータ保管装置から読み出し、
前記復元手段は、
前記読み出されたパリティデータに基づいて前記適正に読み出されなかったと判断されたデータブロックを再形成する再形成手段を含み、
前記判断手段により適正に読み出されたと判断されたデータブロックと、前記再形成されたデータブロックとに基づいて、前記データを復元する、
ことを特徴とする請求項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.
前記データ送信装置の前記送信手段は、前記パリティデータ生成手段により生成された各データブロックのパリティデータを前記複数のデータ保管装置のうちの1つに送信するとともに、前記2以上のデータブロックを前記1つを除く前記複数のデータ保管装置に分散して送信することを特徴とする請求項2に記載のデータ保管システム。   The transmission unit of the data transmission device transmits parity data of each data block generated by the parity data generation unit to one of the plurality of data storage devices, and transmits the two or more data blocks to the data storage device. The data storage system according to claim 2, wherein the data storage system is distributed and transmitted to the plurality of data storage devices except for one. 広域ネットワークに接続され、互いに地理的に離れた場所に設置された1以上の第1のデータ保管装置と、前記第1のデータ保管装置と地理的に離れた位置に設置され、ローカルネットワークに接続され、前記第1の保管装置から地理的に離れた場所に設置された1以上の第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:
前記データ処理装置は、前記分割手段により得られた2以上のデータブロックに基づいて、各データブロックのパリティデータを生成するパリティデータ生成手段と、前記読出手段により読み出された各データブロックについて、その保管先の前記第1又は第2のデータ保管装置から適正に読み出されたか判断する判断手段とを更に有し、
前記送信手段は、前記パリティデータ生成手段により生成された各パリティデータを、対応するデータブロックの送信先とは異なる前記第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:



JP2005257383A 2005-09-06 2005-09-06 Data storage system Withdrawn JP2007072643A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (6)

* Cited by examiner, † Cited by third party
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