JP4839133B2 - Data management method and computer system for storage apparatus - Google Patents
Data management method and computer system for storage apparatus Download PDFInfo
- Publication number
- JP4839133B2 JP4839133B2 JP2006141379A JP2006141379A JP4839133B2 JP 4839133 B2 JP4839133 B2 JP 4839133B2 JP 2006141379 A JP2006141379 A JP 2006141379A JP 2006141379 A JP2006141379 A JP 2006141379A JP 4839133 B2 JP4839133 B2 JP 4839133B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- volume
- target data
- operation target
- buffer
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1466—Management of the backup or restore process to make the backup process non-disruptive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、ストレージ装置のデータ管理方法、特に、差分スナップショット技術を用いる場合のデータ管理方法に関する。 The present invention relates to a data management method for a storage apparatus, and more particularly to a data management method when using a differential snapshot technique.
計算機システムでは、データバックアップやデータチェックのために、ストレージ装置に格納されているデータを複製する場合がある。データを複製する方法としては、全てのデータを別のデータ領域にコピーする方法がある。しかし、この方法では、元のデータと、コピー先のデータの二つのデータを格納するために、大きなサイズのデータ格納領域が必要である。そのため、データの更新差分だけを管理し、仮想的にデータを複製する差分スナップショットという技術が用いられている。 In a computer system, data stored in a storage device may be duplicated for data backup or data check. As a method of copying data, there is a method of copying all data to another data area. However, this method requires a large data storage area in order to store the original data and the copy destination data. Therefore, a technique called differential snapshot that manages only data update differences and virtually replicates data is used.
差分スナップショット技術を用いる場合、ストレージ装置に対し、二つのデータ格納領域を設定する。一つ目のデータ格納領域をプライマリボリュームと呼び、二つ目のデータ格納領域を差分ボリュームと呼ぶ。プライマリボリュームには、複製元のデータを格納する。そして、プライマリボリュームのデータを更新する際に、更新前のデータを差分ボリュームに退避する。コピー先のデータを参照する場合には、まず差分ボリュームに該当データが退避されているか否かをチェックする。そして、データが退避されている場合には、差分ボリュームのデータを参照し、退避されていない場合には、プライマリボリュームのデータを参照する。また、差分ボリュームのデータを更新する場合には、その更新したデータを差分ボリュームに格納する。 When using the differential snapshot technology, two data storage areas are set for the storage apparatus. The first data storage area is called a primary volume, and the second data storage area is called a differential volume. The replication source data is stored in the primary volume. Then, when updating the data of the primary volume, the data before the update is saved in the differential volume. When referring to copy destination data, it is first checked whether the corresponding data has been saved in the differential volume. When the data is saved, the difference volume data is referred to. When the data is not saved, the primary volume data is referenced. Further, when the data of the differential volume is updated, the updated data is stored in the differential volume.
差分スナップボリュームには、更新されたデータだけを格納するため、通常、そのサイズは小さい。そのため、差分スナップショット技術を用いることで、大きなサイズのデータ格納領域を用いずに、仮想的にデータを複製できる。
差分スナップショット技術に関しては、例えば、特許文献1に記載されている。また、データ退避に関する技術としては、非特許文献1が知られている。
The differential snapshot technique is described in
計算機システムでは、サーバ装置上で動作するアプリケーションプログラムが、ストレージ装置に対してデータ操作の指示を行なう場合が多い。このアプリケーションプログラムの例としては、DBMS(Database Management System)が挙げられる。DBMSなどのアプリケーションプログラムがデータ更新を行なう場合、該当データを一旦サーバ装置のメモリ領域にデータを読み込み、メモリ領域のデータを変更した後、変更したデータをストレージ装置に書き出す場合がある。 In a computer system, an application program running on a server device often instructs the storage device to perform data operations. An example of this application program is DBMS (Database Management System). When an application program such as a DBMS updates data, the corresponding data is once read into the memory area of the server device, the data in the memory area is changed, and then the changed data is written out to the storage device.
そのため、プライマリボリュームのデータを更新する場合、以下のようにプライマリボリュームに対して3回のアクセスが行なわれる。まず、アプリケーションプログラムが、プライマリボリュームから更新対象のデータをメモリ領域に読み込む。次に、アプリケーションプログラムが、データをストレージ装置に書き出す。この書き出しの際に、更新前のデータを退避するために、プライマリボリュームのデータを読み出す。また、更新後のデータをプライマリボリュームに書き込む。このように、プライマリボリュームに対するアクセス回数が増大し、ストレージ装置の負荷が大きくなる問題があった。 Therefore, when updating the data of the primary volume, the primary volume is accessed three times as follows. First, the application program reads data to be updated from the primary volume into the memory area. Next, the application program writes data to the storage device. At the time of writing, the primary volume data is read in order to save the data before update. Also, the updated data is written to the primary volume. Thus, there is a problem that the number of accesses to the primary volume increases and the load on the storage device increases.
本発明は、上記を鑑みてなされたもので、差分スナップショットを利用する際の、ストレージ装置の負荷を削減することを目的とする。 The present invention has been made in view of the above, and an object of the present invention is to reduce the load on a storage apparatus when using a differential snapshot.
本発明の一態様は、第1のボリュームと第2のボリュームを備えるストレージ装置のデータを管理する方法であって、サーバ装置が、端末計算機からデータの操作指示を受信するステップと、前記サーバ装置が、前記データの操作指示に基づいて操作対象のデータを決定するステップと、前記サーバ装置が、前記操作対象のデータが更新用か参照用かを判定するステップと、前記サーバ装置が、当該サーバ装置に設定されたバッファに、前記操作対象のデータが読み込まれているか否かを判定するステップと、前記操作対象のデータが参照用で、かつ、前記操作対象のデータが前記バッファに読み込まれていない場合に、前記サーバ装置が、前記第1のボリュームから読み出された前記操作対象のデータを前記バッファに読み込むステップと、前記操作対象のデータが更新用で、かつ、前記操作対象のデータが前記バッファに読み込まれてない場合に、前記サーバ装置が、前記ストレージ装置に、前記第1のボリュームから前記操作対象のデータを読み出し、かつ、前記操作対象のデータを前記第2のボリュームに退避することを指示する第1のコマンドを発行し、前記ストレージ装置から前記操作対象のデータを受信して前記バッファに格納し、当該バッファにおいて更新を実行するステップと、前記操作対象のデータが更新用で、かつ、前記操作対象のデータが前記バッファに読み込まれている場合に、前記サーバ装置が、前記ストレージ装置に、前記操作対象のデータを前記第1のボリュームから前記第2のボリュームに退避することを指示する第2のコマンドを発行し、前記バッファにおいて更新を実行するステップと、を含む。One aspect of the present invention is a method for managing data in a storage apparatus including a first volume and a second volume, wherein the server apparatus receives a data operation instruction from a terminal computer, and the server apparatus Determining the operation target data based on the operation instruction for the data, the server device determining whether the operation target data is for update or for reference, and the server device for the server A step of determining whether or not the operation target data is read into a buffer set in the apparatus; the operation target data is for reference; and the operation target data is read into the buffer If not, the server device reads the operation target data read from the first volume into the buffer; When the operation target data is for update and the operation target data is not read into the buffer, the server device stores the operation target data from the first volume to the storage device. Read and issue a first command for instructing to save the operation target data to the second volume, receive the operation target data from the storage device, store the data in the buffer, Executing the update in the buffer, and when the operation target data is for update and the operation target data is read into the buffer, the server device stores the operation target in the storage device. Issue a second command instructing to evacuate the data from the first volume to the second volume, and And executing the update in the buffer, the.
本発明により、データをメモリ領域に読み込む際に、差分ボリュームへデータを退避でき、第1のボリュームに対するアクセス回数を2回に削減できる。そしてデータの退避は完了しているため、データ更新の際に第1のボリュームのデータを読み出す必要がない。これにより、ストレージ装置の負荷が削減される。 According to the present invention, when data is read into the memory area, the data can be saved to the differential volume, and the number of accesses to the first volume can be reduced to two. Since the data evacuation has been completed, it is not necessary to read the data of the first volume when updating the data. Thereby, the load of the storage apparatus is reduced.
以下、本発明の一実施形態を添付図面に基づいて説明する。
図1は、本発明を適用する第1の実施形態の計算機システムの構成を示すブロック図である。図1では、サーバ1でDBMS(DataBase Management System)が動作し、ストレージ2がデータベース101を格納する計算機システムを示している。
Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings.
FIG. 1 is a block diagram showing a configuration of a computer system according to the first embodiment to which the present invention is applied. FIG. 1 shows a computer system in which a DBMS (DataBase Management System) operates on the
サーバ1のDBMS100が、ネットワーク3を介して操作端末(端末計算機)5などからデータの操作要求を受け付け、その要求に従ってデータベース101に対するデータの操作を実行する。
The DBMS 100 of the
ここで、サーバ1には、演算処理を実行するCPU11と、プログラムやデータを一時的に格納するメモリ12と、CPU11とI/Oのアクセスを制御するデータ転送コントローラ13と、ネットワーク3に接続された通信部(ネットワークインターフェース)14及びストレージ用のインターフェース15が設けられている。
Here, the
メモリ12にはDBMS100のプログラムが格納されており、CPU11がDBMS100のプログラムを実行する。データ転送コントローラ13は、CPU11、通信部14、ストレージ用のインターフェース15の間でデータを転送する。ストレージ用のインターフェース15はSAN(Storage Area Network)4を介してストレージ2に接続されている。DBMS100は、SQL実行部110、バッファ管理部120、ディスク管理部130、データ領域管理テーブル121、DBバッファ140によって構成されている。
A program for the DBMS 100 is stored in the
ストレージ2は、ドライブ30、ドライブ31と、これらのドライブを制御するストレージコントローラ20から構成される。ここに、ドライブ30、ドライブ31は、データを格納する装置である。以下、図1と図2における30番のドライブをドライブ1、31番のドライブをドライブ2と記す。
The
ストレージコントローラ20は、演算処理を実行するCPU21と、プログラムやデータを格納するメモリ22と、データ転送コントローラ23と、SAN4に接続されたインターフェース24と、ドライブ1と、ドライブ2に接続されたインターフェース25と、ネットワーク3に接続されたインターフェース26が設けられている。
The storage controller 20 includes a
メモリ22には、ストレージ制御部210と退避指示判定部220のプログラムが格納されており、CPU21がこれらのプログラムを実行することによって、ドライブ1、ドライブ2へのアクセスを実行する。データ転送コントローラ23は、CPU21、インターフェース24、25の間でデータを転送する。
The
ストレージ制御部210は、サーバ1からデータ操作に関するコマンドを受信し、それに基づいてドライブ1、ドライブ2に格納されたデータの操作を行なう。ここに、データ操作コマンドとは、データの参照(Read)やデータの更新(Write)である。但し、本発明のストレージ2は、後に説明するように、データ退避の指示を含むデータ参照コマンドや、データ退避コマンドを受付けることができる。
The
ストレージ制御部210は、サーバ1から受信したコマンドに、データ退避の指示が含まれるか否かを判定するために、受信したコマンドを、退避指示判定部220に送信する。退避指示判定部220は、コマンドにデータ退避の指示が含まれるか否かの判定を行ない、その結果をストレージ制御部210に送信する。後に図10と図12のフローチャートを用いて説明するように、ストレージ制御部210は、コマンドにデータ退避の指示が含まれている場合には、データの退避を実行する。
The
図2に示すように、ストレージ制御部210は、ボリューム管理テーブル211を管理している。図5に例示するように、ボリューム管理テーブル211には、論理的なデータ格納領域であるボリュームとドライブの対応が記載されている。このボリュームは、ロジカルユニットと呼ばれる場合もある。図5の例では、ボリューム名2111「VOL1」のエントリの、ドライブ名2113に「ドライブ1」が指定されていることから、VOL1にドライブ1が対応することを示している。同様に、VOL2にはドライブ2が対応することを示している。一つのボリュームに対して複数のドライブを対応させることも可能であるが、図5では、一つのボリュームに一つのドライブを対応させる例を示している。
As shown in FIG. 2, the
また、ボリューム管理テーブル211には、種別2112と差分ボリューム名2114が記載されている。種別2112には「Primary」または「Differential」が指定され、「Primary」は差分スナップショットの退避元ボリュームであることを示し、「Differintial」は差分スナップショットの退避先ボリュームであることを示す。図5の例ではVOL1に「Primary」が指定され、VOL2に「Differintial」が記載されていることから、VOL1が退避元のボリュームであり、VOL2が退避先のボリュームに指定されている。さらに、VOL1の差分ボリューム名2114にVOL2が記載されており、VOL1の差分スナップショットの退避先ボリュームがVOL2であることを示している。また、VOL2の差分ボリューム名2114にVOL1が記載されており、VOL2の差分スナップショットの退避元ボリュームがVOL1であることを示している。
In the volume management table 211, a
ボリュームのデータ格納領域は、512バイトなどの一定サイズの領域に区切られ、それぞれにアドレスを付与されて管理されている。このアドレスは、ロジカルブロックアドレス(LBA)と呼ばれる場合がある。図6は、VOL1に格納されているデータベース101を例示している。アドレス1011はVOL1の一定サイズの領域ごとに付与される番号であり、図6の例では、VOL1のアドレス「0」にデータ“AAA”が格納されている。以上のように、ボリューム名とアドレスによって、ストレージが管理するドライブにアクセスできる。例えば、ストレージ制御部210が、サーバ1からVOL1のアドレス「0」のデータのReadを指示するデータ操作コマンドを受け取った場合には、サーバ1に“AAA”を送信する。
The data storage area of the volume is divided into areas of a fixed size such as 512 bytes, and each is assigned an address and managed. This address may be referred to as a logical block address (LBA). FIG. 6 illustrates the
また、ストレージ制御部210は、図2に示すように、差分管理テーブル221と退避管理テーブル222を管理している。図7に例示する差分管理テーブル221には、差分スナップショットの退避元ボリュームのアドレス2211と、退避先ボリュームのアドレス2212が記載されている。図7の最初のエントリは、退避元ボリュームであるVOL1のアドレス「100」のデータが、退避先ボリュームであるVOL2のアドレス「0」に退避されていることを示している。また、2番目のエントリと3番目のエントリは、VOL1のアドレス「200」のデータはVOL2のアドレス「1」に、VOL1のアドレス「300」のデータはVOL2のアドレス「2」に退避されていることを示している。
Further, the
退避管理テーブル222は、退避元ボリュームのデータが退避済みか否かを記録するテーブルである。退避フラグ2222には、「0」または、「1」が記載され、「0」はデータが退避済みでないことを示し、「1」はデータが退避済みであることを示す。図8の例では、退避元ボリュームであるVOL1のアドレス「0」の退避フラグ2222は「0」であり、退避済みでないことを示している。同様に、VOL1のアドレス「1」、アドレス「2」のデータも退避済みでないことを示している。ストレージ制御部210は、退避元ボリュームのデータを退避先ボリュームに退避した場合に、差分管理テーブル221と退避管理テーブル222の内容を変更する。
The save management table 222 is a table that records whether the save source volume data has been saved. In the
次に、DBMS100の動作例について説明する。
Next, an operation example of the
図1に示すように、DBMS100のプログラムはサーバ1のメモリ12に格納されており、CPU11により実行される。DBMS100は、操作端末5からデータ操作要求を受け付け、この要求に対応するクエリプランを作成する。ここにデータ操作要求とは、SQL(Structured Query Language)などで記述されたデータの更新や参照などの指示である。また、クエリプランとは、指示されたデータ操作の実行方法であり、読み込むデータのボリューム名やアドレス、読み込んだデータの変更方法などが指定されている。
As shown in FIG. 1, the program of the
SQL実行部110は、操作端末5から受信したデータ操作要求に基づいてクエリプランを作成する。データ操作要求とは、例えば、テーブル名が「Warehouse」で識別カラム名「W_id」が「1」のデータの参照、といったものである。このデータ操作要求からクエリプランを生成するために、SQL実行部110はデータ領域管理テーブル121を使用する。図3に示すように、データ管理テーブル121には、テーブル名1210、識別カラム名1211、識別カラム1212、ボリューム名1213、および、アドレス1214が記載されている。図3の例では、テーブル名が「Warehouse」で識別カラム名「W_id」が「1」のデータは、ボリューム名「VOL1」のアドレス「0」に格納されていることが分かる。従って、外部記憶装置のボリューム名「VOL1」のアドレス「0」のデータを取得し操作端末5に送信するというクエリプランを生成することができる。なお、以上では、データ操作要求として一つのデータを参照する例を示したが、以上の操作を繰り返すことによって、複数のデータ参照やデータ更新を含むデータ操作要求に対するクエリプランを作成することも可能である。
The
SQL実行部110は生成したクエリプランに従って、データの参照や更新を行なう。データ参照の場合、SQL実行部110は参照するデータのボリューム名とアドレスをバッファ管理部120に通知する。バッファ管理部120は、DBバッファ140を管理しており、要求されたデータがDBバッファ140にある場合には、このデータをSQL実行部110に渡す。SQL実行部110は、バッファ管理部120から受け取ったデータを操作端末5に送信する。DBバッファ140の格納内容を図4に例示する。DBバッファ140には、ボリューム名1401とアドレス1402とデータ1403が記載されており、SQL実行部110から要求されたデータが既にDBバッファ140に読み込まれているか否かを判定できる。SQL実行部110から要求されたデータがDBバッファ140に読み込まれていない場合、バッファ管理部120はストレージ2に対してデータ参照コマンドを発行し、読み込んだデータをDBバッファ140に格納する。そして、バッファ管理部120はSQL実行部110にデータを渡す。
The
SQL実行部110がデータ更新をする場合、更新するデータのボリューム名とアドレスをバッファ管理部120に通知する。バッファ管理部120は、要求されたデータがDBバッファ140にある場合には、このデータをSQL実行部110に渡す。要求されたデータがDBバッファ140にない場合には、バッファ管理部120はストレージ2に対してデータ読み込みコマンドを発行し、読み込んだデータをDBバッファ140に格納すし、SQL実行部110にデータを渡す。SQL実行部110は受け取ったデータに対し更新を行ない、そのデータをバッファ管理部120に渡す。バッファ管理部120は受け取ったデータをDBバッファ140に格納し、ストレージ2に対してデータ更新のコマンドを発行する。
When the
以上のDBMS100の動作例において、SQL実行部110は、データが参照用か更新用か判定することができる。例えば、操作端末5からデータ更新の要求を受付けた場合、そのデータは更新用のデータである。また、複数のデータ参照とデータ更新を含むクエリプランが生成された場合、参照したデータが後に更新されるのであれば、データ参照の時点で、更新用のデータと判定することができる。更新用データと判定した場合、SQL実行部110は、ボリューム名とアドレスと更新用データであることをバッファ管理部120に通知する。更新用データであることを通知されたバッファ管理部120は、データ参照コマンドを退避指示追加部130に送信する。退避指示追加部130はデータ参照コマンドにデータの退避を指示するタグを追加して、バッファ管理部120に送信する。バッファ管理部120はデータの退避を指示が追加されたデータ参照コマンドをストレージ2に送信する。データ退避タグ付きのデータ読み込みコマンドを受信したストレージ2は、退避元ボリュームのデータを退避先ボリュームにデータを退避して、データをサーバ1に送信する。
In the operation example of the
また、バッファ管理部120は、更新用のデータが既にDBバッファ140に存在する場合に、退避だけを指示するコマンドをストレージ2に発行することができる。これにより、ストレージ2は、退避元ボリュームのデータを退避先ボリュームにデータを退避する動作を予め実行することができる。
Further, the
また、上記の実施例の他に、ストレージ2が、図15に例示する退避ボリューム設定テーブルを管理する実施例がある。この実施例では、退避ボリューム設定テーブルに設定されたボリュームのデータがアクセスされた場合に、ストレージ2はデータを退避先ボリュームに退避する。
In addition to the above-described embodiment, there is an embodiment in which the
<処理の詳細>
次に、サーバ1のDBMS100とストレージ2のストレージ制御部210で行われる処理の詳細について説明する。図9は、DBMS100で行われる処理の一例を示すフローチャートで、操作端末5からクエリを受け付けるたびに実行される。
<Details of processing>
Next, details of processing performed by the
DBMS100は、操作端末5からクエリ(データの操作指示)を受け付けると(S1)、クエリの内容を解析してクエリプランを作成する(S2)。S3では、作成したクエリプランに基づいて、ストレージ2からサーバ1へ読み込むデータを決定する。
When the
S4では、サーバ1へ読み込むべきデータが、DBバッファ140に読み込まれているか否かを判定する。既に、読み込むべきデータがDBバッファ140に読み込まれている場合にはS9へ進む。DBバッファ140に該当するデータが読み込まれていない場合にはS5に進む。
In S4, it is determined whether or not data to be read into the
S5では、ストレージ2から読み込むデータが更新用のデータか否かを判定する。すなわち、上記S2で作成したクエリプランを解析して、サーバ1へ該当するデータを読み込んだ後に更新するか否かを判定する。そして、更新用のデータである場合にはS6に進んでデータ退避タグ付きの参照コマンドを生成する。更新用のデータでない場合には、通常の参照コマンドを設定してS7に進む。
In S5, it is determined whether or not the data read from the
S7では、上記S5、S6で設定したデータ退避タグ付き参照コマンドまたは参照コマンドをストレージ2へ送信する。
In S7, the reference command or reference command with the data save tag set in S5 and S6 is transmitted to the
S8では、データ退避タグ付き参照コマンドまたは参照コマンドに対するストレージ2からのデータを受信する。そして、DBMS100は、受信したデータをDBバッファ140に格納する。
In S8, a reference command with a data save tag or data from the
次に、S9ではDBバッファ140へ読み込んだ(または既に読み込まれている)データに対して更新するか否かを判定する。更新を行う場合には、S10に進んでDBバッファ140上の該当データに対してクエリプランに従った更新を実行する。一方、読み込んだデータに対して更新を行わない場合にはS11へ進む。S11では、クエリを送信した操作端末5に対してクエリの結果を通知する。
Next, in S9, it is determined whether or not to update the data read (or already read) into the
以上の処理を操作端末5からクエリを受け付けるたびに実行することにより、サーバ1のDBバッファ140へ読み込んだデータについて更新を行う場合には、データ退避タグ付き参照コマンドを発行し、データ参照と合わせて該当データの退避を実行することができる。
When the data read into the
上記S1で、操作端末5からサーバ1に送信されるデータ操作指示とは、例えば「UPDATE Warehouse SET name = "Tokyo" WHERE W_id = 1」といったものである。これは、図3で示したように、Warehouseというテーブル名1210のW_idという識別カラム名1211が「1」のnameカラム1212の値をTokyoに変更する指示である。
The data operation instruction transmitted from the operation terminal 5 to the
上記では、UPDATE文の実施例を示したが、「SELECT name FROM Warehouse Where W_id = 1」といったデータ操作指示を受け付けることもできる。これは、WarehouseテーブルのW_idカラムが「1」のnameカラムのデータの読み込みを指示するものである。
次に、ストレージ2のストレージコントローラ20で行われる処理について説明する。図10、図11、図12は、ストレージコントローラ20で行われる処理の例を示すフローチャートである。図10は、ストレージコントローラ20がSAN4から参照コマンドまたはデータ退避タグ付き参照コマンドを受信したときの処理を示す。図11は、ストレージコントローラ20がSAN4から書き込みコマンドを受信したときの処理を示し、図12は、ストレージコントローラ20がSAN4からデータ退避コマンドを受信したときの処理を示す。
In the above, an example of the UPDATE statement is shown, but a data operation instruction such as “SELECT name FROM Warehouse Where W_id = 1” can also be accepted. This is an instruction to read data in the name column whose W_id column in the Warehouse table is “1”.
Next, processing performed by the storage controller 20 of the
まず、図10の参照コマンドまたはデータ退避タグ付き参照コマンドを受信したときの処理では、S21でストレージコントローラ20が、参照コマンド(タグ付き参照コマンド)を受信する。次に、S22ではストレージコントローラ20がプライマリボリュームから参照コマンドで指定されたアドレスのデータを読み込む。 First, in the process when the reference command or the reference command with data save tag in FIG. 10 is received, the storage controller 20 receives the reference command (reference command with tag) in S21. Next, in S22, the storage controller 20 reads data at the address specified by the reference command from the primary volume.
次に、S23では、受信した参照コマンドのタグを参照し、タグ付き参照コマンドであるか否かを判定する。例えば、図13で示すように、ストレージコントローラ20で受け付けるコマンドがnビットで表される場合、0ビットをタグ領域とし、1ビットからnビットをコマンド領域とする。そして、例えば、タグ領域の値が「1」の場合にはデータ退避の指示を示し、「0」の場合にはデータ退避の指示無しを示す。 Next, in S23, the tag of the received reference command is referred to and it is determined whether or not it is a tagged reference command. For example, as shown in FIG. 13, when a command received by the storage controller 20 is represented by n bits, 0 bit is set as a tag area and 1 to n bits are set as a command area. For example, when the value of the tag area is “1”, an instruction to save data is indicated, and when the value is “0”, no instruction to save data is indicated.
S23では、参照コマンドに付加されたタグ領域の値に基づいてデータ退避の指示の有無を判定し、指示ありと判定した場合にはS24へ進んでデータの退避を実行する。一方、指示無しと判定した場合には、S27に進んで要求元のサーバ1へこのデータを送信する。
In S23, the presence / absence of a data saving instruction is determined based on the value of the tag area added to the reference command. If it is determined that there is an instruction, the process proceeds to S24 to execute data saving. On the other hand, if it is determined that there is no instruction, the process proceeds to S27 to transmit this data to the requesting
データ退避タグ付き参照コマンドの場合のS24では、ストレージコントローラ20は、上記S22で読み出したプライマリボリュームのアドレスについて退避管理テーブル222を参照し、退避フラグ2222の値に基づいて退避が完了しているか否かを判定する。この判定の結果、プライマリボリューム上の該当するデータの退避が完了していなければ、S26へ進んで差分スナップショットの作成を行う。一方、該当するデータの退避が完了していればS27に進む。
In S24 in the case of a reference command with a data save tag, the storage controller 20 refers to the save management table 222 for the address of the primary volume read in S22, and whether save has been completed based on the value of the
S26では、プライマリボリュームから読み出したデータを差分ボリュームに複写してデータの退避を実施する。そして、ストレージコントローラ20は、データの退避が完了すると差分管理テーブル221に、複写したプライマリボリュームのアドレス2211と退避先の差分ボリュームの退避先アドレス2212とを書き込む。また、データの退避が完了したのでプライマリボリューム上の該当するアドレス2221について退避管理テーブル222の退避フラグ2222を「1」にセットし、データの退避完了を記録する。
In S26, the data read from the primary volume is copied to the differential volume to save the data. Then, when the data saving is completed, the storage controller 20 writes the copied
S27では、ストレージコントローラ20が、データの退避が完了したデータを、要求元のサーバ1に送信して処理を終了する。なお、データ退避の指示のない参照コマンドの場合は、S22で読み込んだプライマリボリュームのデータを、そのままサーバ1へ送信する。
In S <b> 27, the storage controller 20 transmits the data whose data has been saved to the requesting
このように、データ退避タグ付き参照コマンドの場合では、ストレージコントローラ20が読み込んだデータについてプライマリボリュームから差分ボリュームへ複写してから、サーバ1が要求したデータを送信する。そして、データの退避が完了すると、差分管理テーブル221と退避管理テーブル222を更新する。
Thus, in the case of a reference command with a data save tag, the data read by the storage controller 20 is copied from the primary volume to the differential volume, and then the data requested by the
次に、図11を用いて、ストレージコントローラ20が更新コマンドを受信したときの処理を説明する。 Next, processing when the storage controller 20 receives an update command will be described with reference to FIG.
まず、S31でストレージコントローラ20が、更新コマンドを受信する。次に、S32ではストレージコントローラ20が書き込み対象のアドレスのデータの退避が完了しているか否かを判定する。この判定の結果、退避が完了していなければ、S33へ進んで書き込み対象のプライマリボリュームのアドレスのデータを、差分ボリュームに退避する。そして、データの退避が完了すると、差分管理テーブル221に、複写したプライマリボリュームのアドレス2211と退避先の差分ボリュームの退避先アドレス2212とを書き込む。
First, in S31, the storage controller 20 receives an update command. Next, in S32, the storage controller 20 determines whether or not the data at the address to be written has been saved. If the result of this determination is that the save has not been completed, the process proceeds to S33, and the data at the address of the write target primary volume is saved in the differential volume. When the data save is completed, the copied
一方、S32の判定で書き込み対象のプライマリボリュームのデータの退避が既に完了している場合には、S34に進む。 On the other hand, if it is determined in S32 that the data of the primary volume to be written has already been saved, the process proceeds to S34.
S34では、ストレージコントローラ20は、書き込み対象のプライマリボリュームのデータを更新する。そして、S35では、ストレージコントローラ20が、データの書き込みが完了した通知をサーバ1に送信して処理を終了する。
In S34, the storage controller 20 updates the data of the write target primary volume. In S35, the storage controller 20 sends a notification that the data has been written to the
次に、図12を用いて、ストレージコントローラがデータ退避コマンドを受信したときの処理を説明する。 Next, processing performed when the storage controller receives a data save command will be described with reference to FIG.
まず、S41でストレージコントローラ20が、データ退避コマンドを受信する。次に、S42ではストレージコントローラ20がデータ退避対象のプライマリボリューム上のアドレスのデータについて退避が完了しているか否かを上記S24、S25と同様に判定する。この判定の結果、退避が完了していなければ、S43へ進んで書き込み対象のプライマリボリュームのデータを読み込む。そして、S44では読み込んだデータを差分ボリュームに複写して退避を完了する。ストレージコントローラ20は、プライマリボリュームのデータの退避が完了すると、差分管理テーブル221に、複写したプライマリボリュームのアドレス2211と退避先の差分ボリュームの退避先アドレス2212とを書き込む。また、退避管理テーブル222の該当するアドレス2221の退避フラグ2222を「1」にリセットし、退避が完了したことを記録する。
First, in S41, the storage controller 20 receives a data save command. Next, in S42, the storage controller 20 determines whether or not the saving of the data at the address on the data saving target primary volume has been completed in the same manner as in S24 and S25. If the result of this determination is that saving has not been completed, the process proceeds to S43 to read the data of the primary volume to be written. In S44, the read data is copied to the differential volume and the saving is completed. When the saving of the primary volume data is completed, the storage controller 20 writes the copied
一方、書き込み対象のプライマリボリュームのデータの退避が既に完了している場合には、S45に進む。 On the other hand, if the data of the primary volume to be written has already been saved, the process proceeds to S45.
S45では、ストレージコントローラ20が、データの退避が完了した通知をサーバ1に送信して処理を終了する。
In S <b> 45, the storage controller 20 transmits a notification that data saving has been completed to the
このように、データ退避コマンドの場合では、ストレージコントローラ20がデータの退避対象のプライマリボリュームのデータを差分ボリュームに退避し、差分管理テーブル221と退避管理テーブル222を更新する。 As described above, in the case of the data save command, the storage controller 20 saves the data of the primary volume to be saved to the differential volume, and updates the difference management table 221 and the save management table 222.
なお、上記データ退避コマンドは、DBMS100が参照を行うデータがDBバッファ140へ既に読み込まれており、かつ、DBバッファ140上で更新されている場合に、DBMS100がストレージ2へ発行するようにしても良い。この場合、DBバッファ140上で更新されてからストレージ2へ書き込まれていないデータに対して参照要求があった場合、ストレージ2のストレージコントローラ20では、データ退避コマンドを受け付けて、書き込みが発生する以前に、事前に差分スナップショットを作成することが可能となる。これにより、DBバッファ140上で更新されたデータをストレージ2で更新する際には、既に差分スナップショットが作成されているので、書き込みのみを行えば良く、ストレージ2の処理を迅速に行うことができる。
The data save command may be issued by the
以上のように、本発明ではサーバ1がストレージ2に対してデータの参照を行う際に、参照を行うデータについて更新を伴うか否かを判定し、更新を伴う場合には参照コマンドにデータの退避を指示するタグを付けた参照コマンドを発行する。データ退避タグ付き参照コマンドを受信したストレージ2のストレージコントローラ20は、参照を要求されたデータの退避が完了した後に、このデータをサーバ1へ送信する。これにより、サーバ1からストレージ2へタグ付き参照コマンドを一回送信するだけで、データの退避とデータの読み込みを行うことが可能となる。
As described above, in the present invention, when the
なお、上記実施形態では、サーバ1でDBMS100が稼動する例を示したが、データの参照をストレージ2へ要求する際に、参照するデータについて後に更新を行うか否かを判定または推定可能なアプリケーションやサービスであれば本発明を適用することができる。
In the above-described embodiment, an example in which the
また、サーバ1とストレージ2がSAN4で接続された例を示したが、ストレージ2がSCSIやSATAなどのインターフェースを介してサーバ1に接続される場合でも本発明を適用することができる。
Moreover, although the example in which the
<第2実施形態>
図14は、前記第1実施形態の図9に示したサーバ1で稼動するDBMS100の処理の一部を変更し、参照を要求するデータがDBバッファ140に存在した場合も、更新対象のデータであればタグ付き参照コマンドを実行しておき、予めデータの退避を行うようにしたものである。その他の構成は、前記第1実施形態と同様である。
Second Embodiment
FIG. 14 shows the data to be updated even when a part of the processing of the
図14において、DBMS100の処理は、S1〜S3及びS5〜S11の処理は前記第1実施形態の図9と同様であり、S4の判定でYESとなった場合が前記第1実施形態の図9と異なる。
In FIG. 14, the processing of the
S4では、参照するデータがDBバッファ140になければ、前記第1実施形態の図9と同様にS5へ進む。一方、参照するデータがDBバッファ140に既に存在する場合は、S51に進んで更新を行うデータであるか否かを判定する。S2で作成したクエリプランを解析して、サーバ1へ該当するデータを読み込んだ後に更新するか否かを判定する。そして、更新する場合には差分スナップショットの作成を実行するためにS52に進んでタグ付き参照コマンドを設定する。S52では、DBバッファ140上のデータについて、タグ付き参照コマンドを設定し、S7へ進んでストレージ2にデータの参照と差分スナップショットの作成を指令する。
In S4, if there is no data to be referenced in the
一方、S51の判定で、更新する必要がない場合には、既に読み込み済みである旨を通知するためS11に進む。 On the other hand, if it is not necessary to update in the determination of S51, the process proceeds to S11 to notify that it has already been read.
以上のように、DBMS100が読み込むデータがDBバッファ140上に存在する場合でも、当該データがサーバ1へ読み込まれた後に、更新が行われるまたは更新が予想される場合には、タグ付き参照コマンドを発行して当該データの差分スナップショットを作成しておく。これにより、更新が予想されるデータに対してDBMS100が更新を行って、ストレージ2へ書き込みを要求すると、このデータは既に差分スナップショットの作成が事前に完了しているので、そのまま書き込みが行われることになる。これにより、ストレージ2では、書き込みを要求されたデータについて差分スナップショットを作成する時間が不要になって書き込み処理の高速化を図ることが可能となる。
As described above, even when data to be read by the
<第3実施形態>
また、上記の実施例の他に、ストレージコントローラ20が、図15に例示する退避ボリューム設定テーブルを管理する実施例がある。ストレージコントローラ20は、メモリ22に差分退避属性テーブル223を格納する。退避ボリューム設定テーブル223には、参照されたデータを差分ボリュームへ退避するボリューム名を格納する。なお、この差分退避属性テーブル223は、管理端末6等から設定される。
<Third Embodiment>
In addition to the above embodiment, there is an embodiment in which the storage controller 20 manages the save volume setting table illustrated in FIG. The storage controller 20 stores the differential save attribute table 223 in the
ストレージ制御部210は、サーバ1から参照コマンドを受信すると、コマンドに指定されたボリュームが退避ボリューム設定テーブル223に設定されているか否かを判定する。コマンドに指定されたボリュームが退避ボリューム設定テーブル223に設定されていれば、プライマリボリュームのデータを差分ボリュームに退避してから、データをサーバ1に送信する。
When the
このような実施例においても、データ参照時にプライマリボリュームのデータを差分ボリュームに退避し、プライマリボリュームに対する負荷を軽減することができる。 Even in such an embodiment, it is possible to reduce the load on the primary volume by saving the data of the primary volume to the differential volume at the time of data reference.
なお、本明細書では、データアクセスをするアプリケーションプログラムとしてDBMSを用いて説明したが、アプリケーションプログラムはDBMSに限定されない。 In this specification, the DBMS is used as an application program for accessing data, but the application program is not limited to the DBMS.
以上のように、本発明によればデータ参照の際にデータの退避をすることで、ストレージ装置の負荷を軽減することが可能である。 As described above, according to the present invention, it is possible to reduce the load on the storage apparatus by saving data when referring to data.
1 サーバ
2 ストレージ
20 ストレージコントローラ
30 ドライブ1
31 ドライブ2
100 DBMS
101 データベース
102 差分データ
110 SQL実行部
120 バッファ管理部
130 退避指示追加部
140 DBバッファ
210 ストレージ制御部
220 退避指示判定部
211 ボリューム管理テーブル
221 差分管理テーブル
222 退避管理テーブル
1
31
100 DBMS
Claims (4)
サーバ装置が、端末計算機からデータの操作指示を受信するステップと、 A step in which the server device receives a data operation instruction from the terminal computer;
前記サーバ装置が、前記データの操作指示に基づいて操作対象のデータを決定するステップと、 The server device determining operation target data based on an operation instruction of the data;
前記サーバ装置が、前記操作対象のデータが更新用か参照用かを判定するステップと、 The server device determining whether the operation target data is for update or for reference; and
前記サーバ装置が、当該サーバ装置に設定されたバッファに、前記操作対象のデータが読み込まれているか否かを判定するステップと、 The server device determining whether or not the operation target data is read in a buffer set in the server device;
前記操作対象のデータが参照用で、かつ、前記操作対象のデータが前記バッファに読み込まれていない場合に、前記サーバ装置が、前記第1のボリュームから読み出された前記操作対象のデータを前記バッファに読み込むステップと、 When the operation target data is for reference and the operation target data is not read into the buffer, the server device reads the operation target data read from the first volume. Reading into the buffer;
前記操作対象のデータが更新用で、かつ、前記操作対象のデータが前記バッファに読み込まれてない場合に、前記サーバ装置が、前記ストレージ装置に、前記第1のボリュームから前記操作対象のデータを読み出し、かつ、前記操作対象のデータを前記第2のボリュームに退避することを指示する第1のコマンドを発行し、前記ストレージ装置から前記操作対象のデータを受信して前記バッファに格納し、当該バッファにおいて更新を実行するステップと、 When the operation target data is for update and the operation target data is not read into the buffer, the server device stores the operation target data from the first volume to the storage device. Read and issue a first command for instructing to save the operation target data to the second volume, receive the operation target data from the storage device, store the data in the buffer, Performing an update in the buffer;
前記操作対象のデータが更新用で、かつ、前記操作対象のデータが前記バッファに読み込まれている場合に、前記サーバ装置が、前記ストレージ装置に、前記操作対象のデータを前記第1のボリュームから前記第2のボリュームに退避することを指示する第2のコマンドを発行し、前記バッファにおいて更新を実行するステップと、 When the operation target data is for update and the operation target data is read into the buffer, the server device stores the operation target data in the storage device from the first volume. Issuing a second command instructing to save to the second volume, and executing an update in the buffer;
を含むストレージ装置のデータ管理方法。 Data management method for storage device including
前記サーバ装置が前記操作対象のデータが更新用か参照用かを判定するステップは、操作指示に含まれるSQL文の種類に応じて判定をする、 The step in which the server device determines whether the operation target data is for update or for reference is determined according to the type of SQL sentence included in the operation instruction.
請求項1に記載のストレージ装置のデータ管理方法。 The data management method for a storage apparatus according to claim 1.
前記サーバ装置は、端末計算機からデータの操作指示を受信し、 The server device receives data operation instructions from a terminal computer,
前記サーバ装置は、前記データの操作指示に基づいて操作対象のデータを決定し、 The server device determines operation target data based on an operation instruction of the data,
前記サーバ装置は、前記操作対象のデータが更新用か参照用かを判定し、 The server device determines whether the operation target data is for update or reference;
前記サーバ装置は、当該サーバ装置に設定されたバッファに、前記操作対象のデータが読み込まれているか否かを判定し、 The server device determines whether or not the operation target data is read in a buffer set in the server device,
前記操作対象のデータが参照用で、かつ、前記操作対象のデータが前記バッファに読み込まれていない場合に、前記サーバ装置は、前記第1のボリュームから読み出された前記操作対象のデータを前記バッファに読み込み、 When the operation target data is for reference and the operation target data is not read into the buffer, the server device reads the operation target data read from the first volume. Read into the buffer,
前記操作対象のデータが更新用で、かつ、前記操作対象のデータが前記バッファに読み込まれてない場合に、前記サーバ装置は、前記ストレージ装置に、前記第1のボリュームから前記操作対象のデータを読み出し、かつ、前記操作対象のデータを前記第2のボリュームに退避することを指示する第1のコマンドを発行し、前記ストレージ装置から前記操作対象のデータを受信して前記バッファに格納し、当該バッファにおいて更新を実行し、 When the operation target data is for update and the operation target data is not read into the buffer, the server device stores the operation target data from the first volume in the storage device. Read and issue a first command for instructing to save the operation target data to the second volume, receive the operation target data from the storage device, store the data in the buffer, Perform updates in the buffer,
前記操作対象のデータが更新用で、かつ、前記操作対象のデータが前記バッファに読み込まれている場合に、前記サーバ装置は、前記ストレージ装置に、前記操作対象のデータを前記第1のボリュームから前記第2のボリュームに退避することを指示する第2のコマンドを発行し、前記バッファにおいて更新を実行し、 When the operation target data is for updating and the operation target data is read into the buffer, the server device stores the operation target data in the storage device from the first volume. Issue a second command instructing to save to the second volume, execute an update in the buffer,
前記第1のコマンド及び第2のコマンドの一方のコマンドを受信した前記ストレージ装置は、前記操作対象のデータが退避済みであるか否かを前記一方のコマンドに従って判定し、退避済みでない場合に前記一方のコマンドに従って前記操作対象のデータを前記第1のボリュームから前記第2のボリュームに退避する、 The storage apparatus that has received one of the first command and the second command determines whether or not the operation target data has been saved according to the one command. According to one command, the operation target data is saved from the first volume to the second volume.
計算機システム。 Computer system.
前記サーバ装置は、前記操作指示に含まれるSQL文の種類に応じて前記操作対象のデータが更新用か参照用かを判定する、 The server device determines whether the operation target data is for update or for reference according to the type of SQL statement included in the operation instruction.
請求項3に記載の計算機システム。 The computer system according to claim 3.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006141379A JP4839133B2 (en) | 2006-05-22 | 2006-05-22 | Data management method and computer system for storage apparatus |
US11/454,088 US7610460B2 (en) | 2006-05-22 | 2006-06-16 | Buffer updates and data evacuation in a storage system using differential snapshots |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006141379A JP4839133B2 (en) | 2006-05-22 | 2006-05-22 | Data management method and computer system for storage apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007310788A JP2007310788A (en) | 2007-11-29 |
JP4839133B2 true JP4839133B2 (en) | 2011-12-21 |
Family
ID=38713265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006141379A Expired - Fee Related JP4839133B2 (en) | 2006-05-22 | 2006-05-22 | Data management method and computer system for storage apparatus |
Country Status (2)
Country | Link |
---|---|
US (1) | US7610460B2 (en) |
JP (1) | JP4839133B2 (en) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8380143B2 (en) | 2002-05-01 | 2013-02-19 | Dali Systems Co. Ltd | Power amplifier time-delay invariant predistortion methods and apparatus |
US8811917B2 (en) | 2002-05-01 | 2014-08-19 | Dali Systems Co. Ltd. | Digital hybrid mode power amplifier system |
JP4809040B2 (en) * | 2005-11-08 | 2011-11-02 | 株式会社日立製作所 | Storage apparatus and snapshot restore method |
KR20100014339A (en) | 2006-12-26 | 2010-02-10 | 달리 시스템즈 씨오. 엘티디. | Method and system for baseband predistortion linearization in multi-channel wideband communication systems |
US7908268B2 (en) * | 2007-02-06 | 2011-03-15 | International Business Machines Corporation | Predictive database pool preparation |
JP2009151293A (en) | 2007-11-30 | 2009-07-09 | Semiconductor Energy Lab Co Ltd | Display device, manufacturing method of display device and electronic equipment |
JP5544897B2 (en) * | 2010-01-22 | 2014-07-09 | 富士通株式会社 | Storage device, control device, and control method of storage device |
JP5549243B2 (en) * | 2010-01-29 | 2014-07-16 | 富士通株式会社 | Storage device, storage device control method, and storage device control program |
KR101835254B1 (en) | 2010-08-17 | 2018-03-06 | 달리 시스템즈 씨오. 엘티디. | Neutral host architecture for a distributed antenna system |
KR101829517B1 (en) | 2010-09-14 | 2018-02-14 | 달리 시스템즈 씨오. 엘티디. | Remotely Reconfigurable Distributed Antenna System and Methods |
JP2013029911A (en) * | 2011-07-27 | 2013-02-07 | Fujitsu Ltd | Control device, control method, and storage device |
US10365950B2 (en) * | 2011-12-30 | 2019-07-30 | Veritas Technologies Llc | Resource throttling and automated policy management in a virtual machine environment |
US9921954B1 (en) * | 2012-08-27 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for split flash memory management between host and storage controller |
US20140082313A1 (en) * | 2012-09-14 | 2014-03-20 | International Business Machines Corporation | Storage class memory evacuation |
JP6690829B2 (en) * | 2015-08-28 | 2020-04-28 | 国立大学法人 東京大学 | Computer system, power saving method and computer |
US9967337B1 (en) * | 2015-12-29 | 2018-05-08 | EMC IP Holding Company LLC | Corruption-resistant backup policy |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5826076A (en) * | 1994-05-13 | 1998-10-20 | Liant Software Corporation | Computer-based information access method and apparatus to permit SQL-based manipulation of programming language-specific data files |
DE60044409D1 (en) * | 1999-03-19 | 2010-07-01 | Hitachi Ltd | System to duplicate data |
US7130958B2 (en) * | 2003-12-02 | 2006-10-31 | Super Talent Electronics, Inc. | Serial interface to flash-memory chip using PCI-express-like packets and packed data for partial-page writes |
US6401178B1 (en) * | 1999-12-23 | 2002-06-04 | Emc Corporatiion | Data processing method and apparatus for enabling independent access to replicated data |
JP2002230189A (en) * | 2001-02-02 | 2002-08-16 | Hitachi Ltd | Service providing system |
JP2003345514A (en) * | 2002-05-29 | 2003-12-05 | Hitachi Ltd | Computer system |
JP4311532B2 (en) | 2003-03-12 | 2009-08-12 | 株式会社日立製作所 | Storage system and snapshot management method in the same system |
US7124243B2 (en) * | 2003-05-16 | 2006-10-17 | Pillar Data Systems, Inc. | Methods and systems of cache memory management and snapshot operations |
US7032089B1 (en) * | 2003-06-09 | 2006-04-18 | Veritas Operating Corporation | Replica synchronization using copy-on-read technique |
US20050010726A1 (en) * | 2003-07-10 | 2005-01-13 | Rai Barinder Singh | Low overhead read buffer |
JP4463042B2 (en) * | 2003-12-26 | 2010-05-12 | 株式会社日立製作所 | Storage system having volume dynamic allocation function |
JP2005242403A (en) * | 2004-02-24 | 2005-09-08 | Hitachi Ltd | Computer system |
JP2005292865A (en) * | 2004-03-31 | 2005-10-20 | Hitachi Ltd | Storage system and backup method for storage system |
US7159069B2 (en) * | 2004-06-23 | 2007-01-02 | Atmel Corporation | Simultaneous external read operation during internal programming in a flash memory device |
JP2006113927A (en) * | 2004-10-18 | 2006-04-27 | Hitachi Ltd | Storage device, storage system, snapshot maintenance method and command |
US7716420B2 (en) * | 2006-04-28 | 2010-05-11 | Network Appliance, Inc. | Methods of converting traditional volumes into flexible volumes |
-
2006
- 2006-05-22 JP JP2006141379A patent/JP4839133B2/en not_active Expired - Fee Related
- 2006-06-16 US US11/454,088 patent/US7610460B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007310788A (en) | 2007-11-29 |
US20070271426A1 (en) | 2007-11-22 |
US7610460B2 (en) | 2009-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4839133B2 (en) | Data management method and computer system for storage apparatus | |
US7698319B2 (en) | Database system management method, database system, database device, and backup program | |
US6587933B2 (en) | Method, system, and program for discarding data in a storage system where updates to a primary storage device are shadowed in a secondary storage device | |
JP4949088B2 (en) | Remote mirroring between tiered storage systems | |
US8060711B2 (en) | Storage system | |
JP2008217209A (en) | Difference snapshot management method, computer system and nas computer | |
US20060167895A1 (en) | Database system and method for adapting a main database components in a main memory thereof | |
JP2009116796A (en) | Method for reading data, data management system, and storage system | |
JP2007079774A (en) | Method for constructing file system | |
JP2016536694A (en) | Method and system for autonomous memory retrieval | |
CN104238963A (en) | Data storage method, device and system | |
JP2009205333A (en) | Computer system, storage device, and data management method | |
US8850148B2 (en) | Data copy management for faster reads | |
US20130325812A1 (en) | System and method for archive in a distributed file system | |
US20130325814A1 (en) | System and method for archive in a distributed file system | |
US7549029B2 (en) | Methods for creating hierarchical copies | |
JP5721056B2 (en) | Transaction processing apparatus, transaction processing method, and transaction processing program | |
JP4937863B2 (en) | Computer system, management computer, and data management method | |
US8683130B2 (en) | Fabricating key fields | |
US20080320062A1 (en) | Method of transferring file system, file system transference program, and file system transference device | |
JP2009064160A (en) | Computer system, management computer, and data management method | |
US7676644B2 (en) | Data processing system, storage apparatus and management console | |
US20130325813A1 (en) | System and method for archive in a distributed file system | |
US20100023713A1 (en) | Archive system and contents management method | |
JP2019185296A (en) | Data managing device, data managing program and data managing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110530 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110607 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110803 |
|
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: 20110927 |
|
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: 20111003 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141007 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |