JP2005346426A - Data sharing disk device - Google Patents

Data sharing disk device Download PDF

Info

Publication number
JP2005346426A
JP2005346426A JP2004165509A JP2004165509A JP2005346426A JP 2005346426 A JP2005346426 A JP 2005346426A JP 2004165509 A JP2004165509 A JP 2004165509A JP 2004165509 A JP2004165509 A JP 2004165509A JP 2005346426 A JP2005346426 A JP 2005346426A
Authority
JP
Japan
Prior art keywords
unit
command
block
data
virtual disk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004165509A
Other languages
Japanese (ja)
Inventor
Toshiharu Kawasaki
敏治 川▲崎▼
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004165509A priority Critical patent/JP2005346426A/en
Publication of JP2005346426A publication Critical patent/JP2005346426A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a storage device capable of sharing data between a main frame system and an open system and requiring a low storage capacity. <P>SOLUTION: This data sharing disk device connected to a plurality of host computer devices is provided with a plurality of virtual disk parts individually connected to a plurality of host computer devices, a plurality of network parts connected to a plurality of virtual disk parts, a controller part connected to the network parts, and a disk part connected to the controller part. Each of the virtual disk parts carries out communication with the host computer device according to a block access protocol and carries out communication with the controller part via the network part according to a file access protocol. The controller part performs communication with the disk part according to the block access protocol. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、複数のメインフレーム及びオープン系サーバとの間でデータを共有するディスク装置に関する。   The present invention relates to a disk device that shares data among a plurality of mainframes and open servers.

磁気ディスク装置の大容量化に伴い、メインフレームシステムとオープンシステムとの間で、ディスク装置に記録されたデータを共有したいとのニーズが生まれた。しかし、メインフレームシステムとオープンシステムとでは、オペレーティングシステム(OS)及びインターフェースが異なるだけでなく、ディスク装置に記録するデータの形式も異なる。このため、通常は、メインフレームが記録したデータをオープンシステムが読み出すことや、その逆の動作を行うことができない(すなわち、メインフレームシステムとオープンシステムとでデータを共有することができない)。そこで、メインフレームシステムとオープンシステムとの間のデータ形式の変換を行う機構(ソフトウエア)と、メインフレームシステムのデータを記録する第1のディスク装置と、オープンシステムのデータを記録する第2のディスク装置と、データ形式の変換の際に作成される中間データを記録する第3のディスク装置とを備えるデータ記憶システムが提案されている(例えば、特許文献1参照。)。   With the increase in capacity of magnetic disk devices, there has been a need to share data recorded on disk devices between mainframe systems and open systems. However, the mainframe system and the open system not only differ in operating system (OS) and interface, but also differ in the format of data recorded on the disk device. For this reason, normally, the data recorded by the main frame cannot be read by the open system and vice versa (that is, the main frame system and the open system cannot share data). Therefore, a mechanism (software) for converting the data format between the mainframe system and the open system, a first disk device for recording data of the mainframe system, and a second for recording data of the open system There has been proposed a data storage system including a disk device and a third disk device for recording intermediate data created at the time of data format conversion (see, for example, Patent Document 1).

このデータ記憶システムによれば、第1のディスク装置に記録されたメインフレームシステムのデータは、一括して、データ形式を変換されて、第2のディスク装置に複写される。同様にして、第2のディスク装置に記録されたオープンシステムのデータは、一括して、データ形式を変換されて、第1のディスク装置に複写される。その結果、第1のディスク装置と第2のディスク装置には、同一の内容のデータが異なる形式で記録され、メインフレームシステムとオープンシステムがデータの内容を共有することができる。
特開2001−22715号公報
According to this data storage system, the data of the main frame system recorded on the first disk device is collectively converted in data format and copied to the second disk device. Similarly, the data of the open system recorded on the second disk device is collectively converted in data format and copied to the first disk device. As a result, data of the same content is recorded in different formats on the first disk device and the second disk device, and the mainframe system and the open system can share the data content.
Japanese Patent Laid-Open No. 2001-22715

上記の特許文献1に記載された発明によれば、第1のディスク装置と第2のディスク装置には、同一の内容のデータが異なる形式で記録され、さらに、第3のディスク装置には、データ形式の変換の際に作成される中間データが記録される。その結果、実際に記録されるデータの3倍の記憶容量が必要になる。   According to the invention described in the above-mentioned Patent Document 1, data of the same content is recorded in different formats on the first disk device and the second disk device, and further, on the third disk device, Intermediate data created during data format conversion is recorded. As a result, a storage capacity that is three times the data actually recorded is required.

本発明は、メインフレームシステム及びオープンシステムがデータを共有することができ、かつ、必要な記憶容量が小さいディスク装置を提供することを目的とする。   SUMMARY OF THE INVENTION An object of the present invention is to provide a disk device that allows a mainframe system and an open system to share data and requires a small storage capacity.

本発明は、複数のホストコンピュータ装置に接続され、前記ホストコンピュータ装置からの要求に基づいてデータを格納するデータ共有ディスク装置において、前記複数のホストコンピュータ装置の各々と接続される複数の仮想ディスク部と、複数の前記複数の仮想ディスク部に接続されるネットワーク部と、前記ネットワーク部に接続されるコントローラ部と、前記コントローラ部に接続されるディスク部と、を備え、前記仮想ディスク部の各々は、前記ホストコンピュータ装置とブロックアクセスプロトコルによる通信を行い、及び、前記ネットワーク部を経由して、前記コントローラ部とファイルアクセスプロトコルによる通信を行い、前記コントローラ部は、前記ディスク部とブロックアクセスプロトコルによる通信を行うことを特徴とする。   The present invention relates to a plurality of virtual disk units connected to each of the plurality of host computer devices in a data sharing disk device that is connected to the plurality of host computer devices and stores data based on a request from the host computer device. A network unit connected to the plurality of virtual disk units, a controller unit connected to the network unit, and a disk unit connected to the controller unit, each of the virtual disk units Communicating with the host computer device using a block access protocol, and via the network unit, communicating with the controller unit using a file access protocol, and the controller unit communicating with the disk unit using a block access protocol Special to do To.

本発明によると、メインフレームシステム及びオープンシステムがデータを共有することができ、かつ、必要な記憶容量が小さい記憶装置を提供することができる。   According to the present invention, a mainframe system and an open system can share data, and a storage device with a small storage capacity can be provided.

まず、本発明の概要を、図1を参照して説明する。   First, the outline of the present invention will be described with reference to FIG.

図1は、本発明の実施の形態のディスク装置の構成を説明するブロック図である。   FIG. 1 is a block diagram illustrating the configuration of a disk device according to an embodiment of the present invention.

本発明を適用したディスク装置101は、一つ又は複数の仮想ディスク部102、ネットワーク部109、コントローラ部110及びディスク部116によって構成される。図1のディスク装置101は、仮想ディスク部102a及び仮想ディスク部102bを備える。仮想ディスク部102a、仮想ディスク部102b及びコントローラ部110は、ネットワーク部109によって相互に通信可能に接続される。   A disk device 101 to which the present invention is applied includes one or a plurality of virtual disk units 102, a network unit 109, a controller unit 110, and a disk unit 116. The disk device 101 in FIG. 1 includes a virtual disk unit 102a and a virtual disk unit 102b. The virtual disk unit 102a, the virtual disk unit 102b, and the controller unit 110 are connected by a network unit 109 so that they can communicate with each other.

ディスク装置101には、ホストコンピュータとして、サーバ117及びメインフレーム118が接続される。   A server 117 and a main frame 118 are connected to the disk device 101 as host computers.

サーバ117は、オープン系のコンピュータ装置であり、例えば、UNIX(登録商標)が稼動するワークステーションである。サーバ117は、CPU、メモリ、記憶装置、入出力装置等(図示省略)を備える。   The server 117 is an open computer device, for example, a workstation on which UNIX (registered trademark) operates. The server 117 includes a CPU, a memory, a storage device, an input / output device and the like (not shown).

サーバ117は、さらに、外部記憶装置と接続するためのインターフェース(例えば、ファイバーチャネル(FC)インターフェース、SCSIインターフェース、iSCSIインターフェース等)を備える(図示省略)。仮想ディスク部102aは、このインターフェースと通信可能に接続される。   The server 117 further includes an interface (for example, a fiber channel (FC) interface, a SCSI interface, an iSCSI interface, etc.) for connecting to an external storage device (not shown). The virtual disk unit 102a is communicably connected to this interface.

メインフレーム118は、メインフレーム系のコンピュータ装置であり、CPU、メモリ、記憶装置、入出力装置等(図示省略)を備える。   The main frame 118 is a main frame computer device, and includes a CPU, a memory, a storage device, an input / output device and the like (not shown).

メインフレーム118は、さらに、外部記憶装置と接続するためのインターフェース(例えば、ESCONインターフェース、FICONインターフェース等。なお、ESCON及びFICONは、米国IBM Corporationの登録商標又は商標である)を備える(図示省略)。仮想ディスク部102bは、このインターフェースと通信可能に接続される。   The main frame 118 further includes an interface (for example, ESCON interface, FICON interface, etc., ESCON and FICON are registered trademarks or trademarks of IBM Corporation) (not shown) for connecting to an external storage device. . The virtual disk unit 102b is communicably connected to this interface.

仮想ディスク部102aとサーバ117との間の通信は、ブロックアクセスプロトコル(例えば、FCプロトコル、SCSIプロトコル、iSCSIプロトコル等)で行われる。仮想ディスク部102bとメインフレーム118との間の通信は、ブロックアクセスプロトコル(例えば、ESCONプロトコル、FICONプロトコル等)で行われる。   Communication between the virtual disk unit 102a and the server 117 is performed using a block access protocol (for example, FC protocol, SCSI protocol, iSCSI protocol, etc.). Communication between the virtual disk unit 102b and the main frame 118 is performed by a block access protocol (for example, ESCON protocol, FICON protocol, etc.).

一方、仮想ディスク部102a、102b及びコントローラ部110の間の通信は、ファイルアクセスプロトコル(例えば、NFS(Network File System)、CIFS(Common Internet File System)、DAFS(Direct Access File System)等)で行われる。   On the other hand, communication between the virtual disk units 102a and 102b and the controller unit 110 is performed using a file access protocol (for example, NFS (Network File System), CIFS (Common Internet File System), DAFS (Direct Access File System), etc.). Is called.

サーバ117は、仮想ディスク部102aにブロックI/Oコマンドを発行することによって、データの書き込み又は読み出し要求を行う。   The server 117 issues a data write or read request by issuing a block I / O command to the virtual disk unit 102a.

仮想ディスク部102aは、サーバ117から受け付けたブロックI/OコマンドをファイルI/Oコマンドに変換して、ネットワーク部109を経由して、コントローラ部110に送信する。   The virtual disk unit 102 a converts the block I / O command received from the server 117 into a file I / O command, and transmits the file I / O command to the controller unit 110 via the network unit 109.

コントローラ部110は、当該ファイルI/OコマンドをブロックI/Oコマンドに変換して、ディスク部116にアクセスする。   The controller unit 110 converts the file I / O command into a block I / O command and accesses the disk unit 116.

このアクセスに対する応答は、ディスク部116からブロックI/Oコマンドとしてコントローラ部110に送信される。   A response to this access is transmitted from the disk unit 116 to the controller unit 110 as a block I / O command.

コントローラ部110は、ディスク部116から受けた応答を、ファイルI/Oコマンドに変換して、ネットワーク部109を経由して、仮想ディスク部102aに送信する。   The controller unit 110 converts the response received from the disk unit 116 into a file I / O command, and transmits the file I / O command to the virtual disk unit 102a via the network unit 109.

仮想ディスク部102aは、コントローラ部110から受けた応答を、ブロックI/Oコマンドに変換して、サーバ117に送信する。   The virtual disk unit 102 a converts the response received from the controller unit 110 into a block I / O command and transmits the block I / O command to the server 117.

同様にして、仮想ディスク部102bは、メインフレーム118から受け付けたブロックI/Oコマンドを、ファイルI/Oコマンドに変換して、コントローラ部110に送信する。また、コントローラ部110から受けたファイルI/Oコマンドを、ブロックI/Oコマンドに変換して、メインフレーム118に送信する。   Similarly, the virtual disk unit 102 b converts the block I / O command received from the main frame 118 into a file I / O command and transmits it to the controller unit 110. Further, the file I / O command received from the controller unit 110 is converted into a block I / O command and transmitted to the main frame 118.

結局、仮想ディスク部102a及び102bは、それぞれ、サーバ117及びメインフレーム118に対して、通常のディスクドライブ(又は、ディスクアレイ)として動作する。言い換えると、サーバ117及びメインフレーム118は、それぞれ、仮想ディスク部102a及び102bを、通常のディスクドライブ(又は、ディスクアレイ)であると認識する。そして、サーバ117及びメインフレーム118は、仮想ディスク部102a及び102bの論理ユニット(LU)又は論理デバイス(LDEV)に対してデータを入出力する。   Eventually, the virtual disk units 102a and 102b operate as normal disk drives (or disk arrays) for the server 117 and the main frame 118, respectively. In other words, the server 117 and the main frame 118 recognize the virtual disk units 102a and 102b as normal disk drives (or disk arrays), respectively. The server 117 and the mainframe 118 input / output data to / from the logical units (LU) or logical devices (LDEV) of the virtual disk units 102a and 102b.

オープン系のサーバ117が仮想ディスク部102aとやり取りするブロックI/Oは、FBA(Fixed Block Architecture)形式である。一方、メインフレーム118が仮想ディスク部102bとやり取りするブロックI/Oは、CKD(Count Key Data)形式である。一つのディスク装置には、複数のブロック形式でデータを記録することができない。すなわち、異なる形式のブロックI/Oを同一のディスク装置に行うことはできない。しかし、本実施の形態によれば、いずれの形式のブロックI/Oも、仮想ディスク部102a及び102bによって同一のプロトコルのファイルI/Oに変換されてネットワーク部109に送信される。その結果、サーバ117及びメインフレーム118は、同一のコントローラ部110を経由して、同一のディスク部116にアクセスすることができる。   The block I / O exchanged between the open server 117 and the virtual disk unit 102a is in the FBA (Fixed Block Architecture) format. On the other hand, the block I / O that the main frame 118 exchanges with the virtual disk unit 102b is in the CKD (Count Key Data) format. One disk device cannot record data in a plurality of block formats. That is, different types of block I / O cannot be performed on the same disk device. However, according to the present embodiment, any type of block I / O is converted into a file I / O of the same protocol by the virtual disk units 102 a and 102 b and transmitted to the network unit 109. As a result, the server 117 and the main frame 118 can access the same disk unit 116 via the same controller unit 110.

本実施の形態において、コントローラ部110は、NFSを提供する。すなわち、コントローラ部110は、仮想ディスク部102に対して、NFS上の一つのファイルを、仮想ディスク部102のデータを格納するデータ領域として提供する。メインフレーム系のCKD形式のディスク又はオープン系のFBA形式のディスクのデータイメージが、コントローラ部110のファイルにマップされる。   In the present embodiment, the controller unit 110 provides NFS. That is, the controller unit 110 provides the virtual disk unit 102 with one file on NFS as a data area for storing data of the virtual disk unit 102. A data image of a mainframe CKD disk or an open FBA disk is mapped to a file in the controller unit 110.

なお、本実施の形態では、コントローラ部110とディスク部116との間でやり取りされるブロックは、FBA形式とするが、他の形式であってもよい。   In this embodiment, the blocks exchanged between the controller unit 110 and the disk unit 116 are in the FBA format, but may be in other formats.

次に、ディスク装置101の各部の構成を詳細に説明する。   Next, the configuration of each part of the disk device 101 will be described in detail.

仮想ディスク部102aは、相互に通信可能に接続されたホストインターフェース103、ネットワークインターフェース104、CPU105、メモリ106及びキャッシュ部107によって構成される。   The virtual disk unit 102a includes a host interface 103, a network interface 104, a CPU 105, a memory 106, and a cache unit 107 that are connected so as to communicate with each other.

ホストインターフェース103は、サーバ117と接続され、サーバ117との間で、データ通信を行う。具体的には、サーバ117との間で、ブロックI/Oコマンドをやり取りする。ホストインターフェース103は、例えば、FCインターフェースであるが、SCSIインターフェース、iSCSIインターフェース又はその他のインターフェースであってもよい。また、ホストインターフェース103は、一つの仮想ディスク部102aに複数設けられてもよい。この場合、それぞれのホストインターフェース103にサーバ117が接続されてもよい。   The host interface 103 is connected to the server 117 and performs data communication with the server 117. Specifically, a block I / O command is exchanged with the server 117. The host interface 103 is, for example, an FC interface, but may be a SCSI interface, an iSCSI interface, or another interface. A plurality of host interfaces 103 may be provided in one virtual disk unit 102a. In this case, the server 117 may be connected to each host interface 103.

ネットワークインターフェース104は、ネットワーク部109に接続され、コントローラ部110との間で、データ通信を行う。具体的には、コントローラ部110との間で、ファイルI/Oコマンドをやり取りする。ネットワークインターフェース104は、一つの仮想ディスク部102aに複数設けられてもよい。   The network interface 104 is connected to the network unit 109 and performs data communication with the controller unit 110. Specifically, a file I / O command is exchanged with the controller unit 110. A plurality of network interfaces 104 may be provided in one virtual disk unit 102a.

CPU105は、メモリ106に格納されたプログラムを実行して仮想ディスク部102aを制御する。   The CPU 105 executes a program stored in the memory 106 to control the virtual disk unit 102a.

メモリ106には、CPU105によって実行されるプログラムが格納される。メモリ106には、少なくとも、コマンド変換部108及びキャッシュ同期部119が格納される。   The memory 106 stores a program executed by the CPU 105. The memory 106 stores at least a command conversion unit 108 and a cache synchronization unit 119.

コマンド変換部108は、サーバ117とホストインターフェース103との間でやり取りされるブロックI/Oコマンド(例えば、SCSIコマンド)を、ネットワークインターフェース104とコントローラ部110との間でやり取りされるファイルI/Oコマンド(例えば、NFSで使用されるコマンド)に変換し、また、その逆の変換をするプログラムである。   The command conversion unit 108 exchanges block I / O commands (for example, SCSI commands) exchanged between the server 117 and the host interface 103 with file I / O exchanges between the network interface 104 and the controller unit 110. This is a program that converts a command (for example, a command used in NFS) and vice versa.

キャッシュ同期部119については、後で、図3を用いて説明する。   The cache synchronization unit 119 will be described later with reference to FIG.

メモリ106には、さらに、CPU105がプログラムを実行する際に処理されるデータが一時的に格納されてもよい。   The memory 106 may further temporarily store data to be processed when the CPU 105 executes the program.

キャッシュ部107は、サーバ117がディスク装置101にデータを書き込み、又は読み出す処理を高速化するために使用されるメモリである。具体的には、キャッシュ部107には、サーバ117がディスク部116に書き込むデータ又はサーバ117がディスク部116から読み出すデータが一時的に記録される。   The cache unit 107 is a memory used for the server 117 to speed up the process of writing / reading data to / from the disk device 101. Specifically, data that the server 117 writes to the disk unit 116 or data that the server 117 reads from the disk unit 116 is temporarily recorded in the cache unit 107.

キャッシュ部107は、例えば、半導体メモリであるが、高速な磁気ディスク装置又は他の種類の記憶装置であってもよい。また、メモリ106の一部がキャッシュ部107として使用されてもよい。また、仮想ディスク部102aは、データ処理を高速化する必要がない場合、キャッシュ部107を備えなくてもよい。   The cache unit 107 is a semiconductor memory, for example, but may be a high-speed magnetic disk device or another type of storage device. A part of the memory 106 may be used as the cache unit 107. In addition, the virtual disk unit 102a may not include the cache unit 107 when it is not necessary to increase the data processing speed.

仮想ディスク部102aにキャッシュ部107が設けられると、サーバ117は、ネットワーク部109及びコントローラ部110を経由せずにキャッシュ部107にアクセスすることができるため、アクセス速度が向上する。   When the cache unit 107 is provided in the virtual disk unit 102a, the server 117 can access the cache unit 107 without going through the network unit 109 and the controller unit 110, so that the access speed is improved.

仮想ディスク部102bの構成は、仮想ディスク部102aと同様である。   The configuration of the virtual disk unit 102b is the same as that of the virtual disk unit 102a.

ただし、仮想ディスク部102bのホストインターフェース(図示省略)は、メインフレーム118と接続され、サーバ117からのデータの書き込み/読み出し要求を処理するインターフェース(例えば、ESCON、FICON等)である。   However, the host interface (not shown) of the virtual disk unit 102b is an interface (for example, ESCON, FICON, etc.) that is connected to the main frame 118 and processes data write / read requests from the server 117.

また、仮想ディスク部102bのコマンド変換部(図示省略)は、メインフレーム118とホストインターフェース(図示省略)との間でやり取りされるブロックI/Oコマンド(例えば、ESCONコマンド)を、ネットワークインターフェース(図示省略)とコントローラ部110との間でやり取りされるファイルI/Oコマンド(例えば、NFSで使用されるコマンド)に変換し、また、その逆変換をする。   The command conversion unit (not shown) of the virtual disk unit 102b sends a block I / O command (for example, ESCON command) exchanged between the main frame 118 and a host interface (not shown) to a network interface (not shown). And a file I / O command (for example, a command used in NFS) exchanged between the controller unit 110 and the controller unit 110 and vice versa.

なお、仮想ディスク部102aが複数のホストインターフェース103を備える場合、そのうちの一つがサーバ117と接続され、別の一つがメインフレーム118と接続されてもよい。この場合、サーバ117と接続されるホストインターフェース103は、例えば、FCインターフェースであり、メインフレーム118と接続されるホストインターフェース103は、例えば、ESCONインターフェースである。また、コマンド変換部108は、例えば、SCSIコマンドとNFSで使用されるコマンドとを変換する機能と、ESCONコマンドとNFSで使用されるコマンドとを変換する機能とを備える。   When the virtual disk unit 102a includes a plurality of host interfaces 103, one of them may be connected to the server 117 and the other may be connected to the main frame 118. In this case, the host interface 103 connected to the server 117 is, for example, an FC interface, and the host interface 103 connected to the main frame 118 is, for example, an ESCON interface. Further, the command conversion unit 108 includes, for example, a function for converting a SCSI command and a command used in NFS, and a function for converting an ESCON command and a command used in NFS.

仮想ディスク部102及びコントローラ部110は、ネットワーク部109を介してデータ通信を行う。ネットワーク部109は、例えば、TCP/IPによるLANであり、その上で、NFS、CIFS又はDAFS等が動作する。ネットワーク部109の物理層は、USB、InfiniBand又はその他のインターフェースであってもよい。   The virtual disk unit 102 and the controller unit 110 perform data communication via the network unit 109. The network unit 109 is, for example, a LAN based on TCP / IP, on which NFS, CIFS, DAFS, or the like operates. The physical layer of the network unit 109 may be USB, InfiniBand, or another interface.

コントローラ部110は、相互に通信可能に接続されたネットワークインターフェース111、ディスクインターフェース112、CPU113及びメモリ114によって構成される。   The controller unit 110 includes a network interface 111, a disk interface 112, a CPU 113, and a memory 114 that are connected to be communicable with each other.

ネットワークインターフェース111は、ネットワーク部109に接続され、仮想ディスク部102との間で、データ通信を行う。具体的には、仮想ディスク部102との間で、ファイルI/Oコマンドをやり取りする。ネットワークインターフェース111は、コントローラ部110に複数設けられてもよい。   The network interface 111 is connected to the network unit 109 and performs data communication with the virtual disk unit 102. Specifically, a file I / O command is exchanged with the virtual disk unit 102. A plurality of network interfaces 111 may be provided in the controller unit 110.

ディスクインターフェース112は、コントローラ部110とディスク部116との間で、データ通信を行う。具体的には、ディスク部116との間で、ブロックI/Oコマンドをやり取りする。ディスクインターフェース112は、例えば、FCインターフェースであるが、SCSIインターフェースやATA(AT Attachment)であってもよい。   The disk interface 112 performs data communication between the controller unit 110 and the disk unit 116. Specifically, a block I / O command is exchanged with the disk unit 116. The disk interface 112 is, for example, an FC interface, but may be a SCSI interface or ATA (AT Attachment).

CPU113は、メモリ114に格納されたプログラムを実行してコントローラ部110を制御する。   The CPU 113 controls the controller unit 110 by executing a program stored in the memory 114.

メモリ114には、CPU113によって実行されるプログラムが格納される。メモリ106には、少なくとも、コマンド変換部115が格納される。コマンド変換部115は、仮想ディスク部102とネットワークインターフェース111との間でやり取りされるファイルI/Oコマンド(例えば、NFSで使用されるコマンド)を、ディスクインターフェース112とディスク部116との間でやり取りされるブロックI/Oコマンド(例えば、SCSIコマンド)に変換し、また、その逆変換をするプログラムである。   The memory 114 stores a program executed by the CPU 113. The memory 106 stores at least the command conversion unit 115. The command conversion unit 115 exchanges file I / O commands (for example, commands used in NFS) exchanged between the virtual disk unit 102 and the network interface 111 between the disk interface 112 and the disk unit 116. Is a program that converts a block I / O command (for example, a SCSI command) to be executed, and the inverse conversion thereof.

また、メモリ114には、CPU113がプログラムを実行する際に処理されるデータが一時的に格納されてもよい。   The memory 114 may temporarily store data processed when the CPU 113 executes the program.

図1には示さないが、コントローラ部110は、仮想ディスク部102と同様に、ネットワークインターフェース111とディスクインターフェース112との間で送受信されるデータを一時的に記憶するキャッシュ部を備えてもよい。また、メモリ114の一部がキャッシュ部として使用されてもよい。   Although not shown in FIG. 1, similarly to the virtual disk unit 102, the controller unit 110 may include a cache unit that temporarily stores data transmitted and received between the network interface 111 and the disk interface 112. A part of the memory 114 may be used as a cache unit.

ディスク部116は、ディスクインターフェース112に接続された一つ又は複数の磁気ディスク装置である。ディスク部116は、複数のディスクによって構成されるディスクアレイであってもよい。ディスク部116には、サーバ117又はメインフレーム118から書き込まれたデータが記録される。   The disk unit 116 is one or a plurality of magnetic disk devices connected to the disk interface 112. The disk unit 116 may be a disk array composed of a plurality of disks. Data written from the server 117 or the main frame 118 is recorded on the disk unit 116.

ディスク部116は、論理的なディスクドライブである論理ユニット(LU)を構成する。すなわち、ディスク部116を構成する物理的なディスクドライブの一部若しくは全部の領域(又は、複数の物理的なディスクドライブの一部若しくは全部の領域の集合体)が一つ又は複数のLUを構成する。   The disk unit 116 constitutes a logical unit (LU) that is a logical disk drive. That is, a part or all of the physical disk drives constituting the disk unit 116 (or an aggregate of a part or all of the plurality of physical disk drives) constitutes one or more LUs. To do.

サーバ117に接続された仮想ディスク部102aは、ディスク部116内の一つ又は複数のLUに割り当てられる。すなわち、サーバ117は、仮想ディスク部102aを一つ又は複数のLUとして認識する。   The virtual disk unit 102 a connected to the server 117 is assigned to one or a plurality of LUs in the disk unit 116. That is, the server 117 recognizes the virtual disk unit 102a as one or a plurality of LUs.

一方、メインフレーム118に接続された仮想ディスク部102bは、ディスク部116内の一つ又は複数のLUに割り当てられ、当該LUをメインフレーム118に論理デバイス(LDEV)として認識させる。ここで、LDEVとは、メインフレーム118によって認識される論理的なディスクドライブである。メインフレーム118は、仮想ディスク部102bを一つ又は複数のLDEVとして認識する。   On the other hand, the virtual disk unit 102b connected to the main frame 118 is assigned to one or a plurality of LUs in the disk unit 116, and causes the main frame 118 to recognize the LU as a logical device (LDEV). Here, the LDEV is a logical disk drive recognized by the main frame 118. The main frame 118 recognizes the virtual disk unit 102b as one or a plurality of LDEVs.

なお、仮想ディスク部102aに割り当てられたLUと仮想ディスク部102bに割り当てられたLUとは、同じものがあってもよい。   Note that the LU assigned to the virtual disk unit 102a and the LU assigned to the virtual disk unit 102b may be the same.

コントローラ部110とディスク部116の組み合わせは、いわゆるNAS(Network Attached Storage)に相当する。ここで、コントローラ部110は、いわゆるNASヘッドである。   The combination of the controller unit 110 and the disk unit 116 corresponds to a so-called NAS (Network Attached Storage). Here, the controller unit 110 is a so-called NAS head.

次に、ディスク装置101の動作を説明する。   Next, the operation of the disk device 101 will be described.

図2は、本発明の実施の形態のディスク装置101が実行するデータの読み出し処理のフローチャートである。   FIG. 2 is a flowchart of data read processing executed by the disk device 101 according to the embodiment of this invention.

仮想ディスク部102では、まず、ホストインターフェース103が、サーバ117又はメインフレーム118からデータの読み出し要求を受ける(201)。この読み出し要求は、サーバ117又はメインフレーム118が、データの読み出しを要求するブロックI/Oコマンドを発行することによって行われる。   In the virtual disk unit 102, first, the host interface 103 receives a data read request from the server 117 or the mainframe 118 (201). This read request is made when the server 117 or the mainframe 118 issues a block I / O command for requesting data read.

このとき、サーバ117又はメインフレーム118は、ホストインターフェース103を、通常のディスクドライブ(又は、ディスクアレイ)として認識する。   At this time, the server 117 or the main frame 118 recognizes the host interface 103 as a normal disk drive (or disk array).

次に、CPU105は、キャッシュ部107に当該読み出し要求の目的のデータが記録されているか否かを判定する(202)。   Next, the CPU 105 determines whether or not the target data of the read request is recorded in the cache unit 107 (202).

キャッシュ部107に当該読み出し要求の目的のデータが記録されていない場合は、コマンド変換部108が、当該読み出し要求のブロックI/Oコマンドを、ファイルI/Oコマンドに変換する(203)。例えば、コマンド変換部108は、サーバ117から受けたSCSIコマンド又はメインフレーム118から受けたESCONコマンドを、NFSで使用されるコマンドに変換する。   If the target data for the read request is not recorded in the cache unit 107, the command conversion unit 108 converts the block I / O command for the read request into a file I / O command (203). For example, the command conversion unit 108 converts a SCSI command received from the server 117 or an ESCON command received from the main frame 118 into a command used in NFS.

次に、ネットワークインターフェース104が、当該読み出し要求のファイルI/Oコマンドを、ネットワーク部109を経由して、コントローラ部110に送信する(204)。   Next, the network interface 104 transmits the file I / O command for the read request to the controller unit 110 via the network unit 109 (204).

コントローラ部110では、ネットワークインターフェース111が仮想ディスク102から読み出し要求のファイルI/Oコマンドを受けると、コマンド変換部115が、当該ファイルI/OコマンドをブロックI/Oコマンドに変換する(205)。例えば、コマンド変換部115は、NFSで使用されるコマンドを、SCSIコマンドに変換する。続いて、ディスクインターフェース112が当該ブロックI/Oコマンドをディスク部116に送信する。   In the controller unit 110, when the network interface 111 receives a file I / O command for a read request from the virtual disk 102, the command conversion unit 115 converts the file I / O command into a block I / O command (205). For example, the command conversion unit 115 converts a command used in NFS into a SCSI command. Subsequently, the disk interface 112 transmits the block I / O command to the disk unit 116.

ディスク部116は、コントローラ部110から読み出し要求のブロックI/Oコマンドを受けると、当該読み出し要求の目的のデータを読み出して、コントローラ部110にブロックI/Oコマンドで応答する(206)。   Upon receiving the read request block I / O command from the controller unit 110, the disk unit 116 reads the target data of the read request and responds to the controller unit 110 with a block I / O command (206).

コントローラ部110では、ディスクインターフェース111がディスク部116から応答のブロックI/Oコマンドを受けると、コマンド変換部115が、当該ブロックI/OコマンドをファイルI/Oコマンドに変換する(207)。例えば、コマンド変換部115は、SCSIコマンドを、NFSで使用されるコマンドに変換する。続いて、ネットワークインターフェース111が、当該ファイルI/Oコマンドを、ネットワーク部109を経由して、仮想ディスク部102に送信する(208)。   In the controller unit 110, when the disk interface 111 receives a response block I / O command from the disk unit 116, the command conversion unit 115 converts the block I / O command into a file I / O command (207). For example, the command conversion unit 115 converts a SCSI command into a command used in NFS. Subsequently, the network interface 111 transmits the file I / O command to the virtual disk unit 102 via the network unit 109 (208).

仮想ディスク部102では、ネットワークインターフェース104がコントローラ部110から応答のファイルI/Oコマンドを受けると、コマンド変換部108が、当該ファイルI/OコマンドをブロックI/Oコマンドに変換する(209)。例えば、コマンド変換部108は、NFSで使用されるコマンドを、SCSIコマンド又はESCONコマンドに変換する。続いて、ホストインターフェース103が当該ブロックI/Oコマンドをサーバ117又はメインフレーム118に送信して(210)、データの読み出し処理を終了する。   In the virtual disk unit 102, when the network interface 104 receives a response file I / O command from the controller unit 110, the command conversion unit 108 converts the file I / O command into a block I / O command (209). For example, the command conversion unit 108 converts a command used in NFS into a SCSI command or an ESCON command. Subsequently, the host interface 103 transmits the block I / O command to the server 117 or the main frame 118 (210), and the data reading process is terminated.

一方、上記のステップ202において、キャッシュ部107に当該読み出し要求の目的のデータが記録されている場合、キャッシュ部107から当該データを読み出して、サーバ117又はメインフレーム118に応答のブロックI/Oコマンドを送信して(211)、データの読み出し処理を終了する。この場合、ディスク部116からデータを読み出す必要がない上に、ブロックI/OをファイルI/Oに変換する必要もないため、データ読み出し処理が短時間で終了する。   On the other hand, if the target data of the read request is recorded in the cache unit 107 in the above step 202, the data is read from the cache unit 107, and a response block I / O command is sent to the server 117 or the main frame 118. Is transmitted (211), and the data reading process is terminated. In this case, since it is not necessary to read data from the disk unit 116 and it is not necessary to convert the block I / O into the file I / O, the data reading process is completed in a short time.

このように、仮想ディスク部102は、サーバ117又はメインフレーム118に対して、ディスク装置として動作する。このため、サーバ117又はメインフレーム118のオペレーティングシステムに大幅な変更を加える必要がない。   As described above, the virtual disk unit 102 operates as a disk device with respect to the server 117 or the main frame 118. For this reason, it is not necessary to make significant changes to the operating system of the server 117 or the mainframe 118.

なお、CPU105は、ステップ203から209によってディスク部116から読み出されたデータをキャッシュ部107に記録してもよい。その結果、次回以降の同一のデータを目的とした読み出し処理に要する時間を短縮することができる。   Note that the CPU 105 may record the data read from the disk unit 116 in steps 203 to 209 in the cache unit 107. As a result, it is possible to reduce the time required for the read processing for the same data after the next time.

図3は、本発明の実施の形態のディスク装置101が実行するデータの書き込み処理のフローチャートである。   FIG. 3 is a flowchart of data write processing executed by the disk device 101 according to the embodiment of this invention.

仮想ディスク部102では、まず、ホストインターフェース103が、サーバ117又はメインフレーム118からデータの書き込み要求を受ける(301)。この書き込み要求は、サーバ117又はメインフレーム118が、データの書き込みを要求するブロックI/Oコマンドを発行することによって行われる。   In the virtual disk unit 102, first, the host interface 103 receives a data write request from the server 117 or the mainframe 118 (301). This write request is made when the server 117 or the mainframe 118 issues a block I / O command requesting data writing.

次に、CPU105は、キャッシュ部107に当該書き込み要求の目的のデータを記録することができるか否かを判定する(302)。例えば、キャッシュ部107に十分な空き容量がない場合、又は、ディスク装置101の管理者によってキャッシュ部107の使用が禁止されている場合は、キャッシュ部107に当該書き込み要求に係るデータを記録することができない。   Next, the CPU 105 determines whether or not the target data of the write request can be recorded in the cache unit 107 (302). For example, if the cache unit 107 does not have sufficient free space, or if the administrator of the disk device 101 prohibits the use of the cache unit 107, the data related to the write request is recorded in the cache unit 107. I can't.

キャッシュ部107に当該書き込み要求に係るデータを記録することができない場合は、コマンド変換部108が、当該書き込み要求のブロックI/Oコマンドを、ファイルI/Oコマンドに変換する(303)。例えば、コマンド変換部108は、サーバ117から受けたSCSIコマンド又はメインフレーム118から受けたESCONコマンドを、NFSで使用されるコマンドに変換する。   If the data related to the write request cannot be recorded in the cache unit 107, the command conversion unit 108 converts the block I / O command of the write request into a file I / O command (303). For example, the command conversion unit 108 converts a SCSI command received from the server 117 or an ESCON command received from the main frame 118 into a command used in NFS.

次に、ネットワークインターフェース104が、当該書き込み要求のファイルI/Oコマンドを、ネットワーク部109を経由して、コントローラ部110に送信する(304)。   Next, the network interface 104 transmits the file I / O command for the write request to the controller unit 110 via the network unit 109 (304).

コントローラ部110では、ネットワークインターフェース111が仮想ディスク102から書き込み要求のファイルI/Oコマンドを受けると、コマンド変換部115が、当該ファイルI/OコマンドをブロックI/Oコマンドに変換する(305)。例えば、コマンド変換部115は、NFSで使用されるコマンドを、SCSIコマンドに変換する。続いて、ディスクインターフェース112が当該ブロックI/Oコマンドをディスク部116に送信する。   In the controller unit 110, when the network interface 111 receives a write request file I / O command from the virtual disk 102, the command conversion unit 115 converts the file I / O command into a block I / O command (305). For example, the command conversion unit 115 converts a command used in NFS into a SCSI command. Subsequently, the disk interface 112 transmits the block I / O command to the disk unit 116.

ディスク部116は、コントローラ部110から書き込み要求のブロックI/Oコマンドを受けると、当該書き込み要求の目的のデータを書き込んで、コントローラ部110にブロックI/Oコマンドで応答する(306)。   Upon receiving the write request block I / O command from the controller unit 110, the disk unit 116 writes the target data of the write request and responds to the controller unit 110 with a block I / O command (306).

コントローラ部110では、ディスクインターフェース111がディスク部116から応答のブロックI/Oコマンドを受けると、コマンド変換部115が、当該ブロックI/OコマンドをファイルI/Oコマンドに変換する(307)。例えば、コマンド変換部115は、SCSIコマンドを、NFSで使用されるコマンドに変換する。続いて、ネットワークインターフェース111が、当該ファイルI/Oコマンドを、ネットワーク部109を経由して、仮想ディスク部102に送信する(308)。   In the controller unit 110, when the disk interface 111 receives a response block I / O command from the disk unit 116, the command conversion unit 115 converts the block I / O command into a file I / O command (307). For example, the command conversion unit 115 converts a SCSI command into a command used in NFS. Subsequently, the network interface 111 transmits the file I / O command to the virtual disk unit 102 via the network unit 109 (308).

仮想ディスク部102では、ネットワークインターフェース104がコントローラ部110から応答のファイルI/Oコマンドを受けると、コマンド変換部108が、当該ファイルI/OコマンドをブロックI/Oコマンドに変換する(309)。例えば、コマンド変換部108は、NFSで使用されるコマンドを、SCSIコマンド又はESCONコマンドに変換する。続いて、ホストインターフェース103が当該ブロックI/Oコマンドをサーバ117又はメインフレーム118に送信する(310)。   In the virtual disk unit 102, when the network interface 104 receives a response file I / O command from the controller unit 110, the command conversion unit 108 converts the file I / O command into a block I / O command (309). For example, the command conversion unit 108 converts a command used in NFS into a SCSI command or an ESCON command. Subsequently, the host interface 103 transmits the block I / O command to the server 117 or the main frame 118 (310).

次に、CPU105は、キャッシュ同期部119にキャッシュ同期処理を実行させる。キャッシュ同期部119は、他の仮想ディスク部102に対して、それぞれのキャッシュ部107に記憶されている当該書き込み要求に係るデータに対応するデータを消去する要求を発行する(311)。この同期処理によって、キャッシュデータが常に最新であることが保証される。   Next, the CPU 105 causes the cache synchronization unit 119 to execute cache synchronization processing. The cache synchronization unit 119 issues a request for erasing data corresponding to the data related to the write request stored in the respective cache units 107 to the other virtual disk units 102 (311). This synchronization process ensures that the cache data is always up-to-date.

例えば、メインフレーム118が仮想ディスク部102bを経由してディスク部116からデータを読み出すと、そのデータが仮想ディスク部102bのキャッシュ部(図示省略)に記録される。次に、サーバ117が仮想ディスク部102aを経由してディスク部116の当該データを更新すると、仮想ディスク部102aの仮想ディスク部102bのキャッシュ部内の当該データは最新でなくなる。   For example, when the main frame 118 reads data from the disk unit 116 via the virtual disk unit 102b, the data is recorded in a cache unit (not shown) of the virtual disk unit 102b. Next, when the server 117 updates the data in the disk unit 116 via the virtual disk unit 102a, the data in the cache unit of the virtual disk unit 102b of the virtual disk unit 102a becomes out of date.

このとき、本実施の形態では、キャッシュ同期部119が、仮想ディスク部102bに対して、キャッシュ部内の当該データを消去する要求を発行する(311)。   At this time, in this embodiment, the cache synchronization unit 119 issues a request to erase the data in the cache unit to the virtual disk unit 102b (311).

また、仮想ディスク部102aのキャッシュ同期部119は、仮想ディスク部102bに対して、キャッシュ部内の当該データを更新する要求を発行してもよい。   Further, the cache synchronization unit 119 of the virtual disk unit 102a may issue a request to update the data in the cache unit to the virtual disk unit 102b.

また、ディスク部116がキャッシュ同期部(図示省略)を有してもよい。この場合、ディスク部116のキャッシュ同期部は、当該データが更新された時点で、コントローラ部110が仮想ディスク部102a及び102bに対して、キャッシュ部内の当該データを消去するキャッシュ同期処理要求を発行してもよい。   Further, the disk unit 116 may have a cache synchronization unit (not shown). In this case, the cache synchronization unit of the disk unit 116 issues a cache synchronization processing request for the controller unit 110 to erase the data in the cache unit to the virtual disk units 102a and 102b when the data is updated. May be.

以上で、データの書き込み処理を終了する。   This completes the data writing process.

一方、上記のステップ302において、キャッシュ部107に当該書き込み要求に係るデータを記録することができる場合は、キャッシュ部107に当該データを書き込んで、サーバ117又はメインフレーム118に応答のブロックI/Oコマンドを送信して(312)、ステップ311に進む。   On the other hand, when the data related to the write request can be recorded in the cache unit 107 in the above step 302, the data is written in the cache unit 107 and the response block I / O is sent to the server 117 or the mainframe 118. The command is transmitted (312), and the process proceeds to step 311.

上記の図2及び図3で説明した処理において、ディスク部116の同一LU上の同一データに対してサーバ117及びメインフレーム118が同時にアクセスしようとした場合、排他制御が行われる。すなわち、少しでも早く到着したアクセス要求を先に処理し、その処理が終了するまでは、遅れて到着したアクセス要求は処理されない。   In the processing described with reference to FIGS. 2 and 3 described above, exclusive control is performed when the server 117 and the main frame 118 try to access the same data on the same LU of the disk unit 116 at the same time. That is, an access request that arrives as soon as possible is processed first, and the access request that arrives late is not processed until the processing ends.

なお、図2及び図3に示す手順のうち、CPU105が行う手順(コマンド変換部108が行う手順を含む)は、サーバ117又はメインフレーム118のCPU(図示省略)によって実行されてもよい。すなわち、仮想ディスク部102内の処理をサーバ117又はメインフレーム118のCPUに実行させ、仮想ディスク部102は、ホストインターフェース103へのAPI(Application Program Interface)のみをサーバ117又はメインフレーム118に提供してもよい。   2 and 3, the procedure performed by the CPU 105 (including the procedure performed by the command conversion unit 108) may be executed by the CPU of the server 117 or the main frame 118 (not shown). In other words, the processing in the virtual disk unit 102 is executed by the CPU of the server 117 or the mainframe 118, and the virtual disk unit 102 provides only the API (Application Program Interface) to the host interface 103 to the server 117 or the mainframe 118. May be.

また、サーバ117又はメインフレーム118が、ネットワーク部109のプロトコルに適合するネットワークインターフェースを備える場合、そのネットワークインターフェースをネットワーク部109に直接接続してもよい。ネットワーク部109に直接接続されたサーバ117及びメインフレーム118は、仮想ディスク部102を経由せずに、コントローラ部110及びディスク部116にアクセスして、ディスク部116に格納されたデータを共有することができる。   Further, when the server 117 or the mainframe 118 includes a network interface that conforms to the protocol of the network unit 109, the network interface may be directly connected to the network unit 109. The server 117 and the main frame 118 directly connected to the network unit 109 access the controller unit 110 and the disk unit 116 without passing through the virtual disk unit 102 and share the data stored in the disk unit 116. Can do.

以上の本発明によれば、異なるインターフェース及び異なるオペレーティングシステムを有する複数のメインフレーム及びサーバがデータを共有することができる。この共有は、異なるブロック形式で記録された複製を用意することによってではなく、同一のデータへのアクセスを可能にすることによって実現されるため、同一内容のデータを重複して記録する必要がなく、記憶容量の浪費を防ぐことができる。   According to the present invention described above, a plurality of mainframes and servers having different interfaces and different operating systems can share data. This sharing is realized not by preparing duplicates recorded in different block formats, but by enabling access to the same data, so there is no need to record the same data in duplicate. This can prevent wasted storage capacity.

本発明の実施の形態のディスク装置の構成を説明するブロック図である。It is a block diagram explaining the structure of the disk apparatus of embodiment of this invention. 本発明の実施の形態のディスク装置が実行するデータの読み出し処理のフローチャートである。It is a flowchart of the data reading process which the disk apparatus of embodiment of this invention performs. 本発明の実施の形態のディスク装置が実行するデータの書き込み処理のフローチャートである。It is a flowchart of the data writing process which the disk apparatus of embodiment of this invention performs.

符号の説明Explanation of symbols

101 ディスク装置
102 仮想ディスク部
103 ホストインターフェース
104、111 ネットワークインターフェース
105、113 CPU
106、114 メモリ
107 キャッシュ部
108、115 コマンド変換部
109 ネットワーク部
110 コントローラ部
112 ディスクインターフェース
116 ディスク部
117 サーバ
118 メインフレーム
119 キャッシュ同期部
101 Disk device 102 Virtual disk unit 103 Host interface 104, 111 Network interface 105, 113 CPU
106, 114 Memory 107 Cache unit 108, 115 Command conversion unit 109 Network unit 110 Controller unit 112 Disk interface 116 Disk unit 117 Server 118 Mainframe 119 Cache synchronization unit

Claims (12)

複数のホストコンピュータ装置に接続され、前記ホストコンピュータ装置からの要求に基づいてデータを格納するデータ共有ディスク装置において、
前記ホストコンピュータ装置の各々と接続される複数の仮想ディスク部と、
複数の前記仮想ディスク部に接続されるネットワーク部と、
前記ネットワーク部に接続されるコントローラ部と、
前記コントローラ部に接続されるディスク部と、を備え、
前記仮想ディスク部の各々は、
前記ホストコンピュータ装置に接続され、前記ホストコンピュータ装置とブロックアクセスプロトコルによる通信を行うホストインターフェース部と、
前記ネットワーク部に接続され、前記ネットワーク部を経由して前記コントローラ部とファイルアクセスプロトコルによる通信を行う第1ネットワークインターフェース部と、
データが一時的に格納されるキャッシュ部と、
前記ホストインターフェース部が受信したブロックI/OコマンドをファイルI/Oコマンドに変換し、前記第1ネットワークインターフェース部が受信したファイルI/OコマンドをブロックI/Oコマンドに変換する第1コマンド変換部と、
前記ホストコンピュータ装置からのデータの書き込み要求に基づいて、当該書込要求に係るデータに対応するデータを前記キャッシュ部から消去又は更新する要求を他の前記仮想ディスク部に送信するキャッシュ同期部と、を備え、
前記コントローラ部は、
前記ネットワーク部に接続され、前記ネットワーク部を経由して前記複数の仮想ディスク部とファイルアクセスプロトコルによる通信を行う第2ネットワークインターフェース部と、
前記ディスク部に接続され、前記ディスク部とブロックアクセスプロトコルによる通信を行うディスクインターフェース部と、
前記第2ネットワークインターフェース部が受信したファイルI/OコマンドをブロックI/Oコマンドに変換し、前記ディスクインターフェース部が受信したブロックI/OコマンドをファイルI/Oコマンドに変換する第2コマンド変換部と、を備えることを特徴とするデータ共有ディスク装置。
In a data sharing disk device connected to a plurality of host computer devices and storing data based on a request from the host computer device,
A plurality of virtual disk units connected to each of the host computer devices;
A network unit connected to the plurality of virtual disk units;
A controller unit connected to the network unit;
A disk unit connected to the controller unit,
Each of the virtual disk units is
A host interface unit connected to the host computer device for communicating with the host computer device using a block access protocol;
A first network interface unit that is connected to the network unit and communicates with the controller unit through a file access protocol via the network unit;
A cache part where data is temporarily stored;
A first command conversion unit that converts a block I / O command received by the host interface unit into a file I / O command and converts a file I / O command received by the first network interface unit into a block I / O command. When,
Based on a data write request from the host computer device, a cache synchronization unit that transmits a request to erase or update data corresponding to the data related to the write request from the cache unit to the other virtual disk unit; With
The controller unit is
A second network interface unit connected to the network unit and communicating with the plurality of virtual disk units via a file access protocol via the network unit;
A disk interface unit connected to the disk unit and communicating with the disk unit using a block access protocol;
A second command conversion unit that converts a file I / O command received by the second network interface unit into a block I / O command and converts a block I / O command received by the disk interface unit into a file I / O command. And a data sharing disk device.
複数のホストコンピュータ装置に接続され、前記ホストコンピュータ装置からの要求に基づいてデータを格納するデータ共有ディスク装置において、
前記複数のホストコンピュータ装置の各々と接続される複数の仮想ディスク部と、
複数の前記複数の仮想ディスク部に接続されるネットワーク部と、
前記ネットワーク部に接続されるコントローラ部と、
前記コントローラ部に接続されるディスク部と、を備え、
前記仮想ディスク部の各々は、前記ホストコンピュータ装置とブロックアクセスプロトコルによる通信を行い、及び、前記ネットワーク部を経由して、前記コントローラ部とファイルアクセスプロトコルによる通信を行い、
前記コントローラ部は、前記ディスク部とブロックアクセスプロトコルによる通信を行うことを特徴とするデータ共有ディスク装置。
In a data sharing disk device connected to a plurality of host computer devices and storing data based on a request from the host computer device,
A plurality of virtual disk units connected to each of the plurality of host computer devices;
A network unit connected to the plurality of virtual disk units;
A controller unit connected to the network unit;
A disk unit connected to the controller unit,
Each of the virtual disk units communicates with the host computer device using a block access protocol, and communicates with the controller unit via a file access protocol via the network unit,
The data sharing disk device, wherein the controller unit communicates with the disk unit using a block access protocol.
前記仮想ディスク部の各々は、
前記ホストコンピュータ装置に接続され、前記ホストコンピュータ装置とブロックアクセスプロトコルによる通信を行うホストインターフェース部と、
前記ネットワーク部に接続され、前記ネットワーク部を経由して前記コントローラ部とファイルアクセスプロトコルによる通信を行う第1ネットワークインターフェース部と、
前記ホストインターフェース部が受信したブロックI/OコマンドをファイルI/Oコマンドに変換し、前記第1ネットワークインターフェース部が受信したファイルI/OコマンドをブロックI/Oコマンドに変換する第1コマンド変換部と、を備え、
前記コントローラ部は、
前記ネットワーク部に接続され、前記ネットワーク部を経由して前記複数の仮想ディスク部とファイルアクセスプロトコルによる通信を行う第2ネットワークインターフェース部と、
前記ディスク部に接続され、前記ディスク部とブロックアクセスプロトコルによる通信を行うディスクインターフェース部と、
前記第2ネットワークインターフェース部が受信したファイルI/OコマンドをブロックI/Oコマンドに変換し、前記ディスクインターフェース部が受信したブロックI/OコマンドをファイルI/Oコマンドに変換する第2コマンド変換部と、を備えることを特徴とする請求項2に記載のデータ共有ディスク装置。
Each of the virtual disk units is
A host interface unit connected to the host computer device for communicating with the host computer device using a block access protocol;
A first network interface unit that is connected to the network unit and communicates with the controller unit through a file access protocol via the network unit;
A first command conversion unit that converts a block I / O command received by the host interface unit into a file I / O command and converts a file I / O command received by the first network interface unit into a block I / O command. And comprising
The controller unit is
A second network interface unit connected to the network unit and communicating with the plurality of virtual disk units via a file access protocol via the network unit;
A disk interface unit connected to the disk unit and communicating with the disk unit using a block access protocol;
A second command conversion unit that converts a file I / O command received by the second network interface unit into a block I / O command and converts a block I / O command received by the disk interface unit into a file I / O command. The data sharing disk device according to claim 2, further comprising:
前記複数の仮想ディスク部は、データが一時的に格納されるキャッシュ部と、
前記ホストコンピュータ装置からのデータの書き込み要求に基づいて、当該書込要求に係るデータに対応するデータを前記キャッシュ部から消去又は更新する要求を他の前記仮想ディスク部に送信するキャッシュ同期部と、を備えることを特徴とする請求項3に記載のデータ共有ディスク装置。
The plurality of virtual disk units include a cache unit in which data is temporarily stored;
Based on a data write request from the host computer device, a cache synchronization unit that transmits a request to erase or update data corresponding to the data related to the write request from the cache unit to the other virtual disk unit; The data sharing disk device according to claim 3, further comprising:
前記仮想ディスク部のうち少なくとも一つが備えるホストインターフェース部は、ファイバーチャネル、SCSI又はiSCSIインターフェースであり、別の前記仮想ディスク部のうち少なくとも一つが備えるホストインターフェース部は、ESCON又はFICONインターフェースであることを特徴とする請求項3に記載のデータ共有ディスク装置。   The host interface unit included in at least one of the virtual disk units is a fiber channel, SCSI, or iSCSI interface, and the host interface unit included in at least one of the other virtual disk units is an ESCON or FICON interface. 4. The data sharing disk device according to claim 3, wherein: 前記ネットワーク部は、少なくとも一つの前記ホストコンピュータ装置と接続され、
前記コントローラ部は、前記少なくとも一つのホストコンピュータ装置と、ファイルアクセスプロトコルによる通信を行うことを特徴とする請求項3に記載のデータ共有ディスク装置。
The network unit is connected to at least one of the host computer devices;
4. The data sharing disk device according to claim 3, wherein the controller unit communicates with the at least one host computer device using a file access protocol.
ホストコンピュータ装置に接続され、前記ホストコンピュータ装置とブロックアクセスプロトコルによる通信を行う複数のホストインターフェース部と、
ネットワークに接続され、前記ネットワークを経由して、前記ネットワークに接続されたストレージ装置とファイルアクセスプロトコルによる通信を行う複数のネットワークインターフェース部と、
前記ホストインターフェース部が受信したブロックI/OコマンドをファイルI/Oコマンドに変換し、前記ネットワークインターフェース部が受信したファイルI/OコマンドをブロックI/Oコマンドに変換するコマンド変換部と、を備えることを特徴とする仮想ディスク装置。
A plurality of host interface units connected to a host computer device and communicating with the host computer device by a block access protocol;
A plurality of network interface units that are connected to a network and communicate with the storage device connected to the network via a file access protocol via the network;
A command conversion unit that converts a block I / O command received by the host interface unit into a file I / O command and converts a file I / O command received by the network interface unit into a block I / O command. A virtual disk device characterized by the above.
データが一時的に格納されるキャッシュ部と、
前記ホストコンピュータ装置からのデータの書き込み要求に基づいて、当該書込要求に係るデータに対応するデータを前記キャッシュ部から消去又は更新する要求を、前記ネットワークに接続された他の前記仮想ディスク装置に送信するキャッシュ同期部と、を備えることを特徴とする請求項7に記載の仮想ディスク装置。
A cache part where data is temporarily stored;
Based on a data write request from the host computer device, a request to erase or update data corresponding to the data related to the write request from the cache unit is sent to the other virtual disk device connected to the network. The virtual disk device according to claim 7, further comprising: a cache synchronization unit that transmits the virtual disk device.
前記複数のホストコンピュータ装置と接続される複数の仮想ディスク部と、
前記複数の仮想ディスク部に接続されるネットワーク部と、
前記ネットワーク部に接続されるコントローラ部と、
前記コントローラ部に接続されるディスク部と、を備えるディスク装置からデータを読み出す方法であって、
前記仮想ディスク部が、前記ホストコンピュータからデータの読み出しを要求する第1ブロックI/Oコマンドを受け付ける手順と、
前記仮想ディスク部が、前記第1ブロックI/Oコマンドを第1ファイルI/Oコマンドに変換する手順と、
前記仮想ディスク部が、前記第1ファイルI/Oコマンドを、前記ネットワーク部を経由して、前記コントローラ部に送信する手順と、
前記コントローラ部が、前記第1ファイルI/Oコマンドを第2ブロックI/Oコマンドに変換する手順と、
前記ディスク部が、前記第2ブロックI/Oコマンドを受けて、前記読み出し要求の目的のデータを読み出し、前記読出要求に対する応答の第3ブロックI/Oコマンドを前記コントローラ部に送信する手順と、
前記コントローラ部が、前記第3ブロックI/Oコマンドを第2ファイルI/Oコマンドに変換する手順と、
前記コントローラ部が、前記第2ファイルI/Oコマンドを、前記ネットワーク部を経由して、前記仮想ディスク部に送信する手順と、
前記仮想ディスク部が、前記第2ファイルI/Oコマンドを第4ブロックI/Oコマンドに変換する手順と、
前記第4ブロックI/Oコマンドを前記ホストコンピュータ装置に送信する手順と、を含むことを特徴とするデータ読出方法。
A plurality of virtual disk units connected to the plurality of host computer devices;
A network unit connected to the plurality of virtual disk units;
A controller unit connected to the network unit;
A disk unit connected to the controller unit, and a method of reading data from a disk device comprising:
A procedure in which the virtual disk unit receives a first block I / O command for requesting reading of data from the host computer;
A procedure in which the virtual disk unit converts the first block I / O command into a first file I / O command;
A procedure in which the virtual disk unit transmits the first file I / O command to the controller unit via the network unit;
The controller unit converts the first file I / O command into a second block I / O command;
The disk unit receives the second block I / O command, reads the target data of the read request, and transmits a third block I / O command in response to the read request to the controller unit;
The controller unit converts the third block I / O command into a second file I / O command;
A procedure in which the controller unit transmits the second file I / O command to the virtual disk unit via the network unit;
A procedure in which the virtual disk unit converts the second file I / O command into a fourth block I / O command;
And a step of transmitting the fourth block I / O command to the host computer device.
前記仮想ディスク部は、データを一時的に格納するキャッシュ部を含み、
前記キャッシュ部に前記読出要求に係るデータが格納されているか否かを判定する手順と、
前記キャッシュ部に前記読出要求に係るデータが格納されていると判定された場合は、前記キャッシュ部から当該読み出し要求の目的のデータを読み出して、前記ホストコンピュータ装置に応答する手順と、を含むことを特徴とする請求項9に記載のデータ読出方法。
The virtual disk unit includes a cache unit for temporarily storing data;
A procedure for determining whether or not data related to the read request is stored in the cache unit;
A step of reading the target data of the read request from the cache unit and responding to the host computer device when it is determined that the data related to the read request is stored in the cache unit. The data reading method according to claim 9.
前記複数のホストコンピュータ装置と接続される複数の仮想ディスク部と、
前記複数の仮想ディスク部に接続されるネットワーク部と、
前記ネットワーク部に接続されるコントローラ部と、
前記コントローラ部に接続されるディスク部と、を備えるディスク装置にデータを書き込む方法であって、
前記仮想ディスク部が、前記ホストコンピュータからデータの書き込みを要求する第1ブロックI/Oコマンドを受け付ける手順と、
前記仮想ディスク部が、前記第1ブロックI/Oコマンドを第1ファイルI/Oコマンドに変換する手順と、
前記仮想ディスク部が、前記第1ファイルI/Oコマンドを、前記ネットワーク部を経由して、前記コントローラ部に送信する手順と、
前記コントローラ部が、前記第1ファイルI/Oコマンドを第2ブロックI/Oコマンドに変換する手順と、
前記ディスク部が、前記第2ブロックI/Oコマンドを受けて、前記書き込み要求の目的のデータを書き込み、前記書込要求に係る応答の第3ブロックI/Oコマンドを前記コントローラ部に送信する手順と、
前記コントローラ部が、前記第3ブロックI/Oコマンドを第2ファイルI/Oコマンドに変換する手順と、
前記コントローラ部が、前記第2ファイルI/Oコマンドを、前記ネットワーク部を経由して、前記仮想ディスク部に送信する手順と、
前記仮想ディスク部が、前記第2ファイルI/Oコマンドを第4ブロックI/Oコマンドに変換する手順と、
前記第4ブロックI/Oコマンドを前記ホストコンピュータ装置に送信する手順と、を含むことを特徴とするデータ書込方法。
A plurality of virtual disk units connected to the plurality of host computer devices;
A network unit connected to the plurality of virtual disk units;
A controller unit connected to the network unit;
A disk unit connected to the controller unit, and a method for writing data to a disk device comprising:
A procedure in which the virtual disk unit receives a first block I / O command for requesting data writing from the host computer;
A procedure in which the virtual disk unit converts the first block I / O command into a first file I / O command;
A procedure in which the virtual disk unit transmits the first file I / O command to the controller unit via the network unit;
The controller unit converts the first file I / O command into a second block I / O command;
The disk unit receives the second block I / O command, writes the target data of the write request, and transmits a third block I / O command in response to the write request to the controller unit When,
The controller unit converts the third block I / O command into a second file I / O command;
A procedure in which the controller unit transmits the second file I / O command to the virtual disk unit via the network unit;
A procedure in which the virtual disk unit converts the second file I / O command into a fourth block I / O command;
And a step of transmitting the fourth block I / O command to the host computer device.
前記仮想ディスク部は、データを一時的に格納するキャッシュ部を含み、
前記キャッシュ部に前記書き込み要求に係るデータを格納することができるか否かを判定する手順と、
前記キャッシュ部に前記書き込み要求の目的のデータを格納することができると判定された場合は、前記キャッシュ部に当該書き込み要求に係るデータを書き込んで、前記ホストコンピュータ装置に応答する手順と、
前記仮想ディスク部が、前記書き込み要求に係るデータを前記キャッシュ部から消去する要求を、前記ネットワークを経由して、他の前記仮想ディスク部に送信する手順と、を含むことを特徴とする請求項11に記載のデータ書込方法。
The virtual disk unit includes a cache unit for temporarily storing data;
Determining whether the data relating to the write request can be stored in the cache unit;
If it is determined that the target data of the write request can be stored in the cache unit, a procedure for writing data related to the write request in the cache unit and responding to the host computer device;
The virtual disk unit includes a procedure of transmitting a request to erase data relating to the write request from the cache unit to the other virtual disk unit via the network. 11. The data writing method according to 11.
JP2004165509A 2004-06-03 2004-06-03 Data sharing disk device Pending JP2005346426A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004165509A JP2005346426A (en) 2004-06-03 2004-06-03 Data sharing disk device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004165509A JP2005346426A (en) 2004-06-03 2004-06-03 Data sharing disk device

Publications (1)

Publication Number Publication Date
JP2005346426A true JP2005346426A (en) 2005-12-15

Family

ID=35498740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004165509A Pending JP2005346426A (en) 2004-06-03 2004-06-03 Data sharing disk device

Country Status (1)

Country Link
JP (1) JP2005346426A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7908377B2 (en) 2008-08-06 2011-03-15 Hitachi, Ltd. Computer system and data sharing method
JP2013511104A (en) * 2009-11-16 2013-03-28 マイクロソフト コーポレーション Virtual hard drive management as a blob
KR20190036770A (en) * 2017-09-28 2019-04-05 주식회사 티맥스 소프트 Method for using mainframe system data in open system in realtime

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7908377B2 (en) 2008-08-06 2011-03-15 Hitachi, Ltd. Computer system and data sharing method
JP2013511104A (en) * 2009-11-16 2013-03-28 マイクロソフト コーポレーション Virtual hard drive management as a blob
US9639299B2 (en) 2009-11-16 2017-05-02 Microsoft Technology Licensing, Llc Managing virtual hard drives as blobs
US10628086B2 (en) 2009-11-16 2020-04-21 Microsoft Technology Licensing, Llc Methods and systems for facilitating communications with storage
KR20190036770A (en) * 2017-09-28 2019-04-05 주식회사 티맥스 소프트 Method for using mainframe system data in open system in realtime
KR101997494B1 (en) * 2017-09-28 2019-07-08 주식회사 티맥스 소프트 Method for using mainframe system data in open system in realtime

Similar Documents

Publication Publication Date Title
US20190278719A1 (en) Primary Data Storage System with Data Tiering
JP3997061B2 (en) Storage subsystem and storage subsystem control method
JP6074056B2 (en) Computer system and data control method
US7228399B2 (en) Control method for storage device controller system, and storage device controller system
JP4704161B2 (en) How to build a file system
US7660946B2 (en) Storage control system and storage control method
JP4574408B2 (en) Storage system control technology
US20070061518A1 (en) Storage controller, data processing method and computer program product
JP7135162B2 (en) Information processing system, storage system and data transfer method
KR20070045891A (en) Raid system, raid controller and rebuilt/copy back processing method thereof
US20120239882A1 (en) Control apparatus and method, and storage apparatus
JP2009175824A (en) Memory controller for mainframe, and virtualization method for mainframe volume
JP2010537267A (en) Method, system and program for splitting writes between a storage controller and a replication engine
US20210042032A1 (en) Drive box, storage system and data transfer method
US8713266B2 (en) Storage apparatus and method including page discard processing for primary and secondary volumes configured as a copy pair
KR20030091664A (en) Storage system and storage subsystem
US7058692B2 (en) Computer, computer system, and data transfer method
WO2016121026A1 (en) Storage apparatus, computer system, and method
WO2016181464A1 (en) Storage system and storage control method
JP2006185000A (en) Storage system
JP6649989B2 (en) Storage system and control method thereof
US7003553B2 (en) Storage control system with channel control device having data storage memory and transfer destination circuit which transfers data for accessing target cache area without passing through data storage memory
US10235053B1 (en) Method and system for using host driver for flexible allocation fast-sideways data movements
US11016698B2 (en) Storage system that copies write data to another storage system
US20080250201A1 (en) Information processing system and control method thereof