JP2018081346A - Storage device, storage system, storage control method, and storage control program - Google Patents
Storage device, storage system, storage control method, and storage control program Download PDFInfo
- Publication number
- JP2018081346A JP2018081346A JP2016221259A JP2016221259A JP2018081346A JP 2018081346 A JP2018081346 A JP 2018081346A JP 2016221259 A JP2016221259 A JP 2016221259A JP 2016221259 A JP2016221259 A JP 2016221259A JP 2018081346 A JP2018081346 A JP 2018081346A
- Authority
- JP
- Japan
- Prior art keywords
- command
- storage
- address
- data
- specified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、ストレージ装置、ストレージシステム、ストレージ制御方法、および、ストレージ制御プログラム、特に、複数のストレージ装置で1つの論理ディスクを構成するストレージ装置の制御に関する。 The present invention relates to a storage apparatus, a storage system, a storage control method, and a storage control program, and more particularly to control of a storage apparatus that configures one logical disk with a plurality of storage apparatuses.
スケールアウトストレージなどは、複数のストレージ装置で一つの大きな論理ディスクを構成し、当該論理ディスクをサーバ装置に割り当てる。スケールアウトストレージにおいては、或るサーバ装置が或るストレージ装置に対しデータ転送コマンドを発行したが、そのデータが別のストレージに有るという事象が発生する。この場合、データ転送コマンドを受信したストレージ装置は、別のストレージ装置から一旦データを引き込んだ後に、サーバ装置へデータ転送する必要がある。 In scale-out storage or the like, a plurality of storage devices constitute one large logical disk, and the logical disk is allocated to the server device. In scale-out storage, a certain server device issues a data transfer command to a certain storage device, but an event occurs in which the data exists in another storage device. In this case, the storage apparatus that has received the data transfer command needs to transfer the data to the server apparatus after temporarily drawing data from another storage apparatus.
図8は、この時の様子を示す。図8において、ストレージ装置1とストレージ装置2は大きな論理ディスクを構成している。図8において、サーバ装置1が、論理ディスク内の或る論理ブロックアドレスを指定してストレージ1に読み込み命令を出したが、そのブロックはストレージ装置2に格納されている。この場合、ストレージ装置1はストレージ装置2に読み込み命令を発行する。そして、当該ブロックのデータは一旦ストレージ装置2からストレージ装置1に転送された後、ストレージ装置1からサーバ装置1に転送される。
FIG. 8 shows the situation at this time. In FIG. 8, the
特許文献1は、ミラー間の不整合を防ぐ、Active-Active方式の仮想化ストレージシステムを開示する。
特許文献2は、ディスクアレイコントローラ、ディスク装置、ホスト装置を1つのインターフェースに接続した、RAID(Redundant Arrays of Inexpensive Disks)を構成するディスクアレイを開示する。このディスクアレイは、ディスクアレイコントローラとディスク装置間、および、ディスクアレイコントローラとホスト装置間の通信を、1つのインターフェースを介して行う。 Patent Document 2 discloses a disk array constituting a RAID (Redundant Array of Inexpensive Disks) in which a disk array controller, a disk device, and a host device are connected to one interface. This disk array performs communication between the disk array controller and the disk device, and between the disk array controller and the host device via one interface.
このディスクアレイのディスクアレイコントローラは、ホスト装置からリードホストコマンドを受信すると、コピーディスクコマンドを、読み出し対象データを格納しているディスク装置に送信する。ディスク装置は、コピーディスクコマンドを受信すると、データをホスト装置に送信する。 When the disk array controller of this disk array receives a read host command from the host device, the disk array controller transmits a copy disk command to the disk device storing the read target data. When receiving the copy disk command, the disk device transmits data to the host device.
上述したように、データ転送コマンドを受信したストレージ装置が、別のストレージ装置から一旦データを引き込んだ後に、サーバ装置へデータ転送するのは、無駄な転送を行うことになり転送効率が悪い。 As described above, when a storage apparatus that has received a data transfer command once pulls in data from another storage apparatus and then transfers the data to the server apparatus, useless transfer results in poor transfer efficiency.
サーバ装置がデータを格納しているストレージ装置に対して適切にデータ転送コマンドを発行すれば上記現象は発生しない。しかし、そのためにはサーバ装置が全データの格納場所の情報を覚えている必要がある。更に、性能やアクセス頻度などを考慮して、ストレージ装置が、データの格納場所を互いの間で入れ替えるなどの処理を行った場合には、サーバ装置が覚えているデータの格納場所の情報をその度に更新する必要があるなど、処理が煩雑である。 The above phenomenon does not occur if the server apparatus appropriately issues a data transfer command to the storage apparatus storing data. However, for this purpose, the server device needs to remember the information on the storage location of all data. Furthermore, when the storage device performs processing such as switching the data storage location between each other in consideration of performance, access frequency, etc., the information on the data storage location remembered by the server device is stored in the storage device. The process is complicated, such as the need to update each time.
一方、特許文献2が開示するシステムのように、専用のコントローラを設置するのはコスト高になるうえ、性能/信頼性の面で課題が有る。特に、RAIDのような複雑な処理を前提としない場合、コスト高は大きな問題となる。 On the other hand, installing a dedicated controller as in the system disclosed in Patent Document 2 is costly and has problems in terms of performance / reliability. In particular, high cost becomes a big problem when complicated processing such as RAID is not assumed.
本発明は、上記課題を解決する、ストレージ装置、ストレージ制御方法、および、ストレージ制御プログラムを提供することを目的とする。 It is an object of the present invention to provide a storage apparatus, a storage control method, and a storage control program that solve the above-described problems.
本発明の1実施の形態のストレージ装置は、論理ディスクを構成する複数のストレージ装置の1つであって、サーバ装置から前記論理ディスクのブロックのアドレス(以降、指定アドレス)を指定したリードの入出力命令を受信して、前記指定アドレスが自装置内に有るか、自装置内に無い場合はどの前記ストレージ装置内に有るかの判定をするデータ格納判定手段と、a)前記判定が自装置内でない場合、前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したライトのダイレクト転送命令を、前記指定アドレスが存在する前記ストレージ装置に送信し、b)他の前記ストレージ装置から受信したライトの前記ダイレクト転送命令で指定された前記サーバ装置に、指定されたアドレスの前記ブロックのデータを転送するコマンド制御手段と、を備える。 A storage apparatus according to an embodiment of the present invention is one of a plurality of storage apparatuses that constitute a logical disk, and a read input in which an address (hereinafter, designated address) of the block of the logical disk is designated from a server apparatus. Data storage determining means for receiving an output command and determining whether the designated address is in the own device or in which storage device the specified address is not in the own device; and a) the determination is in the own device If not, the server device that issued the I / O command and the write direct transfer command designating the designated address are sent to the storage device where the designated address exists, and b) from the other storage device A command for transferring the block data at the specified address to the server device specified by the direct transfer command of the received write. It includes a command control means.
本発明の1実施の形態のストレージ制御方法は、サーバ装置から、複数のストレージ装置で構成される論理ディスク内のブロックのアドレス(以降、指定アドレス)を指定したリードの入出力命令を受信して、前記指定アドレスが或る特定の装置(以降、自装置)内に有るか、自装置内に無い場合はどの前記ストレージ装置内に有るかの判定を行い、a)前記判定が自装置内でない場合、前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したライトのダイレクト転送命令を、前記指定アドレスが存在する前記ストレージ装置に送信し、b)他の前記ストレージ装置から受信したライトの前記ダイレクト転送命令で指定された前記サーバ装置に、指定されたアドレスの前記ブロックのデータを転送する。 The storage control method according to one embodiment of the present invention receives a read input / output command specifying a block address (hereinafter, designated address) in a logical disk composed of a plurality of storage devices from a server device. When the specified address is in a specific device (hereinafter referred to as own device) or not in the own device, it is determined in which storage device a) the determination is not in the own device. In this case, the server device that issued the input / output command and the direct transfer command of the write designating the designated address are transmitted to the storage device where the designated address exists, and b) received from the other storage device Data of the block at a specified address is transferred to the server device specified by the direct transfer command for writing.
本発明の1実施の形態のストレージ制御プログラムは、サーバ装置から、複数のコンピュータ装置から構成される論理ディスクのブロックのアドレス(以降、指定アドレス)を指定したリードの入出力命令を受信して、前記指定アドレスが自装置内に有るか、自装置内に無い場合はどの前記コンピュータ装置内に有るかの判定をするデータ格納判定処理と、a)前記判定が自装置内でない場合、前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したライトのダイレクト転送命令を、前記指定アドレスが存在する前記コンピュータ装置に送信し、b)他の前記コンピュータ装置から受信したライトの前記ダイレクト転送命令で指定された前記サーバ装置に、指定されたアドレスの前記ブロックのデータを転送するコマンド制御処理と、を前記コンピュータ装置に実行させる。 A storage control program according to an embodiment of the present invention receives a read input / output command designating a block address (hereinafter, designated address) of a logical disk composed of a plurality of computer devices from a server device, A data storage determination process for determining whether the designated address is in the own device or in the computer device if the designated address is not in the own device; a) if the determination is not in the own device, the input / output A direct transfer command of a write specifying the specified address and the server device that issued the command is transmitted to the computer device having the specified address; b) the direct transfer of the write received from the other computer device A command system that transfers data of the block at a specified address to the server device specified by an instruction. Executing process and, to the computer device.
本発明にかかるストレージ装置は、複数のストレージ装置で容量の大きな論理ディスクを提供するシステムにおいて、専用のコントローラなどを設けることなく、データ転送効率を向上させる。 The storage device according to the present invention improves data transfer efficiency without providing a dedicated controller or the like in a system that provides a large capacity logical disk with a plurality of storage devices.
<第1の実施の形態>
<構成>
図1は、本実施の形態に係るストレージシステム50の構成を示す図である。ストレージシステム50は、N(Nは自然数)台のサーバ装置10とM(Mは複数)台のストレージ装置20とが、通信網30に接続されて構成される。M台のストレージ装置20は、其々、少なくとも1台のディスク装置24を制御しており、全体として各ディスク装置24の容量より大きな論理ディスク40を構成する。なお、ここで、制御とは、領域の管理、入出力の実行をいう。論理ディスク40は、仮想ディスクと呼ばれることも有る。
<First Embodiment>
<Configuration>
FIG. 1 is a diagram showing a configuration of a storage system 50 according to the present embodiment. The storage system 50 is configured by connecting N (N is a natural number)
各サーバ装置10は、この論理ディスク40に対して入出力を実行する。サーバ装置10は、論理ディスク40に対して入出力を実行する際、論理ディスク40における論理的なブロックアドレスを指定する。論理ディスク40における論理的なブロックアドレスは、論理ディスク40を構成する何れかのストレージ装置20が制御するディスク装置24のブロックアドレスに変換される。
Each
ストレージ装置20は、コマンド制御部21、および、データ格納判定部23を備える。ストレージ装置20は、ディスク装置24を装置内に備えていても良いし、データセンタ内のネットワーク等を経由して装置外のディスク装置24に接続されていても良い。
The
データ格納判定部23は、サーバ装置10から指定されたアドレスのブロックが、自装置が制御するディスク装置24内に有るか否かを判定する。無い場合、データ格納判定部23は、当該ブロックが、他のどのストレージ装置20が制御するディスク装置24内に有るかの判定をする。なお、以降、「或るアドレスのブロックが、或るストレージ装置20が制御するディスク装置24内に有る」ことを、「或るアドレスが或るストレージ装置20内に有る」と略記することが有る。
The data
コマンド制御部21は、他のストレージ装置20に対し、サーバ装置10へ直接にデータを転送することを要求するコマンドである、ダイレクトデータ転送コマンドを発行する。また、コマンド制御部21は、他のストレージ装置20からダイレクトデータ転送コマンドを受信すると、サーバ装置10と自装置が制御するディスク装置24との間のデータ転送も行う。コマンド制御部21は、サーバ装置10から入出力命令を受信して、サーバ装置10と自装置が制御するディスク装置24との間のデータ転送も行う。
The
サーバ装置10は、コマンド検索部11と論理ディスク入出力部12を備える。
The
論理ディスク入出力部12は、サーバ装置10が実行する業務処理プログラム等から要求されて、論理ディスク40に対する入出力を行う。論理ディスク入出力部12は、論理ディスク40における論理的なブロックアドレスを指定した入出力命令を、ストレージ装置20に発行する。
The logical disk input /
このとき、論理ディスク入出力部12は、例えば、ラウンドロビンでストレージ装置20を選択して入出力命令を発行する。あるいは、論理ディスク入出力部12は、同期インターバルが長い論理ディスク40のブロックアドレスと当該アドレスを有するストレージ装置20との対応関係表を保持し、当該表に基づいて、ストレージ装置20を選択して入出力命令を発行しても良い。
At this time, the logical disk input /
コマンド検索部11は、ストレージ装置20から受信したダイレクト転送コマンドを基に、自装置が発行した入出力命令を検索する。
The
ここで、ストレージ装置20のコマンド制御部21、および、データ格納判定部23は、論理回路で構成される。
Here, the
ストレージ装置20は、コンピュータ装置600により実現されても良い。図2は、コンピュータ装置600の構成図である。コンピュータ装置600は、バス640で相互に接続された、プロセッサ610、主記憶部630、および、外部記憶装置620を備える。プロセッサ610は、バス640を経由して、主記憶部630、および、外部記憶装置620に対してデータの読み書きを行う。また、プロセッサ610は、主記憶部630に格納されているプログラム650を実行する。なお、プログラム650は、当初外部記憶装置620に格納されており、コンピュータ装置600の初期設定時に、プロセッサ610が外部記憶装置620から主記憶部630にロードしても良い。
The
ここで、主記憶部630は半導体メモリ装置である。外部記憶装置620はディスク装置、または、半導体記憶装置等の記憶装置である。
Here, the
プロセッサ610は、プログラム650を実行することにより、コマンド制御部21、および、データ格納判定部23として機能する。すなわち、プロセッサ610は、プログラム650を実行することにより、コマンド制御部21、および、データ格納判定部23が行う処理を実行する。
The
外部記憶装置620は、ディスク装置24として使用されても良い。
The
サーバ装置10のコマンド検索部11と論理ディスク入出力部12は、論理回路で構成される。サーバ装置10は、ストレージ装置20同様に、コンピュータ装置600により実現されても良い。この場合、プロセッサ610は、プログラム650を実行することにより、コマンド検索部11と論理ディスク入出力部12として機能する。すなわち、プロセッサ610は、プログラム650を実行することにより、コマンド検索部11と論理ディスク入出力部12が行う処理を実行する。
The
<動作>
次に、ダイレクトデータ転送を含む、サーバ装置10とストレージ装置20間のデータ転送の様子を説明する。
<Operation>
Next, a state of data transfer between the
<1. ストレージ装置20からサーバ装置10へのデータ転送>
図3は、ストレージシステム50の動作フローチャートである。図4は、ストレージ装置20からサーバ装置10へのデータ転送の様子を示す図である。
<1. Data transfer from the
FIG. 3 is an operation flowchart of the storage system 50. FIG. 4 is a diagram illustrating a state of data transfer from the
図3のステップS1において、サーバ装置10、例えば図4の左側のサーバ装置10の論理ディスク入出力部12が、リードデータを保存するためのバッファを確保し、ストレージ装置20、例えば図4左側のストレージ装置20に対してリードコマンド(図4のa)を発行する。
In step S1 in FIG. 3, the
続いて、当該リードコマンドを受信したストレージ装置20、例えば図4左側のストレージ装置20は、ステップS2からS5を実行する。
Subsequently, the
ステップS2において、データ格納判定部23は、当該リードコマンドで指定された対象アドレスのブロックが自装置のディスク装置24に存在するか否かを判定する。
In step S2, the data
ステップS3において、リードの対象アドレスのブロックが自装置のディスク装置24に存在する場合、データ格納判定部23はステップS4に推移する。存在しない場合、データ格納判定部23は、対象アドレスのブロックが、他のどのストレージ装置20のディスク装置24に存在するかを特定し、ステップS5へ推移する。
In step S3, when the block of the read target address exists in the
データ格納判定部23は、例えば、各ストレージ装置20対応に、論理ディスク40のブロックアドレスの範囲を示すデータを記憶しており、この範囲データを参照して上記判定を行う。変更が有ったとき当該範囲データは、例えば、ストレージ装置20間を接続する通信網30とは別の高速ネットワークを経由してアップデートされる。あるいは、データ格納判定部23は、上述の高速ネットワーク経由で、他のストレージ装置20にブロックアドレスの存在問合せをしても良い。
The data
ステップS4において、コマンド制御部21が、自ストレージ装置20のディスク装置24内のブロックに格納されているデータを、リードコマンドを発行したサーバ装置10、例えば図4の左側のサーバ装置10に転送する。その後、コマンド制御部21はステップS12へ推移する。
In step S4, the
ステップS5において、コマンド制御部21は、リードコマンドで指定された対象アドレスのブロックが存在するストレージ装置20、例えば、図4右側のストレージ装置20に対して、ライトのダイレクトデータ転送コマンド(図4のb)を発行する。その後、コマンド制御部21は、ステップS6へ推移する。本コマンドは、リードコマンドを発行したサーバ装置10、リードコマンドで指定された対象アドレス、データ長、対象論理番号等の情報を含む。
In step S5, the
続いて、当該ダイレクトデータ転送コマンドを受信したストレージ装置20、例えば図4右側のストレージ装置20はステップS6からS8を実行する。
Subsequently, the
ステップS6において、ダイレクトデータ転送コマンドを受信したストレージ装置20のコマンド制御部21は、受信したコマンドを判定し、ダイレクトデータ転送コマンドの場合はステップS7へ推移し、それ以外のコマンドの場合はステップS8へ推移する。
In step S6, the
ステップS7において、コマンド制御部21は、受信したライトのダイレクトデータ転送コマンドに含まれるリードコマンドを発行したサーバ装置10、リードコマンドで指定された対象アドレス、データ長、対象論理番号等をもとにライトコマンドを作成する。コマンド制御部21は、リードコマンドを発行したサーバ装置10、例えば、図4の左側のサーバ装置10に対して、ライトコマンド(図4のc)を発行し、ステップS9へ推移する。
In step S7, the
ステップS8において、コマンド制御部21は、ダイレクトデータ転送コマンド以外のコマンド処理を実施する。
In step S8, the
続いて、リードコマンドを発行したサーバ装置10、例えば図4左側のサーバ装置10は、ステップS9からS11を実行する。
Subsequently, the
ステップS9において、サーバ装置10のコマンド検索部11が、ストレージ装置20からのライトコマンドを受信し、ステップS10へ推移する。
In step S9, the
ステップS10において、コマンド検索部11は、受信したライトコマンドに含まれる対象アドレスをキーに自装置が発行したリードコマンドを検索する。コマンド検索部11は、このリードコマンド検索のキーとして、対象アドレスに加え、データ長、対象論理番号、その他の情報を併用しても良い。当該リードコマンドを検出すると、コマンド検索部11は、ステップS1でリードデータを格納するために確保したバッファを、ストレージ装置20から転送されるライトデータを保存するバッファとして割り当てて、ステップS11へ推移する。
In step S10, the
ステップS11において、論理ディスク入出力部12は、ストレージ装置20からサーバ装置10への直接ライトデータ転送(図4のd)を実施し、ステップS12へ推移する。
In step S11, the logical disk input /
ステップS12において、論理ディスク入出力部12は、データ転送を完了とする。ここでダイレクトデータ転送コマンドによるデータ転送がされていた場合、論理ディスク入出力部12は、そのデータ転送の完了レスポンスをストレージ装置20に返した段階で、ステップS1で発行したリードコマンド完了を判断する。
In step S12, the logical disk input /
<2. サーバ装置10からストレージ装置20へのデータ転送>
図5は、サーバ装置10からストレージ装置20へのデータ転送の様子を示す図である。以下に説明するように、ストレージシステム50は、この方向のデータ転送においても、効率的な実行が可能である。
<2. Data transfer from
FIG. 5 is a diagram illustrating a state of data transfer from the
まず、サーバ装置10、例えば図5の左側のサーバ装置10の論理ディスク入出力部12が、ライトデータをバッファに格納し、ストレージ装置20、例えば図5左側のストレージ装置20に対してライトコマンド(図5のa)を発行する。
First, the logical disk input /
当該ライトコマンドを受信したストレージ装置20、例えば図5左側のストレージ装置20のデータ格納判定部23は、当該ライトコマンドで指定された対象アドレスのブロックが自装置のディスク装置24に存在するか否かを判定する。
The data
存在しない場合、データ格納判定部23は、ライト対象アドレスのブロックが、他のどのストレージ装置20のディスク装置24に存在するかを特定する。そして、コマンド制御部21は、ライトコマンドで指定された対象アドレスのブロックが存在するストレージ装置20、例えば、図5右側のストレージ装置20に対して、リードのダイレクトデータ転送コマンド(図5のb)を発行する。本コマンドは、ライトコマンドを発行したサーバ装置10、ライトコマンドで指定された対象アドレス、データ長、対象論理番号等の情報を含む。
If not present, the data
続いて、ダイレクトデータ転送コマンドを受信したストレージ装置20のコマンド制御部21は、受信したコマンドを判定する。ダイレクトデータ転送コマンドの場合、コマンド制御部21は、受信したリードのダイレクトデータ転送コマンドに含まれるライトコマンドを発行したサーバ装置10、ライトコマンドで指定された対象アドレス、データ長、対象論理番号等をもとにリードコマンドを作成する。コマンド制御部21は、ライトコマンドを発行したサーバ装置10、例えば、図4の左側のサーバ装置10に対して、リードコマンド(図5のc)を発行する。
Subsequently, the
サーバ装置10のコマンド検索部11が、ストレージ装置20からのリードコマンドを受信し、受信したリードコマンドに含まれる対象アドレスをキーに自装置が発行したライトコマンドを検索する。コマンド検索部11は、このライトコマンド検索のキーとして、対象アドレスに加え、データ長、対象論理番号、その他の情報を併用しても良い。当該ライトコマンドを検出すると、コマンド検索部11は、ライトコマンドで指定されたバッファを、直接リードデータ転送のバッファとして割り当てる。
The
その後、論理ディスク入出力部12は、サーバ装置10からストレージ装置20への直接リードデータ転送(図5のd)を実施する。
Thereafter, the logical disk input /
<効果>
本実施の形態にかかるストレージ装置20は、複数のストレージ装置20で容量の大きな論理ディスク40を提供するストレージシステム50において、専用のコントローラなどを設けることなく、データ転送効率を向上させる。すなわち、本実施の形態にかかるストレージ装置20は、スケールアウトストレージにおいて、サーバ装置10とストレージ装置20の全体の性能を向上させる。
<Effect>
The
その理由は、指定されたアドレスが存在しないストレージ装置20がリードコマンドを受け付けた場合でも、指定されたアドレスが存在するストレージ装置20からサーバ装置10側へ直接データ転送するからである。この直接転送によって、ストレージ装置20間のデータ転送をなくすことができるためである。
The reason is that even when the
<第2の実施形態>
ストレージ装置20のコマンド制御部21は、通信網30の負荷も考慮して、最適な経路にてデータ転送を実施しても良い。例えば、図6が示すように、右側のスイッチの経路が高負荷だった場合に、左側のスイッチの経路を使用してデータ転送を実施する。
<Second Embodiment>
The
これにより、通信網30内の適切な負荷分散が可能となる。
As a result, appropriate load distribution within the
<第3の実施形態>
図7は、第3の実施の形態に係るストレージ装置20の構成を示す図である。本実施の形態に係るストレージ装置20は、複数台で論理ディスク40を構成する。本実施の形態に係るストレージ装置20は、データ格納判定部23とコマンド制御部21とを備えている。ストレージ装置20は、さらに、ディスク装置24のような記憶装置を備えているか、外部のディスク装置24のような記憶装置と接続されている。
<Third Embodiment>
FIG. 7 is a diagram showing a configuration of the
データ格納判定部23は、サーバ装置10から論理ディスク40のブロックのアドレス(以降、指定アドレス)を指定したリードの入出力命令を受信して、指定アドレスが自装置内に有るか、自装置内に無い場合はどのストレージ装置20内に有るかの判定をする。なお、ストレージ装置20とサーバ装置10は、ネットワークを介して接続されている。
The data
コマンド制御部21は、上記判定が自装置内でない場合、入出力命令発行元のサーバ装置10と、指定アドレスを指定したライトのダイレクト転送命令を、指定アドレスが存在するストレージ装置20に送信する。さらに、コマンド制御部21は、他のストレージ装置20から受信したライトのダイレクト転送命令で指定されたサーバ装置10に、指定されたアドレスのブロックのデータを転送する。
If the determination is not in the own device, the
本実施の形態にかかるストレージ装置20は、複数のストレージ装置20で容量の大きな論理ディスク40を提供するストレージシステム50において、専用のコントローラなどを設けることなく、データ転送効率を向上させる。すなわち、本実施の形態にかかるストレージ装置20は、スケールアウトストレージにおいて、サーバ装置10とストレージ装置20の全体の性能を向上させる。
The
その理由は、指定されたアドレスが存在しないストレージ装置20がリードコマンドを受け付けた場合でも、指定されたアドレスが存在するストレージ装置20からサーバ装置10側へ直接データ転送するからである。この直接転送によって、ストレージ装置20間のデータ転送をなくすことができるためである。
The reason is that even when the
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
10 サーバ装置
11 コマンド検索部
12 論理ディスク入出力部
20 ストレージ装置
21 コマンド制御部
23 データ格納判定部
24 ディスク装置
30 通信網
40 論理ディスク
600 コンピュータ装置
610 プロセッサ
620 外部記憶装置
630 主記憶部
640 バス
650 プログラム
10 Server device
11 Command search part
12 Logical disk I / O section
20 Storage device
21 Command control section
23 Data storage judgment section
24 disk units
30 communication network
40 logical disks
600 computer equipment
610 processor
620 External storage device
630 Main memory
640 bus
650 programs
Claims (10)
サーバ装置から前記論理ディスクのブロックのアドレス(以降、指定アドレス)を指定したリードの入出力命令を受信して、前記指定アドレスが自装置内に有るか、自装置内に無い場合はどの前記ストレージ装置内に有るかの判定をするデータ格納判定手段と、
a)前記判定が自装置内でない場合、前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したライトのダイレクト転送命令を、前記指定アドレスが存在する前記ストレージ装置に送信し、b)他の前記ストレージ装置から受信したライトの前記ダイレクト転送命令で指定された前記サーバ装置に、指定されたアドレスの前記ブロックのデータを転送するコマンド制御手段と、を備えるストレージ装置。 One of a plurality of storage devices constituting a logical disk,
When a read I / O command designating a logical disk block address (hereinafter designated address) is received from a server device, the storage device if the designated address is in the own device or not in the own device. Data storage judging means for judging whether or not the device is in the apparatus;
a) If the determination is not in the local device, the server device that issued the I / O command and the direct transfer command for the write designating the designated address are sent to the storage device where the designated address exists, b A storage apparatus comprising: command control means for transferring data of the block at a specified address to the server apparatus specified by the direct transfer instruction for a write received from another storage apparatus.
前記コマンド制御手段は、a)前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したリードのダイレクト転送命令を送信し、b)他の前記ストレージ装置から受信したリードの前記ダイレクト転送命令で指定された前記サーバ装置から、指定されたアドレスの前記ブロックにデータを転送する、請求項1のストレージ装置。 The data storage determining means receives the input / output command of the write and makes the determination,
The command control means a) sends the read direct transfer command designating the designated address to the server device that issued the input / output command, and b) the direct transfer of the read received from the other storage device. The storage apparatus according to claim 1, wherein data is transferred from the server apparatus specified by an instruction to the block at a specified address.
入出力バッファを割り当てて前記入出力命令を発行する論理ディスク入出力手段と、前記ストレージ装置から前記データ転送命令を受信すると、自装置が発行した前記入出力命令を検索して前記入出力バッファを特定し、前記入出力バッファを前記データ転送命令用に割当てて、前記了承信号を返信するコマンド検索手段とを備える、前記サーバ装置と、を包含するストレージシステム。 A plurality of storage devices according to claim 3;
Logical disk input / output means for allocating an input / output buffer and issuing the input / output command; and when the data transfer command is received from the storage device, searches for the input / output command issued by the own device and A server system comprising: command search means for specifying, allocating the input / output buffer for the data transfer instruction, and returning the acknowledgment signal.
a)前記判定が自装置内でない場合、前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したライトのダイレクト転送命令を、前記指定アドレスが存在する前記ストレージ装置に送信し、b)他の前記ストレージ装置から受信したライトの前記ダイレクト転送命令で指定された前記サーバ装置に、指定されたアドレスの前記ブロックのデータを転送する、ストレージ制御方法。 A read I / O command specifying a block address (hereinafter designated address) in a logical disk composed of a plurality of storage devices is received from the server device, and the designated address is a certain device (hereinafter referred to as a specified device). If it is in the own device) or not in the own device, determine which storage device it is in,
a) If the determination is not in the local device, the server device that issued the I / O command and the direct transfer command for the write designating the designated address are sent to the storage device where the designated address exists, b A storage control method for transferring data of the block at a designated address to the server device designated by the direct transfer instruction of a write received from another storage device.
a)前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したリードのダイレクト転送命令を送信し、b)他の前記ストレージ装置から受信したリードの前記ダイレクト転送命令で指定された前記サーバ装置から、指定されたアドレスの前記ブロックにデータを転送する、請求項5のストレージ制御方法。 Receiving the input / output command of the light, making the determination,
a) Sending a direct transfer command of the read designating the designated address to the server device that issued the input / output command, and b) Designating the direct transfer command of the read received from the other storage device 6. The storage control method according to claim 5, wherein data is transferred from the server device to the block at a specified address.
a)前記判定が自装置内でない場合、前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したライトのダイレクト転送命令を、前記指定アドレスが存在する前記コンピュータ装置に送信し、b)他の前記コンピュータ装置から受信したライトの前記ダイレクト転送命令で指定された前記サーバ装置に、指定されたアドレスの前記ブロックのデータを転送するコマンド制御処理と、を前記コンピュータ装置に実行させるストレージ制御プログラム。 A read I / O command designating a block address (hereinafter designated address) of a logical disk composed of a plurality of computer devices is received from the server device, and whether the designated address exists in the own device or not A data storage determination process for determining which computer device is in the computer device if not,
a) If the determination is not in the local apparatus, the server apparatus that issued the input / output instruction and a direct transfer instruction for the write designating the designated address are transmitted to the computer apparatus in which the designated address exists, b Storage control for causing the computer apparatus to execute command control processing for transferring data of the block at the specified address to the server apparatus specified by the direct transfer instruction of the write received from the other computer apparatus program.
a)前記入出力命令発行元の前記サーバ装置と、前記指定アドレスを指定したリードのダイレクト転送命令を送信し、b)他の前記コンピュータ装置から受信したリードの前記ダイレクト転送命令で指定された前記サーバ装置から、指定されたアドレスの前記ブロックにデータを転送する前記コマンド制御処理と、を前記コンピュータ装置に実行させる請求項8のストレージ制御プログラム。 The data storage determination process for receiving the input / output command of the write and performing the determination;
a) Sending a direct transfer command of the read designating the designated address to the server device that issued the input / output command, and b) Designating the direct transfer command of the read received from the other computer device 9. The storage control program according to claim 8, which causes the computer device to execute the command control processing for transferring data from a server device to the block at a specified address.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016221259A JP2018081346A (en) | 2016-11-14 | 2016-11-14 | Storage device, storage system, storage control method, and storage control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016221259A JP2018081346A (en) | 2016-11-14 | 2016-11-14 | Storage device, storage system, storage control method, and storage control program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018081346A true JP2018081346A (en) | 2018-05-24 |
Family
ID=62197163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016221259A Pending JP2018081346A (en) | 2016-11-14 | 2016-11-14 | Storage device, storage system, storage control method, and storage control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018081346A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07152491A (en) * | 1993-11-29 | 1995-06-16 | Hitachi Ltd | Virtual disk system |
JP2012098838A (en) * | 2010-10-29 | 2012-05-24 | Toshiba Corp | Data transmission system and data transmission program |
WO2015068239A1 (en) * | 2013-11-07 | 2015-05-14 | 株式会社日立製作所 | Computer system and data control method |
-
2016
- 2016-11-14 JP JP2016221259A patent/JP2018081346A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07152491A (en) * | 1993-11-29 | 1995-06-16 | Hitachi Ltd | Virtual disk system |
JP2012098838A (en) * | 2010-10-29 | 2012-05-24 | Toshiba Corp | Data transmission system and data transmission program |
WO2015068239A1 (en) * | 2013-11-07 | 2015-05-14 | 株式会社日立製作所 | Computer system and data control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7757055B2 (en) | Storage system and data migration method for the same | |
JP5546635B2 (en) | Data transfer apparatus and control method thereof | |
JP5841255B2 (en) | Computer system with processor local coherency for virtualized input / output | |
JP6880402B2 (en) | Memory access control device and its control method | |
KR20200078382A (en) | Solid-state drive with initiator mode | |
US10678437B2 (en) | Method and device for managing input/output (I/O) of storage device | |
CN108205510B (en) | Data processing | |
US20180081558A1 (en) | Asynchronous Discovery of Initiators and Targets in a Storage Fabric | |
JP2017227969A (en) | Control program, system and method | |
KR102387922B1 (en) | Methods and systems for handling asynchronous event request command in a solid state drive | |
CN107329704A (en) | One kind caching mirror method and controller | |
US9348513B2 (en) | SAS virtual tape drive | |
JP5182162B2 (en) | Computer system and I / O control method | |
EP2093656B1 (en) | Storage system and access instruction sending method | |
US20150269098A1 (en) | Information processing apparatus, information processing method, storage, storage control method, and storage medium | |
CN108829798B (en) | Data storage method and system based on distributed database | |
US10579310B2 (en) | System and method for reliably persisting storage writes at high speed | |
US20160011791A1 (en) | Storage control apparatus, storage system, and program | |
JP2014167818A (en) | Data transfer device and data transfer method | |
JP2018081346A (en) | Storage device, storage system, storage control method, and storage control program | |
CN112099728B (en) | Method and device for executing write operation and read operation | |
US10191690B2 (en) | Storage system, control device, memory device, data access method, and program recording medium | |
JP2006164218A (en) | Storage system and its cache control method | |
JPH04288638A (en) | Computer system | |
JP3719976B2 (en) | Duplex controller configuration disk storage system controller and disk storage system in which the controller is duplicated |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200703 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20201117 |