JP4478000B2 - Data mediation method and data mediation device - Google Patents

Data mediation method and data mediation device Download PDF

Info

Publication number
JP4478000B2
JP4478000B2 JP2004347458A JP2004347458A JP4478000B2 JP 4478000 B2 JP4478000 B2 JP 4478000B2 JP 2004347458 A JP2004347458 A JP 2004347458A JP 2004347458 A JP2004347458 A JP 2004347458A JP 4478000 B2 JP4478000 B2 JP 4478000B2
Authority
JP
Japan
Prior art keywords
data
storage device
interface
client
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004347458A
Other languages
Japanese (ja)
Other versions
JP2006155398A (en
Inventor
裕太 渡邉
久史 小島
崇 栗本
一郎 井上
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2004347458A priority Critical patent/JP4478000B2/en
Publication of JP2006155398A publication Critical patent/JP2006155398A/en
Application granted granted Critical
Publication of JP4478000B2 publication Critical patent/JP4478000B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データ仲介方法およびデータ仲介装置に関する。   The present invention relates to a data mediating method and a data mediating apparatus.

コンピュータに内蔵またはケーブルで直接接続されていたHDD(Hard Disk Drive)などの記憶装置が、ネットワークの接続インターフェイスを持ち、1つのネットワークデバイスとして機能する形態が普及し始めている。記憶装置とは別の装置が、このネットワークデバイスである記憶装置にアクセスする際には、iSCSI(Internet Small Computer System Interface、非特許文献1)などのプロトコルが用いられる。   A form in which a storage device such as an HDD (Hard Disk Drive) built in a computer or directly connected by a cable has a network connection interface and functions as a single network device is becoming widespread. When a device other than the storage device accesses the storage device, which is a network device, a protocol such as iSCSI (Internet Small Computer System Interface, Non-Patent Document 1) is used.

なお、従来は遠隔に設置された記憶装置を利用する場合、1つのファイルは1つの記憶装置に保存されていた。しかし、1つのファイルを複数の記憶装置に分散配置をすることによって、個々の記憶装置にかかる読み書きの負担を減らすことが可能である。同時に複数の記憶装置に読み書きを行うことにより、処理速度を向上させることも可能である。   Conventionally, when a storage device installed remotely is used, one file is stored in one storage device. However, it is possible to reduce the read / write load on each storage device by distributing one file in a plurality of storage devices. It is also possible to improve processing speed by simultaneously reading and writing to a plurality of storage devices.

遠隔ネットワークに設置された記憶装置を利用して、データの分散配置を実現する場合、読み書きの際に発生する、記憶装置が設置されているネットワークと基幹ネットワーク間で発生する負荷を分散させることが可能である。
IETF、“Internet Small Computer Systems Interface”、[online]、[平成16年11月8日検索]、インターネット<URL:http://www.ietf.org/rfc/rfc3720.txt>、3.2章,3.4章
When using a storage device installed in a remote network to implement distributed data distribution, it is possible to distribute the load that occurs between the network where the storage device is installed and the backbone network, which occurs during reading and writing. Is possible.
IETF, “Internet Small Computer Systems Interface”, [online], [searched on November 8, 2004], Internet <URL: http://www.ietf.org/rfc/rfc3720.txt>, Chapter 3.2 , 3.4

前記の技術は1つのファイルを分割して複数のファイル部分とし、各ファイル部分を別々の記憶装置に分散して記録することによって、それぞれの記憶装置やネットワークにかかる負荷の軽減が実現される。   In the above technique, one file is divided into a plurality of file parts, and each file part is distributed and recorded in separate storage devices, thereby reducing the load on each storage device and network.

しかし、同時に複数の記憶装置から読み出しを行った場合、データが整列されていない状態でクライアントヘ到着するため、整列のための処理が必要となることが問題となる。   However, when data is read from a plurality of storage devices at the same time, the data arrives at the client in a state where the data is not aligned, which causes a problem that alignment processing is required.

従来技術で前記の問題を解決しようとした場合、新規の装置もしくはプログラムと、データの読み書きに利用するバッファのための大容量の高速メモリと、整列処理を行うための高い演算性能を持ったプロセッサをクライアントヘ導入することが必要となる。従って、個々のクライアントにかかる構成が複雑になってしまう。その結果、例えば処理動作が遅くなったり、筐体のサイズが大きくなってしまう。   When trying to solve the above problems with the prior art, a new device or program, a large-capacity high-speed memory for a buffer used for reading and writing data, and a processor with high computing performance for performing alignment processing Need to be introduced to the client. Therefore, the configuration of each client becomes complicated. As a result, for example, the processing operation is slow, and the size of the housing is increased.

また、複数のクライアントで遠隔記憶装置群を共有する場合、データの分散配置の情報を全クライアントで同期させる必要があるため、ネットワークやクライアントで発生するオーバーヘッドが問題となる。   In addition, when sharing a remote storage device group with a plurality of clients, it is necessary to synchronize information on the distributed arrangement of data among all clients, which causes a problem of overhead generated in the network and clients.

このオーバーヘッドは共有を行うクライアント数に比例して増大するため、クライアント数が増加するに従い、ネットワークやクライアントが必要な構成も複雑になってしまう。   Since this overhead increases in proportion to the number of clients sharing, as the number of clients increases, the configuration required for the network and clients becomes complicated.

そこで、本発明は、前記した問題を解決し、分散してデータを記憶する通信システムについて、クライアントの構成を簡略化することを主な目的とする。   SUMMARY OF THE INVENTION Accordingly, it is a primary object of the present invention to solve the above problems and to simplify the configuration of a client for a communication system that stores data in a distributed manner.

前記した問題を解決するため、本発明は、データの読み書きを要求するクライアントと、前記クライアントから読み書きを要求された前記データを格納する記憶装置と、前記記憶装置に格納されるデータごとにその格納場所を対応づける使用済領域テーブルと前記記憶装置のネットワーク上のアドレスおよび未使用ブロックの位置を管理する未使用領域テーブルとを含むインデックスDBを有するデータ仲介装置と、を含めて構成されるネットワークシステムにおけるデータ仲介方法であって、前記データ仲介装置が、前記クライアントとの通信に用いる第1のインターフェイスと、前記記憶装置との通信に用いる第2のインターフェイスとを備え、前記クライアントから前記第1のインターフェイスを介して読み込み要求および書き込み要求を受信する手順と、前記読み込み要求をもとに前記インデックスDBから読み込みデータの位置情報を取得し、前記位置情報に対応する記憶装置に前記第2のインターフェイスを介してデータの読み込みを要求する手順と、前記記憶装置から前記データの読み込みの要求に対する返答として前記第2のインターフェイスを介して受信したデータの断片を、読み込みデータバッファに整列させて格納し、前記データバッファに格納されたデータを先頭から順に前記クライアントに前記第1のインターフェイスを介して返信する手順と、前記書き込み要求をもとに前記インデックスDBから書き込みデータの位置情報を決定し、前記位置情報に対応する記憶装置に前記第2のインターフェイスを介してデータの書き込みを要求する手順と、前記記憶装置から前記データの書き込みの要求に対する返答として前記第2のインターフェイスを介して受信した書き込み結果で、前記インデックスDBを更新する手順と、を実行することを特徴とする。 In order to solve the above-described problem, the present invention provides a client that requests reading / writing of data, a storage device that stores the data requested to be read / written by the client, and stores each data stored in the storage device A network system configured to include a data intermediary device having an index DB including a used area table for associating a location and an unused area table for managing an address and an unused block position on the network of the storage device The data mediating method according to claim 1, wherein the data mediating device comprises a first interface used for communication with the client and a second interface used for communication with the storage device, from the client to the first read request and write requirements via the interface A step of receiving a procedure in which the acquired location information of the read data read request from the index DB on the basis of requests to read data via the second interface to a storage device corresponding to the position information And a fragment of data received via the second interface as a response to the data read request from the storage device, aligned in the read data buffer and stored, and the data stored in the data buffer is the head a step of returning via said first interface to said client in order from the write request to determine the location of the write data from the index DB on the basis of the second to the storage device corresponding to the position information and procedures for requesting writing of data via the interface, the In writing the results received via the second interface in reply to the request for writing of the data from憶device, and executes a a procedure for updating the index DB.

これにより、クライアントが遠隔ネットワーク上に分散設置された記憶装置ヘアクセスする際に、データ仲介装置がデータの管理を一括で行うとともに、記憶装置へのアクセスを仲介する。そのため、クライアントが直接記憶装置とアクセスするための新しい構成の導入が不要となり、構成を簡略化することができる。従って、クライアントの台数に関わらず、処理動作の遅延、筐体のサイズの増大、部品の導入コストなどを軽減することができる。   Thus, when the client accesses the storage devices distributed on the remote network, the data mediating device collectively manages the data and mediates the access to the storage device. Therefore, it is not necessary to introduce a new configuration for the client to directly access the storage device, and the configuration can be simplified. Therefore, regardless of the number of clients, it is possible to reduce the processing operation delay, the increase in the size of the housing, the introduction cost of components, and the like.

本発明は、前記データ仲介装置が、前記クライアントと通信するための第1のインターフェイス、または、前記記憶装置と通信するための第2のインターフェイスのうち、少なくとも1つのインターフェイスが、iSCSI(Internet Small Computer System Interface)に従ったデータ通信プロトコルにより、データを通信することを特徴とする。   According to the present invention, at least one of the first interface for the data mediating device to communicate with the client or the second interface for communicating with the storage device is an iSCSI (Internet Small Computer). Data is communicated by a data communication protocol in accordance with (System Interface).

これにより、既に普及している標準規格であるiSCSIに適合したクライアントおよび記憶装置を、そのまま通信システムの一部として流用することが可能となる。よって、開発者にとっては新たなクライアントおよび記憶装置を開発するコストと期間を削減することができ、システム構築者にとっては既にある機器を活用できるので導入コストを削減することができる。   As a result, a client and a storage device compatible with iSCSI, which is an already popular standard, can be used as part of the communication system. Therefore, it is possible for the developer to reduce the cost and period for developing a new client and storage device, and for the system builder, the existing equipment can be utilized, so that the introduction cost can be reduced.

本発明は、データの読み書きを要求するクライアントと、前記クライアントから読み書きを要求された前記データを格納する記憶装置と、前記記憶装置に格納されるデータごとにその格納場所を対応づける使用済領域テーブルと前記記憶装置のネットワーク上のアドレスおよび未使用ブロックの位置を管理する未使用領域テーブルとを含むインデックスDBを有するデータ仲介装置と、を含めて構成されるネットワークシステムにおけるデータ仲介装置であって、前記クライアントから読み込み要求および書き込み要求受信に用いる第1のインターフェイスと、前記記憶装置との通信に用いる第2のインターフェイスと、前記読み込み要求をもとに前記インデックスDBから読み込みデータの位置情報を取得し、前記位置情報に対応する記憶装置に第2のインターフェイスを介してデータの読み込みを要求する読み込み制御部と、前記記憶装置から前記データの読み込みの要求に対する返答として第2のインターフェイスを介して受信したデータの断片を、読み込みデータバッファに整列させて格納し、前記データバッファに格納されたデータを先頭から順に前記クライアントに前記第1のインターフェイスを介して返信する読み込みデータ構築部と、前記書き込み要求をもとに前記インデックスDBから書き込みデータの位置情報を決定し、前記位置情報に対応する記憶装置に第2のインターフェイスを介してデータの書き込みを要求する書き込み制御部と、前記記憶装置から前記データの書き込みの要求に対する返答として第2のインターフェイスを介して受信した書き込み結果で、前記インデックスDBを更新する書き込み結果処理部と、を含めて構成されることを特徴とする。 The present invention relates to a client that requests reading / writing of data, a storage device that stores the data that has been requested to be read / written by the client, and a used area table that associates storage locations for each data stored in the storage device And a data mediating device having an index DB including an unused area table that manages the addresses and unused block positions on the network of the storage device, and a data mediating device in a network system comprising: A first interface used for receiving a read request and a write request from the client, a second interface used for communication with the storage device, and obtaining position information of read data from the index DB based on the read request Corresponding to the position information. A read control unit that requests reading of data via the second interface device, the pieces of data received via the second interface in reply to a request of reading of the data from the storage device, read data buffer stores are aligned to, and the reading data constructing unit for returning the data stored in the data buffer from the beginning through the first interface to the client in order, writing from the index DB on the basis of the write request determining the position information of the data, and a write control unit that requests writing of data via the second interface to a storage device corresponding to the position information, the second as a response to the request for writing of the data from said storage device writing received through the interface In result, characterized in that it is constituted by including a write result processing unit that updates the index DB.

これにより、クライアントが遠隔ネットワーク上に分散設置された記憶装置ヘアクセスする際に、データ仲介装置がデータの管理を一括で行うとともに、記憶装置へのアクセスを仲介する。そのため、クライアントが直接記憶装置とアクセスするための新しい構成の導入が不要となり、構成を簡略化することができる。従って、クライアントの台数に関わらず、処理動作の遅延、筐体のサイズの増大、部品の導入コストなどを軽減することができる。   Thus, when the client accesses the storage devices distributed on the remote network, the data mediating device collectively manages the data and mediates the access to the storage device. Therefore, it is not necessary to introduce a new configuration for the client to directly access the storage device, and the configuration can be simplified. Therefore, regardless of the number of clients, it is possible to reduce delays in processing operations, an increase in the size of the housing, the introduction cost of parts, and the like.

本発明は、前記クライアントと通信するための第1のインターフェイス、または、前記記憶装置と通信するための第2のインターフェイスのうち、少なくとも1つのインターフェイスが、iSCSI(Internet Small Computer System Interface)に従ったデータ通信プロトコルにより、データを通信することを特徴とする。   According to the present invention, at least one of the first interface for communicating with the client or the second interface for communicating with the storage device is in accordance with iSCSI (Internet Small Computer System Interface). Data is communicated by a data communication protocol.

これにより、既に普及している標準規格であるiSCSIに適合したクライアントおよび記憶装置を、そのまま通信システムの一部として流用することが可能となる。よって、開発者にとっては新たなクライアントおよび記憶装置を開発するコストと期間を削減することができ、システム構築者にとっては既にある機器を活用できるので導入コストを削減することができる。   As a result, a client and a storage device compatible with iSCSI, which is an already popular standard, can be used as part of the communication system. Therefore, it is possible for the developer to reduce the cost and period for developing a new client and storage device, and for the system builder, the existing equipment can be utilized, so that the introduction cost can be reduced.

本発明によれば、クライアントが遠隔ネットワーク上に分散設置された記憶装置ヘアクセスする際に、データ仲介装置を利用することで、クライアントに新しい装置の導入が不要となり、構成を簡略化することができる。従って、クライアントの台数に関わらず、処理動作の遅延、筐体のサイズの増大、部品の導入コストなどを軽減することができる。なお、データ仲介装置は、ネットワークに接続される任意のクライアントからのデータアクセスを仲介するため、個々のクライアントが記憶装置へ直接アクセス機能を有する構成と比較すると、機能的に同等である。   According to the present invention, when a client accesses a storage device distributed on a remote network, the use of a data mediating device eliminates the need to introduce a new device to the client and simplifies the configuration. it can. Therefore, regardless of the number of clients, it is possible to reduce delays in processing operations, an increase in the size of the housing, the introduction cost of parts, and the like. Since the data mediating apparatus mediates data access from any client connected to the network, it is functionally equivalent compared to a configuration in which each client has a function of directly accessing the storage device.

図1は、通信システムを示す構成図である。図1では、各ネットワークはIP(Internet Protocol)による通信装置を有し、IPを利用した通信が可能であることを想定するが、IPの代わりに一般的なネットワークとしてもよい。   FIG. 1 is a configuration diagram illustrating a communication system. In FIG. 1, it is assumed that each network has a communication device based on IP (Internet Protocol) and communication using IP is possible, but a general network may be used instead of IP.

図1の通信システムは、広帯域なリンクで構成されるIPネットワークである基幹ネットワークNCと、クライアントCが直接接続されているネットワークである内部IPネットワークNIと、記憶装置Rが接続されているネットワークである遠隔IPネットワークNRと、が、エッジルータ(図示せず)によって接続されている。   The communication system in FIG. 1 is a backbone network NC that is an IP network composed of broadband links, an internal IP network NI that is a network to which a client C is directly connected, and a network to which a storage device R is connected. A certain remote IP network NR is connected by an edge router (not shown).

内部IPネットワークNIは、例えばイーサネット(登録商標)のようなLAN(Local Area Network)を利用して構成されていて、各インターフェイスがLANのネットワークケーブル(図示せず)とネットワークハブ(図示せず)やルータ(図示せず)などの中継機器などを介して、相互にIPによる通信が可能となっている。また、遠隔IPネットワークNRは、前記した内部IPネットワークNIと同様、LANを利用して構成されていて、相互にIPによる通信が可能となっている。   The internal IP network NI is configured using a LAN (Local Area Network) such as Ethernet (registered trademark), for example, and each interface is a LAN network cable (not shown) and a network hub (not shown). Communication via IP is possible via a relay device such as a router or a router (not shown). Similarly to the internal IP network NI described above, the remote IP network NR is configured using a LAN and can communicate with each other by IP.

さらに、図1の通信システムは、内部IPネットワークNIに接続されるデータ仲介装置1と、データ仲介装置1を介して記憶装置Rにデータのアクセスを行うクライアントCと、データ仲介装置1からの制御によりデータの読み書きを行う記憶装置Rと、を含めて構成される。   Further, the communication system of FIG. 1 includes a data mediating device 1 connected to the internal IP network NI, a client C that accesses data to the storage device R via the data mediating device 1, and a control from the data mediating device 1. And a storage device R that reads and writes data.

なお、図1の通信システムを構成する各装置(クライアントC、データ仲介装置1、記憶装置R)は、演算処理を行う際に用いられる記憶手段としてのメモリと、前記演算処理を行う演算処理装置とを少なくとも備えるコンピュータとして構成される。なお、メモリは、RAM(Random Access Memory)などにより構成される。演算処理は、CPU(Central Processing Unit)によって構成される演算処理装置が、メモリ上のプログラムを実行することで、実現される。   Note that each device (client C, data mediating device 1, and storage device R) that constitutes the communication system of FIG. 1 includes a memory serving as storage means used when performing arithmetic processing, and an arithmetic processing device that performs the arithmetic processing. The computer is provided with at least. The memory is constituted by a RAM (Random Access Memory) or the like. Arithmetic processing is realized by an arithmetic processing unit configured by a CPU (Central Processing Unit) executing a program on a memory.

クライアントCは、内部IPネットワークNIに接続された従来技術で実現された記憶装置Rからデータを取得し、稼動しているアプリケーションで利用する、もしくは稼動しているアプリケーションから、データを内部IPネットワークNIに接続された記憶装置Rへ記録を行う機能を有するコンピュータなどを想定する。遠隔に設置された記憶装置Rに対して、データの読み書きを行う機能を持たないこともある。   The client C obtains data from the storage device R realized by the prior art connected to the internal IP network NI, and uses the data in the running application or sends data from the running application to the internal IP network NI. Assume a computer having a function of recording in the storage device R connected to the. In some cases, the remote storage device R does not have a function of reading and writing data.

記憶装置Rは、ネットワークに直接接続可能な記憶装置であることを想定する。記憶装置Rは、ファイル単位ではなくブロック単位などより粒度の小さな単位で、外部の装置から自由に読み書きを行うことができる機能を有する。このブロック単位でのディスクアクセスを行うために、記憶装置Rは、例えばiSCSIなどの遠隔アクセスのプロトコルが実装されている。   It is assumed that the storage device R is a storage device that can be directly connected to the network. The storage device R has a function capable of freely reading and writing from an external device in a smaller granularity unit such as a block unit rather than a file unit. In order to perform disk access in units of blocks, the storage device R is implemented with a remote access protocol such as iSCSI, for example.

データ仲介装置1は、読み込み用仲介装置1R(図2参照)および書き込み用仲介装置1W(図3参照)の2種類の装置から構成される。この2つの装置において、インデックスDB10の内容が若干異なっている。つまり、書き込み用仲介装置1Wは、インデックスDB10内に記憶装置Rの未使用ブロックの位置を管理する未使用領域テーブル12(図4参照)と、ファイルの配置状態を管理する使用済領域テーブル16(図5参照)と、の両方を有する必要があるが、読み込み用仲介装置1Rは、使用済領域テーブル16(図5参照)を有する。   The data mediating apparatus 1 includes two types of devices: a reading mediating device 1R (see FIG. 2) and a writing mediating device 1W (see FIG. 3). In these two apparatuses, the contents of the index DB 10 are slightly different. That is, the intermediary device 1W for writing uses an unused area table 12 (see FIG. 4) for managing the positions of unused blocks in the storage device R in the index DB 10 and a used area table 16 (see FIG. 4) for managing the arrangement state of files. However, the reading mediating apparatus 1R has a used area table 16 (see FIG. 5).

図2に示す読み込み用仲介装置1Rは、クライアント側インターフェイスIC、記憶装置側インターフェイスIR、インデックスDB10、読み込み制御部14、読み込みデータバッファ20、読み込みデータ構築部22を含めて構成される。以下、各構成要素を具体的に説明する。   2 includes a client-side interface IC, a storage device-side interface IR, an index DB 10, a read control unit 14, a read data buffer 20, and a read data constructing unit 22. Each component will be specifically described below.

クライアントCと通信を行う際のインターフェイスであるクライアント側インターフェイスICは、読み込み処理に関して、2つの機能を有する。1つはクライアントCからデータの読み込み要求を待ち受ける機能であり、もう1つは要求されたデータをクライアントCに返送する機能である。クライアント側インターフェイスICは複数のクライアントCからの要求を同時に待ち受けることができる。   The client-side interface IC that is an interface for communicating with the client C has two functions regarding the reading process. One is a function for waiting for a data read request from the client C, and the other is a function for returning the requested data to the client C. The client side interface IC can wait for requests from a plurality of clients C at the same time.

記憶装置Rと通信を行う際のインターフェイスである記憶装置側インターフェイスIRは、読み込み処理に関して、遠隔ネットワークに接続されている記憶装置Rへ読み込み命令を行い、その結果を取得する機能を有する。記憶装置側インターフェイスIRは複数であることを基本とするが、取得する対象となるデータのサイズが非常に小さいときや、記憶装置Rの空き容量の問題で複数の記憶装置Rに分散して保存できなかったデータを読み出す場合などには、単体となることもある。   The storage device side interface IR, which is an interface for communicating with the storage device R, has a function of issuing a read command to the storage device R connected to the remote network and acquiring the result regarding the read processing. Basically, there are a plurality of storage device side interfaces IR. However, when the size of the data to be acquired is very small or the storage device R has a free space problem, it is distributed and stored in the plurality of storage devices R. When data that could not be read is read out, it may become a single unit.

記憶装置Rに格納されるデータごとにその格納場所を対応づけるインデックスDB10は、記憶装置Rの群において、どの記憶装置Rのどの部分にどのようなデータ断片が保存されているかを管理するデータベースである。そして、インデックスDB10は、ファイルの配置状態を管理する使用済領域テーブル16(図5参照)を有している。使用済領域テーブル16は、保存している各ファイルの情報の管理を行っている。保存されている各ファイルのサイズと、ファイルの中のどの範囲が、どの記憶装置Rのどのブロックに記録されているかといった、ファイルの配置状態の情報の管理を行っている。ファイルの配置状態の情報はファイルの読み出し、ファイルの更新を行う際に利用される。   The index DB 10 that associates the storage location of each data stored in the storage device R is a database that manages what data fragment is stored in which part of which storage device R in the group of storage devices R. is there. The index DB 10 has a used area table 16 (see FIG. 5) that manages the arrangement state of files. The used area table 16 manages information on each stored file. Information on the arrangement state of the file is managed, such as the size of each stored file and which range in the file is recorded in which block of which storage device R. Information on the arrangement state of the file is used when reading and updating the file.

図5に示す使用済領域テーブル16は、クライアントCが操作する単位であるファイルのファイル名、そのファイル名のデータの範囲(ファイルデータにおける順序)、そのファイルが格納される記憶装置RのID、そのファイルが格納される記憶装置Rの格納ブロック、の対応表である。例えば、ファイルAは、2つの記憶装置R(ID=A,B)に分散されて、格納されている。   The used area table 16 shown in FIG. 5 includes a file name of a file that is a unit operated by the client C, a data range of the file name (order in the file data), an ID of the storage device R in which the file is stored, It is a correspondence table of the storage block of the storage device R in which the file is stored. For example, the file A is distributed and stored in two storage devices R (ID = A, B).

読み込み制御部14は、クライアントCから読み取りを依頼されたデータを記憶装置Rから読み込む。そのため、読み込み制御部14は、使用済領域テーブル16にアクセスすることにより、読み込み時は、読み出したいファイルの名前や、そのファイル中での位置情報などの読み込み条件を受け取り、それに対応した位置情報を返す機能を持つ。具体的には、読み込み制御部14は、クライアント側インターフェイスICからデータの読み込み条件を受け取って、その情報をインデックスDB10へ送信し、要求されたデータの断片の位置情報を取得し、読み込みを行う対象とする記憶装置Rを決定し、記憶装置側インターフェイスIRへ読み出し要求を行う。   The read control unit 14 reads data requested to be read from the client C from the storage device R. For this reason, the reading control unit 14 accesses the used area table 16 to receive a reading condition such as the name of a file to be read and position information in the file at the time of reading, and the corresponding position information is received. Has the function to return. Specifically, the read control unit 14 receives data read conditions from the client-side interface IC, transmits the information to the index DB 10, obtains position information of the requested data fragment, and performs reading. Is determined, and a read request is made to the storage device side interface IR.

読み込みデータバッファ20は、クライアントCから読み取りを依頼されたデータの一時保存を行う。そして、読み込みデータ構築部22は、記憶装置Rから受け取ったデータから正しいデータ(整列されたデータ)を構築する。つまり、読み込みデータ構築部22は、クライアントCに送信する準備が整い次第、クライアント側インターフェイスICへ送信命令を行う時に、読み込みデータバッファ20からデータを読み出して、クライアントCに送信する。   The read data buffer 20 temporarily stores data requested to be read by the client C. Then, the read data construction unit 22 constructs correct data (aligned data) from the data received from the storage device R. In other words, the read data construction unit 22 reads data from the read data buffer 20 and transmits it to the client C when a transmission command is sent to the client side interface IC as soon as preparation for transmission to the client C is completed.

図3に示す書き込み用仲介装置1Wは、クライアント側インターフェイスIC、記憶装置側インターフェイスIR、インデックスDB10、書き込み制御部18、書き込みデータバッファ24、書き込み結果処理部26を含めて構成される。以下、図2に示した読み込み用仲介装置1Rの構成要素と同じものの説明は省略しつつ、書き込み用仲介装置1Wの各構成要素を具体的に説明する。   3 includes a client-side interface IC, a storage device-side interface IR, an index DB 10, a write control unit 18, a write data buffer 24, and a write result processing unit 26. Hereinafter, the description of the same components as those of the read intermediary device 1R illustrated in FIG. 2 will be omitted, and each component of the write intermediary device 1W will be specifically described.

クライアント側インターフェイスICは、クライアントCと通信を行う際のインターフェイスである。そして、クライアント側インターフェイスICは、書き込み処理に関して、2つの機能を有する。1つはクライアントCからデータの更新もしくは新規保存の要求と、保存するデータの受信を行う機能であり、もう1つはクライアントCが要求したデータの保存が正常に終了したのか、それとも失敗したのかを、クライアントCへ通知する機能である。クライアント側インターフェイスICは複数のクライアントCからの要求を同時に待ち受けることができる。   The client side interface IC is an interface for communicating with the client C. The client side interface IC has two functions regarding the writing process. One is a function for requesting data update or new storage from the client C and receiving the data to be stored, and the other is whether the storage of the data requested by the client C has been completed normally or has failed. This is a function for notifying the client C of the above. The client side interface IC can wait for requests from a plurality of clients C at the same time.

記憶装置側インターフェイスIRは、記憶装置Rと通信を行う際のインターフェイスである。そして、記憶装置側インターフェイスIRは、書き込み処理に関して、遠隔IPネットワークNRに接続されている記憶装置Rへ書き込み命令を行い、その結果を取得するものである。この記憶装置側インターフェイスIRは複数であることが基本であるが、書き込みを行うデータのサイズが非常に小さいときや、記憶装置Rの空き容量の問題で複数の記憶装置Rに分散して保存できない場合などには、単体となることもある。   The storage device side interface IR is an interface when communicating with the storage device R. Then, the storage device side interface IR issues a write command to the storage device R connected to the remote IP network NR with respect to the write processing, and acquires the result. Basically, there are a plurality of storage device side interfaces IR. However, when the size of data to be written is very small or due to a problem with the free space of the storage device R, it cannot be distributed and stored in the plurality of storage devices R. In some cases, it may be a single entity.

インデックスDB10は、書き込みたいファイルの名前などの情報を受け取り、データの更新であるか新規保存であるかの判断を行い、ファイルサイズを受け取り、どの記憶装置Rにそのデータを記録する余裕があるかを返す。そのため、インデックスDB10は、使用済領域テーブル16に加え、記憶装置Rの未使用ブロックの位置を管理する未使用領域テーブル12(図4参照)をさらに有する。この未使用領域テーブル12は、クライアントCが1つの記憶装置Rとして見なす記憶装置R群の情報が管理されている。それぞれの記憶装置RにはIDが割り振られ、そのIDによって記憶装置Rが一意に識別される。IPアドレスとIDが対応づけられていて、この情報を利用することによってネットワーク上の位置が特定できる。容量、未使用ブロックの情報はファイルの更新、ファイルの新規保存を行う際に利用される。   The index DB 10 receives information such as the name of the file to be written, determines whether the data is updated or newly saved, receives the file size, and which storage device R has room to record the data return it. Therefore, in addition to the used area table 16, the index DB 10 further includes an unused area table 12 (see FIG. 4) for managing the positions of unused blocks in the storage device R. In this unused area table 12, information of storage device R groups that the client C regards as one storage device R is managed. Each storage device R is assigned an ID, and the storage device R is uniquely identified by the ID. An IP address is associated with an ID, and the location on the network can be specified by using this information. The capacity and unused block information is used when updating a file or saving a new file.

図4に示す未使用領域テーブル12は、遠隔IPネットワークNRに位置する記憶装置R、その記憶装置RのIPアドレス、その記憶装置RのID、その記憶装置Rの記憶可能な容量、その記憶装置Rの記憶可能な未使用ブロック、の対応表である。例えば、記憶装置R(ID=A)には、未使用ブロックとして、101〜120という第1のブロックと、171〜200という第2のブロックという2つのブロックが存在する。   The unused area table 12 shown in FIG. 4 includes the storage device R located in the remote IP network NR, the IP address of the storage device R, the ID of the storage device R, the capacity that can be stored in the storage device R, and the storage device. 7 is a correspondence table of R storable unused blocks. For example, in the storage device R (ID = A), there are two blocks, ie, a first block 101 to 120 and a second block 171 to 200 as unused blocks.

書き込み制御部18は、クライアントCから書き込みを依頼されたデータを記憶装置Rに書き込む。具体的には、書き込み制御部18は、インデックスDB10へ書き込みデータの条件を送信し、更新元ファイルの位置情報や記憶装置Rの空き状況を取得する。取得した情報から得られる条件を考慮して、受け取ったデータをどのように分割し、どの記憶装置Rに保存するのが適切であるかを判断して、書き込みを行う記憶装置Rを選択する。選択された記憶装置側インターフェイスIRに対して、書き込みデータバッファ24に保存されているデータの断片を保存するように命令を行う。   The write control unit 18 writes the data requested to be written by the client C into the storage device R. Specifically, the write control unit 18 transmits the write data condition to the index DB 10 and acquires the location information of the update source file and the availability of the storage device R. In consideration of the conditions obtained from the acquired information, it is determined how to divide the received data and in which storage device R it is appropriate to store, and the storage device R to be written is selected. The selected storage device side interface IR is instructed to save a fragment of data stored in the write data buffer 24.

書き込みデータバッファ24は、クライアントCから書き込みを依頼されたデータの一時保存を行う。よって、書き込みデータバッファ24は、クライアントCからのデータ受け渡し処理に遅延が生じないように大容量の高速メモリなどで構成される。そして、書き込みデータバッファ24は、クライアント側インターフェイスICが受け取ったデータを一時保存する。   The write data buffer 24 temporarily stores data requested to be written by the client C. Therefore, the write data buffer 24 is composed of a large-capacity high-speed memory or the like so as not to cause a delay in data transfer processing from the client C. The write data buffer 24 temporarily stores data received by the client side interface IC.

書き込み結果処理部26は、書き込みがすべて正常に終了したかどうかを判定する。すべて成功であった場合、書き込み結果処理部26は、インデックスDB10に結果の更新を行い、クライアント側インターフェイスICに対して、クライアントCに保存が成功したことを伝えるように命令を行う。書き込みが何らかの理由により失敗した場合、書き込み結果処理部26は、クライアントCに失敗通知するように命令し、これまで行われた書き込み作業をすべて取り消す処理を行う。   The writing result processing unit 26 determines whether all writing has been normally completed. If all are successful, the write result processing unit 26 updates the result in the index DB 10 and instructs the client side interface IC to inform the client C that the storage is successful. If the writing fails for some reason, the writing result processing unit 26 instructs the client C to notify the failure, and performs a process of canceling all the writing operations performed so far.

図6は、読み込み用仲介装置1Rによるデータの読み込み処理を示すフローチャートである。この図6の処理における通信メッセージを、図7に示す。   FIG. 6 is a flowchart showing data reading processing by the reading mediating apparatus 1R. A communication message in the process of FIG. 6 is shown in FIG.

まず、読み込み用仲介装置1Rは、クライアントCから読み込み要求P11を受信する(S101)。次に、読み込み制御部14は、読み込み要求P11をもとに、インデックスDB10から読み込みデータの位置情報を取得する(S102)。そして、記憶装置側インターフェイスIRは、読み込みデータの位置情報をもとに、各記憶装置Rに読み込みデータを要求するメッセージ(データ断片要求P12)を送信する(S103)。   First, the read mediating apparatus 1R receives a read request P11 from the client C (S101). Next, the read control unit 14 acquires the position information of the read data from the index DB 10 based on the read request P11 (S102). Then, the storage device side interface IR transmits a message (data fragment request P12) requesting the read data to each storage device R based on the position information of the read data (S103).

さらに、記憶装置側インターフェイスIRは、S103の読み込みデータへの応答として、各記憶装置Rから読み込みデータ(データ断片P13)を取得する(S104)。そして、読み込みデータ構築部22は、S104で受信した読み込みデータを、ファイルの順序に従って読み込みデータバッファ20に格納することで、読み込みデータを整列する(S105)。さらに、クライアント側インターフェイスICは、S105で整列された読み込みデータ(データP14)を読み込みデータバッファ20から順次読み取り、クライアントCに送信する(S106)。   Further, the storage device side interface IR acquires the read data (data fragment P13) from each storage device R as a response to the read data in S103 (S104). Then, the read data construction unit 22 arranges the read data by storing the read data received in S104 in the read data buffer 20 according to the order of the files (S105). Further, the client side interface IC sequentially reads the read data (data P14) arranged in S105 from the read data buffer 20, and transmits it to the client C (S106).

図8は、データの書き込み処理を示すフローチャートである。この図8の処理における通信メッセージを、図9に示す。   FIG. 8 is a flowchart showing a data writing process. A communication message in the process of FIG. 8 is shown in FIG.

まず、書き込み用仲介装置1Wは、クライアントCから書き込み要求とデータP21を受信する(S201)。次に、書き込み制御部18は、S201で受信した書き込みデータを書き込みデータバッファ24に一次保存する(S202)。そして、記憶装置側インターフェイスIRは、各記憶装置Rに書き込みデータの保存を要求するメッセージ(書き込み要求とデータP22)を送信する(S203)。   First, the mediation device for writing 1W receives a write request and data P21 from the client C (S201). Next, the write controller 18 primarily stores the write data received in S201 in the write data buffer 24 (S202). Then, the storage device side interface IR transmits a message (write request and data P22) requesting storage of the write data to each storage device R (S203).

そして、記憶装置側インターフェイスIRは、S203への返答として、各記憶装置Rから書き込み結果P23を取得する(S204)。なお、書き込み結果P23は、例えば、書き込み成功または書き込み失敗のいずれかを示す成功フラグである。さらに、書き込み結果処理部26は、インデックスDB10にS204の書き込み結果を反映(更新)する(S205)。そして、クライアント側インターフェイスICは、S205で更新されたインデックスDB10をもとに、ファイル全体の書き込み結果P24をクライアントCに送信する(S206)。   Then, the storage device side interface IR acquires the write result P23 from each storage device R as a response to S203 (S204). Note that the write result P23 is, for example, a success flag indicating either write success or write failure. Further, the write result processing unit 26 reflects (updates) the write result of S204 in the index DB 10 (S205). Then, the client-side interface IC transmits the entire file write result P24 to the client C based on the index DB 10 updated in S205 (S206).

以上説明した本実施形態の要約は、次の通りである。本実施形態は、クライアントCが複数ネットワークに分散設置された記憶装置Rへデータの読み書きを行う方式とその装置に関するものである。つまり、本実施形態は、一塊のデータを複数の記憶装置Rに分散して格納することで、データの書き込み、読み出しを並列処理する。内部ネットワークを構成する装置は、クライアントC、データ仲介装置1および、記憶装置Rである。なお、クライアントCは、従来技術の同一ネットワーク内に設置された記憶装置Rに読み書きを行う機能を有する。   The summary of this embodiment described above is as follows. The present embodiment relates to a method and apparatus for a client C to read / write data from / to storage devices R distributed in a plurality of networks. That is, according to the present embodiment, a lump of data is distributed and stored in a plurality of storage devices R, whereby data writing and reading are processed in parallel. The devices constituting the internal network are the client C, the data mediating device 1 and the storage device R. Note that the client C has a function of reading / writing data from / to a storage device R installed in the same network of the prior art.

よって、遠隔ネットワークに分散して設置された記憶装置Rを利用したデータの読み書きを行う際、自ネットワーク内に設置されたデータ仲介装置1を介してアクセスをする。クライアントCに対して、データ仲介装置1は、従来技術で実現されている内部ネットワークに設置された記憶装置Rに見せかけて動作をするため、各クライアントCに追加の投資が不要となる。これによって、各クライアントCにかかる負荷の増加を抑制され、データ仲介装置1の導入コストだけで済むようになる。   Therefore, when reading and writing data using the storage devices R distributed and installed in the remote network, access is made via the data mediating device 1 installed in the local network. For the client C, the data mediating apparatus 1 operates as if it is a storage device R installed in an internal network realized by the conventional technology, so that no additional investment is required for each client C. As a result, an increase in the load on each client C is suppressed, and only the introduction cost of the data mediating apparatus 1 is required.

具体的には、データ仲介装置1は、クライアントCから一塊のデータを一旦受け取った上でデータの読み書きを行う。データ仲介装置1は、一塊のデータを分解して並列に記憶装置Rに書き込み、読み出し時には並列して記憶装置Rから読み出し、ばらばらのデータの順番を整えてクライアントC端末に渡す処理を行う。   Specifically, the data mediating apparatus 1 once receives a batch of data from the client C and then reads and writes the data. The data mediating apparatus 1 performs a process of disassembling a lump of data and writing it to the storage device R in parallel, reading it from the storage device R in parallel at the time of reading, arranging the order of the pieces of data, and passing them to the client C terminal.

データ仲介装置1として機能する際に必要な手段は、クライアントCから読み込み要求を受け付け、要求されたデータが保存されている1つ以上の遠隔に位置する記憶装置Rを選択し、選択された各遠隔記憶装置Rからデータ全体もしくは断片を取得し、取得したデータを1つのデータに構築してクライアントCに返送する手段と、クライアントCから書き込み要求を受け付け、要求されたデータを書き込むのに適した適切な遠隔記憶装置Rを1つ以上選択し、選択された記憶装置Rに対して対象のデータ全体もしくは断片を書き込むように要求を行い、その成否をクライアントCに通知する手段である。   The means necessary for functioning as the data mediating apparatus 1 receives a read request from the client C, selects one or more remotely located storage devices R in which the requested data is stored, and selects each selected A means for acquiring the entire data or fragment from the remote storage device R, constructing the acquired data into one data and returning it to the client C, and receiving a write request from the client C and suitable for writing the requested data This is means for selecting one or more appropriate remote storage devices R, requesting the selected storage devices R to write the entire target data or fragments, and notifying the client C of success or failure.

これにより、データ仲介装置1は、内部ネットワークに対して、従来技術で実現されているネットワークに接続された記憶装置Rとして動作をして、クライアントCから受け取ることが可能である。また、受け取った読み書きの要求を遠隔の記憶装置Rに対して更新させる機能を有する。記憶装置Rは、データ仲介装置1からの要求に従い、データの断片を読み出し、書き込みをすることが可能である。このとき、クライアントCがデータ仲介装置1を介して遠隔に位置する記憶装置Rの集合に対してデータを読み書きする。   As a result, the data mediating apparatus 1 can operate as a storage device R connected to the network realized in the prior art with respect to the internal network and receive it from the client C. In addition, the remote storage device R has a function of updating the received read / write request. The storage device R can read and write data fragments in accordance with a request from the data mediating device 1. At this time, the client C reads / writes data from / to the set of storage devices R located remotely via the data mediating apparatus 1.

以上説明した本発明は、以下のようにその趣旨を逸脱しない範囲で広く変形実施することができる。   The present invention described above can be widely modified without departing from the spirit thereof as follows.

例えば、クライアントCからデータ仲介装置1、データ仲介装置1から各遠隔の記憶装置Rの間で通信が行われるが、この通信の方法としてiSCSIを利用することとしてもよいし、別の一般的なデータのアクセス制御のプロトコルを用いてもよい。   For example, communication is performed from the client C to the data mediating apparatus 1 and from the data mediating apparatus 1 to each remote storage device R. As a communication method, iSCSI may be used. A data access control protocol may be used.

また、データ仲介装置1が記憶装置Rに読み書きするデータとして、クライアントCから読み書きを要求されたデータそのものでもよいし、その要求されたデータから生成されるデータでもよい。なお、生成されるデータは、例えば、パリティ符号などのデータ誤りを検出する符号、ハミング符号などのデータ誤りを訂正する符号などである。そして、データ仲介装置1は、同じデータについて、1つの記憶装置Rのみに書き込みを行うこととしてもよいし、複数の記憶装置Rにコピーして書き込みを行うこととしてもよい。これにより、データの冗長化が実現できるので、障害に強い(信頼性の高い)システムを構築することができる。   Further, the data that the data mediating apparatus 1 reads / writes to / from the storage device R may be data itself that is requested to be read / written by the client C, or data that is generated from the requested data. The generated data is, for example, a code for detecting a data error such as a parity code, a code for correcting a data error such as a Hamming code, and the like. Then, the data mediating apparatus 1 may write the same data in only one storage device R, or may copy and write to the plurality of storage devices R. Thereby, since data redundancy can be realized, a system that is resistant to failures (high in reliability) can be constructed.

本発明の一実施形態に関する通信システムを示す構成図である。It is a block diagram which shows the communication system regarding one Embodiment of this invention. 本発明の一実施形態に関する読み込み用仲介装置を示す構成図である。It is a block diagram which shows the mediation apparatus for reading regarding one Embodiment of this invention. 本発明の一実施形態に関する書き込み用仲介装置を示す構成図である。It is a block diagram which shows the mediation apparatus for writing regarding one Embodiment of this invention. 本発明の一実施形態に関する未使用領域テーブルを示す構成図である。It is a block diagram which shows the unused area | region table regarding one Embodiment of this invention. 本発明の一実施形態に関する使用済領域テーブルを示す構成図である。It is a block diagram which shows the used area | region table regarding one Embodiment of this invention. 本発明の一実施形態に関するデータの読み込み処理を示すフローチャートである。It is a flowchart which shows the reading process of the data regarding one Embodiment of this invention. 本発明の一実施形態に関するデータの読み込み処理における通信を示す説明図である。It is explanatory drawing which shows the communication in the data reading process regarding one Embodiment of this invention. 本発明の一実施形態に関するデータの書き込み処理を示すフローチャートである。It is a flowchart which shows the write-in process of the data regarding one Embodiment of this invention. 本発明の一実施形態に関するデータの書き込み処理における通信を示す説明図である。It is explanatory drawing which shows the communication in the data write-in process regarding one Embodiment of this invention.

符号の説明Explanation of symbols

C クライアント
R 記憶装置
1 データ仲介装置
1R 読み込み用仲介装置
1W 書き込み用仲介装置
IC クライアント側インターフェイス
IR 記憶装置側インターフェイス
10 インデックスDB
12 未使用領域テーブル
14 読み込み制御部
16 使用済領域テーブル
18 書き込み制御部
20 読み込みデータバッファ
22 読み込みデータ構築部
24 書き込みデータバッファ
26 書き込み結果処理部
C client R storage device 1 data mediation device 1R read mediation device 1W write mediation device IC client side interface IR storage device side interface 10 index DB
12 Unused Area Table 14 Read Control Unit 16 Used Area Table 18 Write Control Unit 20 Read Data Buffer 22 Read Data Construction Unit 24 Write Data Buffer 26 Write Result Processing Unit

Claims (4)

データの読み書きを要求するクライアントと、前記クライアントから読み書きを要求された前記データを格納する記憶装置と、前記記憶装置に格納されるデータごとにその格納場所を対応づける使用済領域テーブルと前記記憶装置のネットワーク上のアドレスおよび未使用ブロックの位置を管理する未使用領域テーブルとを含むインデックスDBを有するデータ仲介装置と、を含めて構成されるネットワークシステムにおけるデータ仲介方法であって、
前記データ仲介装置が、
前記クライアントとの通信に用いる第1のインターフェイスと、前記記憶装置との通信に用いる第2のインターフェイスとを備え、
前記クライアントから前記第1のインターフェイスを介して読み込み要求および書き込み要求を受信する手順と、
前記読み込み要求をもとに前記インデックスDBから読み込みデータの位置情報を取得し、前記位置情報に対応する記憶装置に前記第2のインターフェイスを介してデータの読み込みを要求する手順と、
前記記憶装置から前記データの読み込みの要求に対する返答として前記第2のインターフェイスを介して受信したデータの断片を、読み込みデータバッファに整列させて格納し、前記データバッファに格納されたデータを先頭から順に前記クライアントに前記第1のインターフェイスを介して返信する手順と、
前記書き込み要求をもとに前記インデックスDBから書き込みデータの位置情報を決定し、前記位置情報に対応する記憶装置に前記第2のインターフェイスを介してデータの書き込みを要求する手順と、
前記記憶装置から前記データの書き込みの要求に対する返答として前記第2のインターフェイスを介して受信した書き込み結果で、前記インデックスDBを更新する手順と、
を実行することを特徴とするデータ仲介方法。
Client for requesting reading / writing of data, storage device for storing data requested to read / write by client, used area table for associating storage location for each data stored in storage device, and storage device A data mediating method in a network system configured to include a data mediating device having an index DB including an unused area table that manages addresses and unused block positions on the network,
The data mediating device is
A first interface used for communication with the client and a second interface used for communication with the storage device;
A step of receiving the read and write requests via the first interface from the client,
A step of acquiring position information of read data from the index DB based on the read request, and requesting a storage device corresponding to the position information to read data via the second interface ;
Fragments of data received via the second interface in reply to a request of reading of the data from the storage device, and stores align the read data buffer, in order the data stored in the data buffer from the beginning and procedures to be returned via the first interface to the client,
Determining the position information of the write data from the index DB based on the write request, and requesting the storage device corresponding to the position information to write the data via the second interface ;
Updating the index DB with a write result received via the second interface as a response to the data write request from the storage device;
A data mediating method characterized by executing
前記データ仲介装置は、前記第1のインターフェイス、または、前記第2のインターフェイスのうち、少なくとも1つのインターフェイスが、iSCSI(Internet Small Computer System Interface)に従ったデータ通信プロトコルにより、データを通信すること
を特徴とする請求項1に記載のデータ仲介方法。
It said data mediation device, before Symbol first interface or, among the pre-Symbol second interface, at least one interface, the data communication protocol in accordance with the iSCSI (Internet Small Computer System Interface) , for communicating data The data mediation method according to claim 1, wherein:
データの読み書きを要求するクライアントと、前記クライアントから読み書きを要求された前記データを格納する記憶装置と、前記記憶装置に格納されるデータごとにその格納場所を対応づける使用済領域テーブルと前記記憶装置のネットワーク上のアドレスおよび未使用ブロックの位置を管理する未使用領域テーブルとを含むインデックスDBを有するデータ仲介装置と、を含めて構成されるネットワークシステムにおけるデータ仲介装置であって、
前記クライアントから読み込み要求および書き込み要求受信に用いる第1のインターフェイスと、
前記記憶装置との通信に用いる第2のインターフェイスと、
前記読み込み要求をもとに前記インデックスDBから読み込みデータの位置情報を取得し、前記位置情報に対応する記憶装置に第2のインターフェイスを介してデータの読み込みを要求する読み込み制御部と、
前記記憶装置から前記データの読み込みの要求に対する返答として第2のインターフェイスを介して受信したデータの断片を、読み込みデータバッファに整列させて格納し、前記データバッファに格納されたデータを先頭から順に前記クライアントに前記第1のインターフェイスを介して返信する読み込みデータ構築部と、
前記書き込み要求をもとに前記インデックスDBから書き込みデータの位置情報を決定し、前記位置情報に対応する記憶装置に第2のインターフェイスを介してデータの書き込みを要求する書き込み制御部と、
前記記憶装置から前記データの書き込みの要求に対する返答として第2のインターフェイスを介して受信した書き込み結果で、前記インデックスDBを更新する書き込み結果処理部と、
を含めて構成されることを特徴とするデータ仲介装置。
Client for requesting reading / writing of data, storage device for storing data requested to read / write by client, used area table for associating storage location for each data stored in storage device, and storage device A data mediating apparatus in a network system configured to include an index DB including an unused area table that manages addresses and unused block positions on the network,
A first interface for receiving signals read and write requests from said client,
A second interface used for communication with the storage device;
A read control unit that acquires position information of read data from the index DB based on the read request, and requests a storage device corresponding to the position information to read data via a second interface ;
Wherein from the storage device to fragment the data received via the second interface in reply to a request of reading of the data, and stores aligning the read data buffer, in order the data stored in the data buffer from the beginning A read data construction unit that sends a reply to the client via the first interface ;
A write control unit that determines position information of write data from the index DB based on the write request, and requests a storage device corresponding to the position information to write data via a second interface ;
A write result processing unit that updates the index DB with a write result received via the second interface as a response to the data write request from the storage device;
A data intermediary device characterized by comprising.
第1のインターフェイス、または、前記第2のインターフェイスのうち、少なくとも1つのインターフェイスが、iSCSI(Internet Small Computer System Interface)に従ったデータ通信プロトコルにより、データを通信すること
を特徴とする請求項3に記載のデータ仲介装置。
Before SL first interface or, among the pre-Symbol second interface, at least one interface, the data communication protocol in accordance with the iSCSI (Internet Small Computer System Interface) , characterized by communicating data according Item 4. The data mediating apparatus according to Item 3.
JP2004347458A 2004-11-30 2004-11-30 Data mediation method and data mediation device Expired - Fee Related JP4478000B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004347458A JP4478000B2 (en) 2004-11-30 2004-11-30 Data mediation method and data mediation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004347458A JP4478000B2 (en) 2004-11-30 2004-11-30 Data mediation method and data mediation device

Publications (2)

Publication Number Publication Date
JP2006155398A JP2006155398A (en) 2006-06-15
JP4478000B2 true JP4478000B2 (en) 2010-06-09

Family

ID=36633594

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004347458A Expired - Fee Related JP4478000B2 (en) 2004-11-30 2004-11-30 Data mediation method and data mediation device

Country Status (1)

Country Link
JP (1) JP4478000B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10234933A1 (en) * 2002-07-31 2004-03-18 Advanced Micro Devices, Inc., Sunnyvale Buffering of non-posted read commands and responses
KR100823734B1 (en) * 2006-07-07 2008-04-21 한국전자통신연구원 Data acceleration apparatus for iSCSI and iSCSI storage system using the same
JP2015179328A (en) * 2014-03-18 2015-10-08 株式会社東芝 Data transfer device, data receiving system, and data receiving method

Also Published As

Publication number Publication date
JP2006155398A (en) 2006-06-15

Similar Documents

Publication Publication Date Title
US9537710B2 (en) Non-disruptive failover of RDMA connection
US9830088B2 (en) Optimized read access to shared data via monitoring of mirroring operations
US8285824B2 (en) Storage system and data replication method that refuses one or more requests for changing the first logical configuration information until the first storage apparatus and second storage apparatus are synchronized
TWI782487B (en) Method for performing simple storage service seamless migration using index objects, host device, and storage server
WO2011157144A2 (en) Data reading and writing method, device and storage system
CN108762668B (en) Method and device for processing write conflict
US9891992B2 (en) Information processing apparatus, information processing method, storage system and non-transitory computer readable storage media
JP6233403B2 (en) Storage system, storage device, storage device control method and control program, management device, management device control method and control program
JP4478000B2 (en) Data mediation method and data mediation device
EP3167372B1 (en) Methods for facilitating high availability storage services and corresponding devices
JP4997784B2 (en) Data storage system, data storage method, and data storage program
US20150135004A1 (en) Data allocation method and information processing system
US7574529B2 (en) Addressing logical subsystems in a data storage system
WO2012046585A1 (en) Distributed storage system, method of controlling same, and program
JP6237925B2 (en) Cluster system and cluster control method
US10191690B2 (en) Storage system, control device, memory device, data access method, and program recording medium
WO2015198371A1 (en) Storage system and memory control method
CN113434290A (en) Data processing method and device based on RAFT protocol, and computer storage medium
JP4375121B2 (en) Processing agent method in database management system
JP6891603B2 (en) Backup system, storage device, data transfer method and program
TWI769796B (en) Method for performing simple storage service seamless migration using index objects, host device, and storage server
JP6683160B2 (en) Storage system and communication method
JP5754778B2 (en) Storage device sharing system, management device, processing device, storage device sharing method, management method, access method, and program
WO2022003911A1 (en) Workflow consistency securing device, workflow consistency securing method, and workflow consistency securing program
JP5874526B2 (en) Backup acquisition device, backup acquisition method, and backup acquisition program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100309

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100312

R150 Certificate of patent or registration of utility model

Ref document number: 4478000

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees