JP2016177407A - Data management device, data management method and data management program - Google Patents

Data management device, data management method and data management program Download PDF

Info

Publication number
JP2016177407A
JP2016177407A JP2015055670A JP2015055670A JP2016177407A JP 2016177407 A JP2016177407 A JP 2016177407A JP 2015055670 A JP2015055670 A JP 2015055670A JP 2015055670 A JP2015055670 A JP 2015055670A JP 2016177407 A JP2016177407 A JP 2016177407A
Authority
JP
Japan
Prior art keywords
data
volume
storage area
data storage
management table
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.)
Granted
Application number
JP2015055670A
Other languages
Japanese (ja)
Other versions
JP6202026B2 (en
Inventor
朋花 上浦
Tomoka Kamiura
朋花 上浦
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2015055670A priority Critical patent/JP6202026B2/en
Publication of JP2016177407A publication Critical patent/JP2016177407A/en
Application granted granted Critical
Publication of JP6202026B2 publication Critical patent/JP6202026B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a data management device and the like capable of shortening time for accessing a duplicated data storage area of a lower hierarchy.SOLUTION: A data management device for storing original data in a duplicated data storage area with update of the original data, comprises: update means for storing the original data as differential data in the duplicated data storage area of a first hierarchy held as a sequential generation with update of the original data, and generating a difference management table showing the data presence/absence state in the duplicated data storage area of a self-generation and upper generation in association with the duplicated data storage area; and access means for performing access on the basis of the data presence/absence state shown by the difference management table according to access to the duplicated data storage area.SELECTED DRAWING: Figure 1

Description

本発明は、スナップショット技術を利用した仮想マシンにおけるデータアクセスに関する。   The present invention relates to data access in a virtual machine using snapshot technology.

近年、コスト削減や運用管理の容易化の観点から、仮想マシンを作成する仮想化技術が普及している。仮想化技術では、例えばVMWare(登録商標)社のLinked Clone技術を用いた製品がリリースされている。Linked Clone技術は、例えば、特許文献1に開示されるように、共有するマシンのディスクイメージ(マシンイメージ)のスナップショットをとり、共有するマシンイメージとの差分データのみを管理することにより、ディスク容量を削減する技術である。   In recent years, virtualization technology for creating virtual machines has become widespread from the viewpoint of cost reduction and ease of operation management. In the virtualization technology, for example, products using Linked Clone technology of VMWare (registered trademark) have been released. Linked Clone technology, as disclosed in, for example, Patent Document 1, takes a snapshot of a disk image (machine image) of a shared machine and manages only the difference data from the shared machine image, thereby managing the disk capacity. Is a technology to reduce

また、例えば特許文献2に開示されるように、マスタとなる仮想マシンのボリューム(マスタボリューム)の複製を世代管理する技術としても、スナップショット技術が知られている。この場合も、スナップショット作成時点からのマスタボリュームに更新があったアドレスのみスナップショットボリュームに更新前データを保持するので、ディスク容量を削減することができる。   Further, as disclosed in, for example, Patent Document 2, a snapshot technique is known as a technique for performing generation management of a copy of a master virtual machine volume (master volume). Also in this case, since the pre-update data is held in the snapshot volume only for the address where the master volume has been updated since the snapshot was created, the disk capacity can be reduced.

ここで、スナップショットとは、指定された時点における所定のボリュームの状態を保持するための技術またはその状態をキャプチャした結果である。以降、元データを記憶するボリュームを「マスタボリューム」と称し、元データを記憶するボリュームの更新前データを保持するために定義された複製データ記憶領域となるボリュームを「スナップショットボリューム」と称する。   Here, the snapshot is a technique for holding the state of a predetermined volume at a specified time point or a result of capturing the state. Hereinafter, the volume that stores the original data is referred to as a “master volume”, and the volume that becomes the duplicate data storage area defined to hold the pre-update data of the volume that stores the original data is referred to as the “snapshot volume”.

図17を参照して、スナップショット技術の一例について説明する。図17(a)に示すようなデータを記憶したマスタボリュームのスナップショットをとる場合、まず、このマスタボリュームと同等の記憶容量を有するスナップショットボリュームが図17(a)に示すように記憶装置内に生成される。   An example of the snapshot technique will be described with reference to FIG. When taking a snapshot of a master volume storing data as shown in FIG. 17A, first, a snapshot volume having a storage capacity equivalent to this master volume is stored in the storage device as shown in FIG. Is generated.

そして、マスタボリュームにおけるデータ”BB”の記憶領域(アドレス)にデータ”EE”の書き込みを行おうした段階で、更新前のデータ”BB”が図17(b)に示すようにスナップショットボリュームの同一アドレスに格納される。このスナップショットボリュームは、第1世代のスナップショットとして機能する。   When the data “EE” is written to the storage area (address) of the data “BB” in the master volume, the data “BB” before the update is stored in the snapshot volume as shown in FIG. Stored at the same address. This snapshot volume functions as a first generation snapshot.

続いて、改めてマスタボリュームのスナップショットをとる場合、このマスタボリュームと同等の記憶容量を有するスナップショットボリュームが図17(b)に示すよう新たに記憶装置内に生成される。このスナップショットボリュームは、第2世代のスナップショットとなる。   Subsequently, when taking a snapshot of the master volume again, a snapshot volume having a storage capacity equivalent to the master volume is newly created in the storage device as shown in FIG. This snapshot volume is a second generation snapshot.

続いて、更にマスタボリュームにおけるデータ”CC”の記憶領域にデータ”FF”の書き込みを行おうとすると、更新前のデータ”CC”が図17(c)に示すように第2世代のスナップショットとして機能するスナップショットボリュームの同一アドレスに格納される。このとき、第1世代のスナップショットとして機能するスナップショットボリュームの内容は、図17(b)および図17(c)に示すように保持されたままである。   Subsequently, when the data “FF” is written to the storage area of the data “CC” in the master volume, the data “CC” before the update is used as a second generation snapshot as shown in FIG. Stored at the same address of the functioning snapshot volume. At this time, the contents of the snapshot volume that functions as the first-generation snapshot are retained as shown in FIGS. 17B and 17C.

なお、「(AA)」、「(BB)」等は、そのボリュームにはデータが存在しないが、上位世代またはマスタの該当するページからデータA1、B1が読み出せることを意味する。   Note that “(AA)”, “(BB)”, and the like mean that data A1 and B1 can be read from the corresponding page of the higher generation or master, although no data exists in the volume.

上記のようなスナップショット技術を用いてデータの複製を管理するディスクアレイサブシステムでは、マスタボリュームへの更新があったアドレスのデータのみスナップショットボリュームに保持される。スナップショットボリュームは、自ボリュームがデータを保持するか否かを、アドレス毎に管理する保持データ管理テーブルを有している。したがって、ディスクアレイサブシステムのデータアクセス手段は、スナップショットボリュームへのリード命令を受けた場合、対象となるデータのアドレスに対応する保持データ管理テーブルの情報を調べる。その結果、データがあると判断された場合は、データアクセス手段は、スナップショットボリュームからそのデータを読み出す。一方、データがないと判断された場合は、データアクセス手段は、マスタボリュームからそのデータを読み出す。   In a disk array subsystem that manages data replication using the snapshot technique as described above, only data at an address that has been updated to the master volume is held in the snapshot volume. The snapshot volume has a retained data management table that manages for each address whether or not the own volume retains data. Therefore, when the data access means of the disk array subsystem receives a read command to the snapshot volume, it checks the information in the retained data management table corresponding to the address of the target data. As a result, when it is determined that there is data, the data access means reads the data from the snapshot volume. On the other hand, when it is determined that there is no data, the data access means reads the data from the master volume.

仮想マシンを複数ユーザに提供する際、マシンイメージのバージョン管理を、上記のようなスナップショット技術を用いて実施することが可能である。また、1つのバージョンについて更にスナップショット技術によりサブバージョン管理をすることも可能である。更に、Linke Clone技術によってサブバージョンのスナップショットを複数作成し、ユーザに提供することも可能である。   When providing a virtual machine to a plurality of users, it is possible to perform version management of a machine image using the snapshot technology as described above. Further, it is possible to further manage the sub version by using a snapshot technique for one version. Furthermore, a plurality of sub-version snapshots can be created by the Link Clone technology and provided to the user.

このように、Linked Clone技術を含むスナップショット技術を階層的に用いることにより、少ないディスク容量で複数のユーザそれぞれに適したマシンイメージを提供することができると共に、運用管理も容易となる。   As described above, by using the snapshot technology including the Linked Clone technology hierarchically, a machine image suitable for each of a plurality of users can be provided with a small disk capacity, and operation management is facilitated.

上述のようなスナップショット技術を用いたOS(Operating System)イメージのバージョン管理、およびOSイメージをユーザに提供する方法の例について説明する。   An example of OS (Operating System) image version management using the snapshot technique as described above and a method of providing an OS image to a user will be described.

OSが更新される際、更新前のOSイメージのボリュームのスナップショットを作成する。ここで、バージョンアップやパッチなどで更新される前のOSイメージのボリュームを、「共通OSイメージボリューム」と称する。   When the OS is updated, a snapshot of the volume of the OS image before update is created. Here, the volume of the OS image before being updated by version upgrade or patch is referred to as “common OS image volume”.

共通OSイメージボリュームをマスタとしたスナップショットボリューム(以降、「各バージョンOSボリューム」と称する)は、図17(b)に示したように、上位世代の各バージョンOSボリュームまたは共通OSイメージボリュームとの差分のみを保持している。なお、共通OSイメージボリュームは、上述の「マスタボリューム」に相当し、共通OSイメージボリュームをマスタとして作成された各バージョンOSボリュームは、上述の「スナップショットボリューム」に相当する。   As shown in FIG. 17B, the snapshot volume (hereinafter referred to as “each version OS volume”) having the common OS image volume as a master is connected to each version OS volume or common OS image volume of a higher generation. Only the difference is retained. The common OS image volume corresponds to the “master volume” described above, and each version OS volume created using the common OS image volume as a master corresponds to the “snapshot volume” described above.

ユーザには、各バージョンOSボリュームをマスタとしたスナップショット(以降、「ユーザボリューム」と称する)が提供される。ユーザボリュームは、作成された時点ではマスタである各バージョンOSボリュームと同じイメージを有し、その後各バージョンOSボリュームが更新されたアドレスのデータのみを保持する。   The user is provided with a snapshot (hereinafter referred to as “user volume”) with each version OS volume as a master. The user volume has the same image as each version OS volume that is the master at the time of creation, and then holds only the data at the address at which each version OS volume was updated.

ここで、特許文献1は、例えば、ディスクアレイサブシステムにおけるスナップショット動作において、更新データのみを保持するデータ格納システムを開示する。   Here, for example, Patent Document 1 discloses a data storage system that holds only update data in a snapshot operation in a disk array subsystem.

また、特許文献2は、シンプルな処理により既存の仮想マシンのディスクイメージの重複排除を実現できるストレージ管理システムを開示する。   Patent Document 2 discloses a storage management system that can realize deduplication of disk images of existing virtual machines by simple processing.

特開2011−248742号公報JP 2011-248742 A 特開2005−208950号公報JP 2005-208950 A

上述のようなスナップショット技術によりユーザボリュームを管理するディスクアレイサブシステムにおいて、ユーザボリュームへのアクセスは、以下の手順で行われる。上述のように、ユーザボリュームは、マスタとなる各バージョンOSボリュームに更新がない場合はデータを保持しない。したがって、この場合、ディスクアレイサブシステムのデータアクセス手段は、ユーザボリュームへのアクセスに際して、マスタである各バージョンOSボリュームにデータが存在するか否かを調べる。   In the disk array subsystem that manages user volumes by the snapshot technique as described above, access to user volumes is performed in the following procedure. As described above, the user volume does not hold data when there is no update in each master version OS volume. Therefore, in this case, the data access means of the disk array subsystem checks whether data exists in each version OS volume as a master when accessing the user volume.

マスタボリュームにデータが存在しない場合、データアクセス手段は、スナップショットのさらなる上位世代である各バージョンOSボリュームにデータが存在するか否かを調べる。   If no data exists in the master volume, the data access unit checks whether data exists in each version OS volume that is a higher generation of the snapshot.

このように、スナップショットによるボリューム管理では、ユーザボリューム(下位階層の複製データ記憶領域)へのアクセスに対して、データが存在するボリュームまで世代を辿って調べる必要がある。したがって、OSのバージョンが複数存在する場合は、ユーザボリュームへのアクセス時間が遅延してしまうという課題がある。   As described above, in the volume management based on the snapshot, it is necessary to trace the generation to the volume in which the data exists for the access to the user volume (lower-level replicated data storage area). Therefore, when there are a plurality of OS versions, there is a problem that the access time to the user volume is delayed.

特許文献1および特許文献2には、このようなユーザボリュームへのアクセス時間の遅延を防ぐ技術は開示されていない。   Patent Documents 1 and 2 do not disclose a technique for preventing such a delay in access time to a user volume.

本願発明は、上記課題を鑑みてなされたものであり、下位階層の複製データ記憶領域へのアクセス時間を短縮することができるデータ管理装置等を提供することを主要な目的とする。   The present invention has been made in view of the above problems, and has as its main object to provide a data management device and the like that can shorten the access time to a lower-level replicated data storage area.

本発明の第1のデータ管理装置は、元データの更新に伴って、当該元データを複製データ記憶領域に格納するデータ管理装置において、前記元データの更新に伴って連続した世代として保持される第1の階層の前記複製データ記憶領域に、前記元データを差分データとして格納すると共に、自世代および上位世代の前記複製データ記憶領域におけるデータ有無状況を示す差分管理テーブルを前記複製データ記憶領域に関連付けて生成する更新手段と、前記複製データ記憶領域へのアクセスに応じて、前記差分管理テーブルに示されるデータ有無状況に基づいてアクセスを行うアクセス手段とを備える。   The first data management device according to the present invention is held in a data management device that stores the original data in a replicated data storage area as the original data is updated, and is continuously generated as the original data is updated. The original data is stored as differential data in the replicated data storage area of the first hierarchy, and a differential management table indicating the data presence / absence status in the replicated data storage areas of its own generation and higher generation is stored in the replicated data storage area And updating means for generating the data in association with each other, and access means for performing access based on the data presence / absence status indicated in the difference management table in response to access to the replicated data storage area.

本発明の第1のデータ管理方法は、元データの更新に伴って、当該元データを複製データ記憶領域に格納するデータ管理方法において、前記元データの更新に伴って連続した世代として保持される第1の階層の前記複製データ記憶領域に、前記元データを差分データとして格納すると共に、自世代および上位世代の前記複製データ記憶領域におけるデータ有無状況を示す差分管理テーブルを前記複製データ記憶領域に関連付けて生成し、前記複製データ記憶領域へのアクセスに応じて、前記差分管理テーブルに示されるデータ有無状況に基づいてアクセスを行う。   The first data management method of the present invention is a data management method for storing original data in a replicated data storage area as the original data is updated, and is retained as successive generations as the original data is updated. The original data is stored as differential data in the replicated data storage area of the first hierarchy, and a differential management table indicating the data presence / absence status in the replicated data storage areas of its own generation and higher generation is stored in the replicated data storage area Access is made based on the data presence / absence situation shown in the difference management table in response to access to the duplicate data storage area.

なお同目的は、上記の各構成を有するデータ管理方法を、コンピュータによって実現するコンピュータ・プログラム、およびそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。   This object is also achieved by a computer program that realizes the data management method having the above-described configurations by a computer, and a computer-readable storage medium that stores the computer program.

本願発明によれば、データ格納装置において、ユーザボリュームへのアクセス時間を短縮することができるという効果が得られる。   According to the present invention, it is possible to shorten the access time to the user volume in the data storage device.

本発明の第1の実施形態に係るディスクアレイサブシステムの構成を示すブロック図である。1 is a block diagram showing a configuration of a disk array subsystem according to a first embodiment of the present invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのボリューム対応テーブルの例を示す図である。It is a figure which shows the example of the volume corresponding | compatible table of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムの保持データ管理テーブルの例を示す図である。It is a figure which shows the example of the holding | maintenance data management table of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムの上位世代差分管理テーブルの例を示す図である。It is a figure which shows the example of the upper generation difference management table of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのボリューム更新許否テーブルの例を示す図である。It is a figure which shows the example of the volume update permission / prohibition table of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのボリューム構成の例を示す図である。It is a figure which shows the example of the volume structure of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのユーザボリュームへの通常のリード処理について説明する図である。It is a figure explaining the normal read process to the user volume of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムの共通OSイメージボリュームを増加したボリューム構成におけるユーザボリュームへのリード処理について説明する図である。It is a figure explaining the read process to the user volume in the volume structure which increased the common OS image volume of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのボリューム管理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the volume management part of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムの上位世代差分管理テーブルの更新について説明する図である。It is a figure explaining the update of the upper generation difference management table of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのライト処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the write processing of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのリード処理の流れを示すフローチャートである。4 is a flowchart showing a flow of read processing of the disk array subsystem according to the first embodiment of the present invention. 本発明の第1の実施形態に係るディスクアレイサブシステムのリード処理について説明する図である。It is a figure explaining the read processing of the disk array subsystem which concerns on the 1st Embodiment of this invention. 本発明の第2の実施形態に係るディスクアレイサブシステムのリード処理について説明する図である。It is a figure explaining the read processing of the disk array subsystem which concerns on the 2nd Embodiment of this invention. 本発明の第3の実施形態に係るデータ管理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the data management apparatus which concerns on the 3rd Embodiment of this invention. 本発明の各実施形態に係る装置を実現するハードウエア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions which implement | achieve the apparatus which concerns on each embodiment of this invention. スナップショット技術の一例を説明する図である。It is a figure explaining an example of a snapshot technique.

以下、本発明の実施形態について図面を参照して詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

第1の実施形態
図1は、本発明の第1の実施形態に係るディスクアレイサブシステム100の構成を示すブロック図である。図1に示すように、ディスクアレイサブシステム100は、1または複数のホスト200−1乃至200−nと接続される。
First Embodiment FIG. 1 is a block diagram showing a configuration of a disk array subsystem 100 according to a first embodiment of the present invention. As shown in FIG. 1, the disk array subsystem 100 is connected to one or a plurality of hosts 200-1 to 200-n.

ホスト200は、データ管理を行うボリューム群を備えたディスクアレイサブシステム100に対して、ボリュームへの書き込み、ボリュームからの読み出し、スナップショットの作成、OSの更新、OSの更新抑止、OSの更新許可等の命令(コマンド)を送る。以降、1または複数のホスト200−1乃至200−nを総称して「ホスト200」と称する。   The host 200 writes to the volume, reads from the volume, creates a snapshot, updates the OS, suppresses the OS update, and permits the OS update to the disk array subsystem 100 having a volume group for performing data management. Send commands (commands). Hereinafter, the one or more hosts 200-1 to 200-n are collectively referred to as “host 200”.

図1に示すように、ディスクアレイサブシステム100は、ボリューム管理部110、I/O(Input/Output)処理部130、ボリューム群150およびテーブル記憶部170を備える。   As shown in FIG. 1, the disk array subsystem 100 includes a volume management unit 110, an I / O (Input / Output) processing unit 130, a volume group 150, and a table storage unit 170.

ボリューム管理部110は、ホスト200からのボリューム管理コマンドに応じて、ボリューム群150に含まれるボリュームを管理する処理を実行すると共に、処理が完了すると、ホスト200にレスポンスを返却する。ボリューム管理部110は、ボリューム管理コマンド取得部111、スナップショット実行部112、OS更新抑止部113およびOS更新許可部114を備える。   The volume management unit 110 executes a process for managing the volumes included in the volume group 150 in response to a volume management command from the host 200, and returns a response to the host 200 when the process is completed. The volume management unit 110 includes a volume management command acquisition unit 111, a snapshot execution unit 112, an OS update suppression unit 113, and an OS update permission unit 114.

I/O処理部130は、ホスト200からのI/Oコマンドに応じて、ボリューム群150に含まれるボリュームにリード処理またはライト処理を実行し、処理が完了すると、ホスト200にレスポンスを返却する。I/O処理部130は、I/Oコマンド取得部131、ライト命令実行部132およびリード命令実行部133を備える。   The I / O processing unit 130 executes read processing or write processing on the volumes included in the volume group 150 in response to an I / O command from the host 200, and returns a response to the host 200 when the processing is completed. The I / O processing unit 130 includes an I / O command acquisition unit 131, a write command execution unit 132, and a read command execution unit 133.

ボリューム群150は、複数のボリュームを含む。具体的には、ボリューム群150は、共通OSイメージボリューム151、各バージョンOSボリューム152、ユーザボリューム153およびプールボリューム154を備える。   The volume group 150 includes a plurality of volumes. Specifically, the volume group 150 includes a common OS image volume 151, each version OS volume 152, a user volume 153, and a pool volume 154.

テーブル記憶部170は、ボリューム群150に含まれるボリュームを管理するテーブルを含む。具体的には、テーブル記憶部170は、ボリューム対応テーブル171、ボリューム更新許否テーブル172、保持データ管理テーブル173および上位世代差分管理テーブル(差分管理テーブル)174を備える。   The table storage unit 170 includes a table for managing the volumes included in the volume group 150. Specifically, the table storage unit 170 includes a volume correspondence table 171, a volume update permission / refusal table 172, a retained data management table 173, and a higher generation difference management table (difference management table) 174.

ディスクアレイサブシステム100の各構成要素の概要を説明する。   An outline of each component of the disk array subsystem 100 will be described.

ボリューム管理部110のボリューム管理コマンド取得部111は、ホスト200からボリューム管理コマンドを受けとり、そのコマンドに応じてスナップショット実行部112、OS更新抑止部113またはOS更新許可部114にコマンドを渡す。   The volume management command acquisition unit 111 of the volume management unit 110 receives a volume management command from the host 200 and passes the command to the snapshot execution unit 112, the OS update suppression unit 113, or the OS update permission unit 114 according to the command.

スナップショット実行部112は、ボリューム管理コマンド取得部111からのスナップショット作成コマンドを受けとると、該コマンドにて指定されるマスタボリュームからスナップショットを作成する。そして、スナップショット実行部112は、作成したスナップショットに関してテーブル記憶部170に含まれるテーブルに情報を追加する。   When the snapshot execution unit 112 receives a snapshot creation command from the volume management command acquisition unit 111, the snapshot execution unit 112 creates a snapshot from the master volume specified by the command. Then, the snapshot execution unit 112 adds information to the table included in the table storage unit 170 regarding the created snapshot.

OS更新抑止部113は、ボリューム管理コマンド取得部111からのOS更新抑止コマンドに応じて、ボリューム更新許否テーブル172にフラグをセットする。また、OS更新抑止部113は、OS更新抑止コマンドに応じて、上位世代差分管理テーブル174に情報を追加する。   The OS update inhibiting unit 113 sets a flag in the volume update permission / denial table 172 according to the OS update inhibiting command from the volume management command acquiring unit 111. Further, the OS update suppression unit 113 adds information to the upper generation difference management table 174 in response to the OS update suppression command.

OS更新許可部114は、ボリューム管理コマンド取得部111からのOS更新許可コマンドに応じて、ボリューム更新許否テーブル172のフラグをクリアする。また、OS更新許可部114は、OS更新許可コマンドに応じて、上位世代差分管理テーブル174のフラグをクリアする。   The OS update permission unit 114 clears the flag of the volume update permission / denial table 172 in response to the OS update permission command from the volume management command acquisition unit 111. Further, the OS update permission unit 114 clears the flag of the higher generation difference management table 174 in response to the OS update permission command.

図2は、スナップショット実行部112により情報を追加されるボリューム対応テーブル171の例を示す図である。ボリューム対応テーブル171は、スナップショットが作成されたマスタボリュームとスナップショットボリュームの対応関係を含むテーブルである。図2に示すボリューム対応テーブル171は、詳細を後述する図6に示すボリューム構成に対応する。図2に示すように、ボリューム対応テーブル171は、マスタボリューム番号と、スナップショットのボリューム番号を含む。図2では、例えば、「MV_OS1」はマスタボリュームの番号であり、このマスタボリュームのスナップショットボリュームとして「SV_OSVer3」、「SV_OSVer2」「SV_OSVer1」がそれぞれ第3世代、第2世代、第1世代として作成されたことを示す。このように、スナップショットは、マスタボリューム(元データ)の更新に伴って連続した世代として保持される。   FIG. 2 is a diagram illustrating an example of the volume correspondence table 171 to which information is added by the snapshot execution unit 112. The volume correspondence table 171 is a table including a correspondence relationship between a master volume in which a snapshot is created and a snapshot volume. The volume correspondence table 171 shown in FIG. 2 corresponds to the volume configuration shown in FIG. As shown in FIG. 2, the volume correspondence table 171 includes a master volume number and a snapshot volume number. In FIG. 2, for example, “MV_OS1” is the master volume number, and “SV_OSVer3”, “SV_OSVer2”, and “SV_OSVer1” are created as snapshot volumes of this master volume as the third generation, second generation, and first generation, respectively. Indicates that In this way, snapshots are held as successive generations as the master volume (original data) is updated.

スナップショット実行部112は、また、スナップショットが作成されると、保持データ管理テーブル173に情報を追加する。図3は、保持データ管理テーブル173の例を示す図である。図3に示すように、保持データ管理テーブル173は、スナップショットボリュームに、マスタボリュームに記憶しているデータと対応するデータが存在するか否かを管理するテーブルである。   The snapshot execution unit 112 also adds information to the retained data management table 173 when a snapshot is created. FIG. 3 is a diagram illustrating an example of the retained data management table 173. As shown in FIG. 3, the retained data management table 173 is a table for managing whether or not the snapshot volume has data corresponding to the data stored in the master volume.

保持データ管理テーブル173は、当該対応するデータが存在するか否かを、データの複製処理を行う単位であるスナップショットI/O処理単位(以下、ページ単位と称する。)毎にフラグで管理する。例えば、フラグが「1」のときは対応するデータが存在することを示し、フラグが「0」のときは対応するデータが存在しないことを示す。図3では、例えば、スナップショットボリューム「SV_OSVer1」の「page0」にはフラグが「1」に設定されるので、スナップショットボリューム「SV_OSVer1」の「page0」にはデータが存在すること示す。   The retained data management table 173 manages whether or not the corresponding data exists with a flag for each snapshot I / O processing unit (hereinafter referred to as a page unit) that is a unit for performing data replication processing. . For example, when the flag is “1”, it indicates that the corresponding data exists, and when the flag is “0”, it indicates that the corresponding data does not exist. In FIG. 3, for example, since the flag is set to “1” for “page0” of the snapshot volume “SV_OSVer1”, it indicates that data exists in “page0” of the snapshot volume “SV_OSVer1”.

ここで、スナップショット実行部112は、マスタボリュームへの書き込みがあると、そのページ単位でマスタボリュームの書き込み前のデータをスナップショットボリュームに複製する(以下、この動作を追い出しコピーと称する)。   Here, when there is a write to the master volume, the snapshot execution unit 112 replicates the data before the master volume is written to the snapshot volume in units of pages (hereinafter, this operation is referred to as eviction copy).

スナップショット実行部112は、また、作成したスナップショットボリュームのマスタボリュームが、各バージョンOSボリュームである場合、上位世代差分管理テーブル174に情報を追加する。   The snapshot execution unit 112 also adds information to the higher generation difference management table 174 when the master volume of the created snapshot volume is each version OS volume.

図4は、上位世代差分管理テーブル174の一例を示す図である。図4に示すように、上位世代差分管理テーブル174は、各バージョンOSボリュームに関連付けられたテーブルであり、自ボリューム(自世代)またはスナップショット上位世代の各バージョンOSボリュームのいずれかにデータが存在するか否か(データ有無状況)を、ページ単位毎にフラグで管理する。図4では、例えば、ボリューム「SV_OSVer1」の「page0」はフラグが「1」に設定されているので、「SV_OSVer1」または上位世代の「SV_OSVer2」、「SV_OSVer3」いずれかにデータが存在することを示す。ここで、上位世代とは、自ボリュームの後に作成されたスナップショットボリュームを指し、例えば、マスタボリュームから第1世代、第2世代および第3世代のスナップショットボリュームが作成されている場合、第1世代の上位世代は、第2世代および第3世代のスナップショットボリュームを指す。   FIG. 4 is a diagram illustrating an example of the upper generation difference management table 174. As shown in FIG. 4, the upper generation difference management table 174 is a table associated with each version OS volume, and data exists in either the own volume (own generation) or each version OS volume of the snapshot higher generation. Whether or not (data presence / absence status) is managed by a flag for each page. In FIG. 4, for example, “page0” of volume “SV_OSVer1” has the flag set to “1”. Show. Here, the higher generation refers to a snapshot volume created after the own volume. For example, when the first generation, second generation, and third generation snapshot volumes are created from the master volume, the first generation The higher generations refer to the second and third generation snapshot volumes.

図5は、OS更新抑止部113により管理されるボリューム更新許否テーブル172の例を示す図である。図5に示すように、ボリューム更新許否テーブル172は、ボリュームへのライト処理を禁止するか否かを示すフラグを含む。図5では、ボリューム「MV_OS2」のフラグが「1」に設定されているので、ボリューム「MV_OS2」へのライト処理は禁止されることを示す。なお、本実施形態における運用形態では、ボリューム更新許否テーブル172には、共通OSイメージボリュームに関するフラグのみ設定されるが、別の運用形態では、各バージョンOSボリューム等に関するフラグが設定されてもよい。   FIG. 5 is a diagram illustrating an example of the volume update permission / refusal table 172 managed by the OS update suppression unit 113. As shown in FIG. 5, the volume update permission / refusal table 172 includes a flag indicating whether or not write processing to a volume is prohibited. In FIG. 5, since the flag of the volume “MV_OS2” is set to “1”, it indicates that the write process to the volume “MV_OS2” is prohibited. In the operation mode in this embodiment, only the flag related to the common OS image volume is set in the volume update permission / refusal table 172, but in another operation mode, a flag related to each version OS volume or the like may be set.

次に、ボリューム群150について説明する。ボリューム群150における共通OSイメージボリューム151は、共通のOSイメージを保持するボリュームであり、各バージョンOSボリューム152のスナップショットマスタボリュームである。   Next, the volume group 150 will be described. The common OS image volume 151 in the volume group 150 is a volume that holds a common OS image, and is a snapshot master volume of each version OS volume 152.

各バージョンOSボリューム152は、共通OSイメージボリューム151をマスタとするスナップショットボリュームであり、共通OSイメージボリューム151の所定時点のイメージについて、マスタボリュームとの差分データのみを保持する。各バージョンOSボリューム152の実データはプールボリューム154に保存され、アドレス毎のデータ有無を、保持データ管理テーブル173により管理される。   Each version OS volume 152 is a snapshot volume having the common OS image volume 151 as a master, and holds only difference data with respect to the master volume for an image at a predetermined point in time in the common OS image volume 151. The actual data of each version OS volume 152 is stored in the pool volume 154, and the presence / absence of data for each address is managed by the retained data management table 173.

ユーザボリューム153は、ユーザが使用するボリュームであり、各バージョンOSボリューム152をマスタとするスナップショットボリュームである。ユーザボリューム153は、作成直後はマスタである各バージョンOSボリュームと同じイメージを持ち、ユーザが更新したデータのみを保持する。ユーザボリュームの実データはプールボリューム154に保存され、アドレス毎のデータ有無を保持データ管理テーブル173により管理される。   The user volume 153 is a volume used by the user, and is a snapshot volume having each version OS volume 152 as a master. The user volume 153 has the same image as each master version OS volume immediately after creation, and holds only data updated by the user. The actual data of the user volume is stored in the pool volume 154, and the presence / absence of data for each address is managed by the retained data management table 173.

プールボリューム154は、スナップショットボリュームである各バージョンOSボリュームとユーザボリュームの実データを保持する。   The pool volume 154 holds actual data of each version OS volume and user volume that are snapshot volumes.

図6は、共通OSイメージボリューム「MV_OS1」をマスタとして各バージョンOSボリューム「SV_OSVer1」、「SV_OSVer2」、「SV_OSVer3」が順に作成された構成を示す。また、各バージョンOSボリューム「SV_OSVer1」をマスタとしてユーザボリューム「SV_USR1」、「SV_USR2」が、各バージョンOSボリューム「SV_OSVer2」をマスタとしてユーザボリューム「SV_USR3」が、各バージョンOSボリューム「SV_OSVer3」をマスタとしてユーザボリューム「SV_USR4」が、それぞれ作成された構成を示す。ここで、各バージョンOSボリューム「SV_OSVer1」、「SV_OSVer2」、「SV_OSVer3」を、それぞれ第1世代各バージョンOSボリューム、第2世代各バージョンOSボリューム、第3世代各バージョンOSボリュームと称する。   FIG. 6 shows a configuration in which the version OS volumes “SV_OSVer1”, “SV_OSVer2”, and “SV_OSVer3” are created in order using the common OS image volume “MV_OS1” as a master. Also, each version OS volume “SV_OSVer1” is a master, user volumes “SV_USR1” and “SV_USR2” are each version OS volume “SV_OSVer2” is a master, user volume “SV_USR3” is each master, and each version OS volume “SV_OSVer3” is a master. The user volume “SV_USR4” indicates the created configuration. Here, the version OS volumes “SV_OSVer1”, “SV_OSVer2”, and “SV_OSVer3” are referred to as first generation version OS volumes, second generation version OS volumes, and third generation version OS volumes, respectively.

図6において、「A1」、「B1」等はデータを示し、「173」、「174」は、それぞれ保持データ管理テーブル173、上位世代差分管理テーブル174における、各データを格納するページ(アドレス)に対応するフラグを示す。また、「(A1)」、「(B1)」等は、そのボリュームにはデータが存在しないが、上位世代またはマスタの該当するページからデータA1、B1が読み出せることを意味する。   In FIG. 6, “A1”, “B1”, and the like indicate data, and “173” and “174” are pages (addresses) for storing each data in the retained data management table 173 and the upper generation difference management table 174, respectively. The flag corresponding to is shown. “(A1)”, “(B1)”, and the like mean that data does not exist in the volume, but data A1 and B1 can be read from the corresponding page of the higher generation or master.

例えば、データB0について説明する。スナップショット実行部112がスナップショット「SV_OSVer2」を作成した時点では、「SV_OSVer2」のB0に対応するアドレスには(B0)が示される。その後、共通OSイメージボリュームへの更新がありB0に対応するアドレスにB1が書き込まれると、スナップショット実行部112は追い出しコピーを行い、「SV_OSVer2」のB0に対応するアドレスのデータを(B0)からB0に変更する。このとき、スナップショット実行部112は、保持データ管理テーブル173の該当ページのフラグに「1」をセットする。続いて、スナップショット実行部112は新たにスナップショット「SV_OSVer3」を作成すると、「SV_OSVer3」のB0に対応するアドレスは、共通OSイメージボリュームの値(B1)となる。   For example, the data B0 will be described. When the snapshot execution unit 112 creates the snapshot “SV_OSVer2”, the address corresponding to B0 of “SV_OSVer2” indicates (B0). Thereafter, when there is an update to the common OS image volume and B1 is written to the address corresponding to B0, the snapshot execution unit 112 performs eviction copy, and the data at the address corresponding to B0 of “SV_OSVer2” is stored from (B0). Change to B0. At this time, the snapshot execution unit 112 sets “1” to the flag of the corresponding page of the retained data management table 173. Subsequently, when the snapshot execution unit 112 newly creates a snapshot “SV_OSVer3”, the address corresponding to B0 of “SV_OSVer3” becomes the value (B1) of the common OS image volume.

このように、各バージョンOSボリュームは、上位世代の更新前のデータを保持すると共に、自ボリュームにデータが存在することを示すフラグを有する保持データ管理テーブル173が関連付けられる。また、各バージョンOSボリュームは、自ボリュームまたは上位世代のボリュームのいずれかにデータが存在することを示すフラグを有する上位世代差分管理テーブル174が関連付けられる。   In this way, each version OS volume holds the data before the update of the higher generation, and is associated with the holding data management table 173 having a flag indicating that the data exists in the own volume. Each version OS volume is associated with an upper generation difference management table 174 having a flag indicating that data exists in either the own volume or an upper generation volume.

ユーザボリュームは、ユーザに更新されたデータを保持すると共に、自ボリュームにデータが存在することを示すフラグを有する保持データ管理テーブル173が関連付けられる。   The user volume holds data updated by the user and is associated with a holding data management table 173 having a flag indicating that data exists in the own volume.

ここで、図7を参照して、ユーザボリュームに対する通常のリード処理について説明する。通常のリード処理を実行する部を、通常リード処理部(不図示)と称する。通常のリード処理において、各バージョンOSボリュームは、上位世代差分管理テーブル174を持たず、保持データ管理テーブル173のみを持つと仮定する。   Here, with reference to FIG. 7, a normal read process for the user volume will be described. A unit that executes normal read processing is referred to as a normal read processing unit (not shown). In normal read processing, it is assumed that each version OS volume does not have the upper generation difference management table 174, but has only the retained data management table 173.

図7に示す構成では、共通OSイメージボリュームをマスタとして各バージョンOSボリュームのスナップショットが作成され、さらに各バージョンOSボリュームは第1世代から第3世代まで作成されている。また、第1世代の各バージョンOSボリュームをマスタとしてユーザボリューム2が、第2世代の各バージョンOSボリュームをマスタとしてユーザボリューム1が、それぞれ作成されている。   In the configuration shown in FIG. 7, a snapshot of each version OS volume is created using the common OS image volume as a master, and each version OS volume is created from the first generation to the third generation. Further, a user volume 2 is created with each first generation version OS volume as a master, and a user volume 1 is created with each second generation version OS volume as a master.

ユーザボリューム2のD0に対してリード命令(リードa)がなされたと仮定する。この場合、通常リード処理部は、ユーザボリューム2の保持データ管理テーブル173を調べる。図7では、D0に該当するページの保持データ管理テーブル173のフラグが「0」であるので、ユーザボリューム2にはデータは存在しない。   Assume that a read command (read a) is made to D0 of user volume 2. In this case, the normal read processing unit checks the retained data management table 173 of the user volume 2. In FIG. 7, since the flag of the retained data management table 173 of the page corresponding to D0 is “0”, no data exists in the user volume 2.

そこで、通常リード処理部は、スナップショットペアのマスタボリュームである第1世代各バージョンOSボリュームの保持データ管理テーブル173を調べる(図7において「b」で示す)。ここでも、D0に該当するページのフラグは「0」であるので、データは存在しない。同様に、通常リード処理部は、上位世代である第2世代、第3世代のスナップショットの保持データ管理テーブル173を順に調べる(図7において「c」、「d」で示す)が、いずれもフラグが「0」であるのでデータは存在しない。   Therefore, the normal read processing unit checks the retained data management table 173 of each first generation version OS volume that is the master volume of the snapshot pair (indicated by “b” in FIG. 7). Again, since the flag of the page corresponding to D0 is “0”, there is no data. Similarly, the normal read processing unit sequentially checks the retained data management table 173 of the second generation and third generation snapshots (shown as “c” and “d” in FIG. 7), both of which are higher generations. Since the flag is “0”, there is no data.

その結果、通常リード処理部は、共通OSイメージボリュームからデータD0を読み出す(図7において「e」で示す)。   As a result, the normal read processing unit reads data D0 from the common OS image volume (indicated by “e” in FIG. 7).

ここで、OSのバージョンアップやパッチでは、ボリュームの限られたエリアのみへの更新が多いので、ユーザボリュームにデータがなく、上述のように上位世代を辿って最終的に共通OSボリュームを参照するケースが多い。つまり、多くのユーザボリュームへのアクセスにおいて、複数の保持データ管理テーブル173を検索する必要が生じるので、ユーザボリュームのアクセス時間が遅延する。OSのバージョンが増加すると検索する保持データ管理テーブル173も増加するので、更にユーザボリュームへのアクセス性能が低下してしまう。   Here, in OS version upgrades and patches, there are many updates to only a limited area of the volume, so there is no data in the user volume, and the upper generation is traced and the common OS volume is finally referenced as described above. There are many cases. That is, in accessing many user volumes, it is necessary to search a plurality of retained data management tables 173, so that the user volume access time is delayed. Since the retained data management table 173 to be searched increases as the OS version increases, the access performance to the user volume further deteriorates.

そこで、例えば、図8のように、共通OSイメージボリュームを増加することにより各バージョンOSボリュームを管理することも考えられる。図8では、共通OSイメージボリューム1をマスタとして第1a世代、第2a世代の各バージョンOSボリュームが作成され、共通OSイメージボリューム2をマスタとして第1b世代の各バージョンOSボリュームが作成された構成を示す。さらに、第1a世代各バージョンOSボリュームをマスタとしてユーザボリューム1が作成され、第1b世代各バージョンOSボリュームをマスタとしてユーザボリューム2が作成されている。   Thus, for example, as shown in FIG. 8, it is conceivable to manage each version OS volume by increasing the common OS image volume. FIG. 8 shows a configuration in which each version OS volume of 1a generation and 2a generation is created using the common OS image volume 1 as a master, and each version OS volume of 1b generation is created using the common OS image volume 2 as a master. Show. Furthermore, a user volume 1 is created using each version OS volume of the 1a generation as a master, and a user volume 2 is created using each version OS volume of the 1b generation as a master.

図7の構成と同様に、ユーザボリューム2のD0に対してリード命令(リードf)がなされた場合、通常リード処理部は、ユーザボリューム2の保持データ管理テーブル173を調べる。図8では、D0に該当するアドレスのデータは存在しないので、通常リード処理部は、マスタボリュームである第1b世代各バージョンOSボリュームの保持データ管理テーブル173を調べる(図8において「g」で示す)。D0に該当するページのフラグは「0」であるので、通常リード処理部は、共通OSイメージボリューム2からデータD0を読み出す(図8において「h」で示す)。   Similar to the configuration of FIG. 7, when a read command (read f) is issued to D0 of the user volume 2, the normal read processing unit checks the retained data management table 173 of the user volume 2. In FIG. 8, since there is no data corresponding to D0, the normal read processing unit checks the retained data management table 173 of each version OS volume of the 1b generation that is the master volume (indicated by “g” in FIG. 8). ). Since the flag of the page corresponding to D0 is “0”, the normal read processing unit reads the data D0 from the common OS image volume 2 (indicated by “h” in FIG. 8).

図8に示す構成では、ユーザボリューム2に関連する各バージョンOSボリュームの数が1つであり、検索する保持データ管理テーブル173も1つであるので、ユーザボリュームへのアクセス時間は遅延しない。このように共通OSイメージボリュームを増加することにより、ユーザボリュームへのアクセス時間の遅延を防ぐことが考えられるが、共通OSイメージボリュームは、実データを保持するボリュームであるので、ディスクの容量を消費してしまうという問題がある。   In the configuration shown in FIG. 8, the number of each version OS volume related to the user volume 2 is one, and the holding data management table 173 to be searched is one, so that the access time to the user volume is not delayed. By increasing the common OS image volume in this way, it is conceivable to prevent a delay in access time to the user volume. However, since the common OS image volume is a volume that holds actual data, it consumes disk capacity. There is a problem of end up.

そこで、本実施形態に係るディスクアレイサブシステム100は、以下のように、ディスク容量の消費を増加させることなく、ユーザボリュームへのアクセス時間を短縮する。   Therefore, the disk array subsystem 100 according to the present embodiment reduces the access time to the user volume without increasing the disk capacity consumption as follows.

まず、ディスクアレイサブシステム100の運用方法について説明する。ディスクアレイサブシステム100は、OSがバージョンアップやパッチなどにより更新される際、更新前の共通OSボリュームイメージのスナップショットを作成することにより、更新前のOSバージョンを、各バージョンOSボリューム152として保持する。OSの更新は、スナップショットが作成された後の共通OSボリュームイメージへのライト処理により実施される。   First, an operation method of the disk array subsystem 100 will be described. When the OS is updated due to version upgrade or patch, the disk array subsystem 100 holds the OS version before update as each version OS volume 152 by creating a snapshot of the common OS volume image before update. To do. The OS is updated by a write process to the common OS volume image after the snapshot is created.

各バージョンをユーザに提供する際、各バージョンOSボリュームをマスタとして、スナップショット実行部112により、更にスナップショットをユーザ毎に作成する。各バージョンのOSイメージであるユーザボリュームが、ユーザ毎に提供される。各ユーザは、ユーザボリュームにアクセスする。   When each version is provided to the user, each version OS volume is used as a master, and the snapshot execution unit 112 further creates a snapshot for each user. A user volume that is an OS image of each version is provided for each user. Each user accesses the user volume.

共通OSイメージボリュームへの更新がない通常運用中は、ホスト200から送信されるOS更新抑止コマンドに応じて、ディスクアレイサブシステム100は、共通OSイメージボリュームへの更新を抑止する。これにより、上位世代差分管理テーブルが有効になるので、上位世代差分管理テーブルを有効利用したユーザボリュームへのリード処理が実施される(詳細は後述する)。   During normal operation in which there is no update to the common OS image volume, the disk array subsystem 100 suppresses the update to the common OS image volume in response to the OS update suppression command transmitted from the host 200. As a result, the upper generation difference management table becomes valid, so that the read processing to the user volume using the upper generation difference management table is carried out (details will be described later).

共通OSイメージボリュームに対して、バージョンアップやパッチ適用による更新がある場合、ディスクアレイサブシステム100は、事前にホスト200から送信されるOS更新許可コマンドに応じて、共通OSイメージボリュームの更新を許可する。この際、上位世代差分管理テーブル174はクリアされフラグはすべて「0」になるので、各バージョンOSボリュームの保持データ管理テーブル173を1つずつ検索することになる(詳細は後述する)。共通OSイメージボリュームの更新が完了すると、ホスト200からOS更新抑止コマンドが送られ、ディスクアレイサブシステム100は、共通OSイメージボリュームへの更新を抑止すると共に、上位世代差分管理テーブル174を更新する(詳細は後述する)。   When the common OS image volume is updated by version upgrade or patch application, the disk array subsystem 100 permits the update of the common OS image volume in accordance with the OS update permission command transmitted from the host 200 in advance. To do. At this time, since the upper generation difference management table 174 is cleared and all the flags are “0”, the retained data management table 173 of each version OS volume is searched one by one (details will be described later). When the update of the common OS image volume is completed, an OS update suppression command is sent from the host 200, and the disk array subsystem 100 suppresses the update to the common OS image volume and updates the upper generation difference management table 174 ( Details will be described later).

次に、ディスクアレイサブシステム100の各構成要素の詳細について説明する。   Next, details of each component of the disk array subsystem 100 will be described.

図9は、ホスト200からディスクアレイサブシステム100にボリューム管理コマンドが送られた際のボリューム管理部110の動作を示すフローチャートである。図9を参照して、ボリューム管理部110の動作について説明する。   FIG. 9 is a flowchart showing the operation of the volume management unit 110 when a volume management command is sent from the host 200 to the disk array subsystem 100. The operation of the volume management unit 110 will be described with reference to FIG.

ホスト200からボリューム管理コマンドが送られると、ボリューム管理コマンド取得部111は、そのコマンドを受信する(S101)。ボリューム管理コマンド取得部111は、受け取ったコマンドの種別を判定し、コマンドがスナップショット作成コマンドである場合(S102においてYes)、コマンドをスナップショット実行部112に渡す。スナップショット実行部112は、受け取ったコマンドにて指定されたマスタボリュームからスナップショットボリュームを作成する(S103)。そして、スナップショット実行部112は、作成したスナップショットボリュームと、マスタボリュームとの対応関係を、ボリューム対応テーブル171に追加する(S104)。   When a volume management command is sent from the host 200, the volume management command acquisition unit 111 receives the command (S101). The volume management command acquisition unit 111 determines the type of the received command, and when the command is a snapshot creation command (Yes in S102), passes the command to the snapshot execution unit 112. The snapshot execution unit 112 creates a snapshot volume from the master volume specified by the received command (S103). Then, the snapshot execution unit 112 adds the correspondence between the created snapshot volume and the master volume to the volume correspondence table 171 (S104).

続いて、スナップショット実行部112は、作成したスナップショットボリュームに関する情報を、保持データ管理テーブル173に追加する(このとき、すべてのページに対応するフラグは「0」である)(S105)。   Subsequently, the snapshot execution unit 112 adds information about the created snapshot volume to the retained data management table 173 (at this time, the flags corresponding to all pages are “0”) (S105).

続いて、作成したスナップショットボリュームのマスタが、共通OSイメージボリュームである場合(S106においてYes)、スナップショット実行部112は、上位世代差分管理テーブル174に、作成したスナップショットボリュームに関する情報を追加する。例えば、スナップショット実行部112は、図6に示す共通OSイメージボリューム「MV_OS1」をマスタとする各バージョンOSボリューム「SV_OSVer3」を作成した場合、図4に示すように上位世代差分管理テーブル174に「SV_OSVer3」の情報を追加する(このとき、すべてのページに対応するフラグは「0」である)(S107)。   Subsequently, when the master of the created snapshot volume is a common OS image volume (Yes in S106), the snapshot execution unit 112 adds information on the created snapshot volume to the higher generation difference management table 174. . For example, when the snapshot execution unit 112 creates each version OS volume “SV_OSVer3” having the common OS image volume “MV_OS1” shown in FIG. 6 as a master, the snapshot execution unit 112 stores “ Information of “SV_OSVer3” is added (at this time, the flags corresponding to all the pages are “0”) (S107).

一方、S102におけるコマンドの種別の判定の結果、コマンドがスナップショット作成コマンドでない場合(S102においてNo)、コマンドは、OS更新抑止コマンドまたはOS更新許可コマンドである。OS更新抑止コマンドは、後述する図10のS205に示す共通OSイメージボリュームの更新が完了した際のレスポンスに応じて、ホスト200からディスクアレイサブシステム100に送られる。OS更新抑止コマンドは、OSが更新済みであり次に更新されるまで上位世代差分管理テーブル174は有効であることを示す。OS更新許可コマンドは、共通OSイメージボリュームを更新(ライト処理)する前にホスト200からディスクアレイサブシステム100に送られる。OS更新許可コマンドに応じて共通OSイメージボリュームが更新されるので、上位世代差分管理テーブル174は無効、つまりフラグはクリアされる。   On the other hand, as a result of determining the command type in S102, if the command is not a snapshot creation command (No in S102), the command is an OS update inhibition command or an OS update permission command. The OS update inhibition command is sent from the host 200 to the disk array subsystem 100 in response to a response when the update of the common OS image volume shown in S205 of FIG. The OS update suppression command indicates that the upper generation difference management table 174 is valid until the OS has been updated and is updated next time. The OS update permission command is sent from the host 200 to the disk array subsystem 100 before the common OS image volume is updated (write process). Since the common OS image volume is updated according to the OS update permission command, the upper generation difference management table 174 is invalid, that is, the flag is cleared.

ホスト200から受信したコマンドがOS更新抑止コマンドである場合(S108においてYes)、ボリューム管理コマンド取得部111は、そのコマンドをOS更新抑止部113に渡す。OS更新抑止部113は、コマンドを受け取ると、ボリュームに対する更新を抑止するために、コマンドにて指定されたボリュームのボリューム更新許否テーブル172のフラグに「1」をセットする(S109)。   When the command received from the host 200 is an OS update suppression command (Yes in S108), the volume management command acquisition unit 111 passes the command to the OS update suppression unit 113. When receiving the command, the OS update inhibiting unit 113 sets “1” to the flag of the volume update permission / refusal table 172 of the volume designated by the command in order to inhibit the update to the volume (S109).

続いて、OS更新抑止部113は、OS更新抑止コマンドにより更新抑止を指定されたボリュームが共通OSイメージボリュームである場合、そのボリュームをマスタとするスナップショットであるすべての各バージョンOSボリュームの上位世代差分管理テーブル174のフラグを更新する(S110)。このとき、OS更新抑止部113は、対象となる各バージョンOSボリュームとその上位世代すべての各バージョンOSボリュームが持つ保持データ管理テーブル173の論理和(OR)をとる。論理和が「1」である場合、OS更新抑止部113は、上位世代差分管理テーブル174の該当するページのフラグを「1」に更新する。   Subsequently, when the volume for which update suppression is specified by the OS update suppression command is a common OS image volume, the OS update suppression unit 113 is the upper generation of all the version OS volumes that are snapshots having that volume as a master. The flag of the difference management table 174 is updated (S110). At this time, the OS update inhibiting unit 113 takes a logical sum (OR) of the retained version management volume 173 possessed by each target version OS volume and each version OS volume of all higher generations. When the logical sum is “1”, the OS update inhibiting unit 113 updates the flag of the corresponding page of the higher generation difference management table 174 to “1”.

図10を参照して、共通OSイメージボリュームのデータが更新された場合に上位世代差分管理テーブル174を更新する例について説明する。図10(a)に示すように、「MV_OS1」をマスタとしたスナップショットボリューム「SV_OSVer2」が作成され、その後、図10(b)に示すように、「MV_OS1」のデータB0がB1に更新されたと仮定する。このとき、通常のスナップショット技術により、「SV_OSVer2」の保持データ管理テーブル173の、データB1に該当するページのフラグに「1」が設定される(後述する図11のS205において実施される)。   An example of updating the upper generation difference management table 174 when the data of the common OS image volume is updated will be described with reference to FIG. As shown in FIG. 10A, a snapshot volume “SV_OSVer2” having “MV_OS1” as a master is created, and thereafter, data B0 of “MV_OS1” is updated to B1 as shown in FIG. 10B. Assuming that At this time, “1” is set to the flag of the page corresponding to the data B1 in the retained data management table 173 of “SV_OSVer2” by the normal snapshot technique (implemented in S205 of FIG. 11 described later).

このとき、OS更新抑止部113は、更新された共通OSイメージボリュームをマスタとするスナップショットであるすべての各バージョンOSボリューム(この場合、「SV_OSVer2」、「SV_OSVer1」)について、該当するページの上位世代差分管理テーブル174を更新する。すなわち、OS更新抑止部113は、各ボリュームとその上位世代のボリュームの、該当するページの保持データ管理テーブル173の論理和(OR)をとる。   At this time, the OS update suppression unit 113 sets the upper level of the corresponding page for all version OS volumes (in this case, “SV_OSVer2” and “SV_OSVer1”) that are snapshots having the updated common OS image volume as a master. The generation difference management table 174 is updated. In other words, the OS update inhibiting unit 113 takes the logical sum (OR) of the retained data management table 173 of the corresponding page for each volume and its higher generation volume.

図10(b)に示すように、「SV_OSVer2」について、上述のように保持データ管理テーブル173の該当するページのフラグに「1」が設定されたので、OS更新抑止部113は、このページに対応する上位世代差分管理テーブル174のフラグに「1」をセットする(図10(b)において「n」で示す)。「SV_OSVer1」について、自ボリューム「SV_OSVer1」と上位世代「SV_OSVer2」の保持データ管理テーブル173の該当するページの論理和をとると「1」となるので、OS更新抑止部113は、「SV_OSVer1」の上位世代差分管理テーブル174の該当するページのフラグに「1」をセットする(図10(b)において「o」で示す)。以上の手順で、OS更新抑止部113は、上位世代差分管理テーブル174を更新する。   As shown in FIG. 10B, for “SV_OSVer2”, since “1” is set in the flag of the corresponding page of the retained data management table 173 as described above, the OS update inhibiting unit 113 sets this page. “1” is set to the flag of the corresponding upper generation difference management table 174 (indicated by “n” in FIG. 10B). As for “SV_OSVer1”, the logical sum of the corresponding pages of the retained data management table 173 of the own volume “SV_OSVer1” and the higher generation “SV_OSVer2” is “1”. “1” is set to the flag of the corresponding page of the upper generation difference management table 174 (indicated by “o” in FIG. 10B). With the above procedure, the OS update inhibiting unit 113 updates the upper generation difference management table 174.

一方、S102におけるコマンドの種別の判定の結果、コマンドがOS更新許可コマンドである場合(S108においてNo)、ボリューム管理コマンド取得部111は、そのコマンドをOS更新許可部114に渡す。OS更新許可コマンドは、ボリュームに対する更新を許可するコマンドであり、OS更新許可部114は、このコマンドを受け取ると、該コマンドにて指定されるボリュームのボリューム更新許否テーブル172のフラグをリセットする(S111)。   On the other hand, as a result of determining the command type in S102, if the command is an OS update permission command (No in S108), the volume management command acquisition unit 111 passes the command to the OS update permission unit 114. The OS update permission command is a command for permitting updates to the volume. Upon receiving this command, the OS update permission unit 114 resets the flag of the volume update permission / refusal table 172 for the volume specified by the command (S111). ).

続いて、OS更新許可部114は、OS更新許可コマンドにより更新許可を指定された共通OSイメージボリュームをマスタとするスナップショットであるすべての各バージョンOSボリュームの上位世代差分管理テーブル174をクリアする(S112)。   Subsequently, the OS update permission unit 114 clears the upper generation difference management table 174 of all the version OS volumes that are snapshots whose master is the common OS image volume for which update permission is specified by the OS update permission command ( S112).

以上の処理が終了すると、ボリューム管理部110は、ホスト200にレスポンスを返却する(S113)。   When the above processing ends, the volume management unit 110 returns a response to the host 200 (S113).

次に、I/O処理部130の動作の概略を説明する。   Next, an outline of the operation of the I / O processing unit 130 will be described.

I/O処理部130は、ホスト200から、共通OSイメージボリュームまたは各バージョンOSボリュームまたはユーザボリュームへのI/O命令を受信し、I/O処理が完了するとレスポンスを返却する。   The I / O processing unit 130 receives an I / O command from the host 200 to the common OS image volume or each version OS volume or user volume, and returns a response when the I / O processing is completed.

I/Oコマンド取得部131は、ホスト200からリード/ライト命令を受け取ると共に、ライト命令はライト命令実行部132に渡し、リード命令はリード命令実行部133に渡す。   The I / O command acquisition unit 131 receives a read / write command from the host 200, passes the write command to the write command execution unit 132, and passes the read command to the read command execution unit 133.

ライト命令実行部132は、ライト命令を受け取ると、ライト対象となるボリュームのボリューム更新許否テーブル172のフラグを調べ、フラグが「1」の場合はライト命令をリジェクトする。フラグが「0」の場合は、ライト対象となるボリュームの種別にしたがってライト処理を実施する。具体的には、ライト命令が共通OSイメージボリュームへのライト命令の場合、ライト命令実行部132は、通常のスナップショット技術のマスタボリュームへのライト処理を共通OSイメージボリュームに実施する。   When receiving the write command, the write command execution unit 132 checks the flag in the volume update permission / refusal table 172 of the volume to be written, and rejects the write command if the flag is “1”. When the flag is “0”, write processing is performed according to the type of volume to be written. Specifically, when the write command is a write command to the common OS image volume, the write command execution unit 132 performs a write process to the master volume of the normal snapshot technology on the common OS image volume.

ライト命令が各バージョンOSボリュームへのライト命令の場合、ライト命令実行部132は、ライト命令をリジェクトする。これは、各バージョンOSボリュームへのライト処理を実施すると、上位世代差分管理テーブル174が無効となるので各バージョンOSボリュームにライトは実施しないという運用に従った処理である。その他の運用形態においては、各バージョンOSボリュームへのライト処理を実施してもよい。上述したように、OSの更新は、共通OSイメージボリュームに実施される。   When the write command is a write command to each version OS volume, the write command execution unit 132 rejects the write command. This is a process according to an operation in which writing to each version OS volume is not performed because the upper generation difference management table 174 becomes invalid when the writing process to each version OS volume is performed. In other operation modes, write processing to each version OS volume may be performed. As described above, the OS update is performed on the common OS image volume.

ライト命令がユーザボリュームへのライト命令である場合、ライト命令実行部132は、通常のスナップショット技術のスナップショットボリュームへのライト処理をユーザボリュームに実施する。   When the write command is a write command to the user volume, the write command execution unit 132 performs a write process to the snapshot volume using the normal snapshot technique.

一方、リード命令実行部133は、I/Oコマンド取得部131から、共通OSイメージボリューム、各バージョンOSボリューム、またはユーザボリュームへのリード命令を受け取ると、リード対象となるボリュームの種別にしたがってリード処理を実施する。   On the other hand, when the read command execution unit 133 receives a read command to the common OS image volume, each version OS volume, or the user volume from the I / O command acquisition unit 131, the read command execution unit 133 performs read processing according to the type of volume to be read. To implement.

具体的には、リード命令が共通OSイメージボリュームへのリード命令である場合、リード命令実行部133は、通常のスナップショット技術のマスタボリュームへのリード処理を、共通OSイメージボリュームに実施する。リード命令が各バージョンOSボリュームへのリード命令である場合、リード命令実行部133は、通常のスナップショット技術のスナップショットボリュームへのリード処理を、各バージョンOSボリュームに実施する。   Specifically, when the read instruction is a read instruction to the common OS image volume, the read instruction execution unit 133 performs a read process to the master volume of the normal snapshot technology on the common OS image volume. When the read command is a read command to each version OS volume, the read command execution unit 133 performs a read process to the snapshot volume of the normal snapshot technology on each version OS volume.

リード命令がユーザボリュームへのリード命令である場合、リード命令実行部133は、ユーザボリュームに関連付けられた保持データ管理テーブル173を調べ、フラグが「1」のとき、ユーザボリュームからデータを読み出す。フラグが「0」のとき、リード命令実行部133は、マスタボリュームである各バージョンOSボリュームの上位世代差分管理テーブル174を調べる。   When the read command is a read command to the user volume, the read command execution unit 133 checks the retained data management table 173 associated with the user volume, and reads data from the user volume when the flag is “1”. When the flag is “0”, the read instruction execution unit 133 checks the upper generation difference management table 174 of each version OS volume that is the master volume.

上位世代差分管理テーブル174のフラグが「0」のとき、リード命令実行部133は、各バージョンOSボリュームのマスタである共通OSイメージボリュームの該当アドレスをリードする。上位世代差分管理テーブル174のフラグが「1」のとき、リード命令実行部133は、ユーザボリュームのマスタとなる各バージョンOSボリューム、上位世代の各バージョンOSボリューム、・・・、最上位世代の各バージョンOSボリュームの順に、保持データ管理テーブル173を調べる。そして、リード命令実行部133は、最初にフラグ「1」が見つかったボリュームからデータをリードする。フラグが「1」のボリュームが見つからなかった場合、リード命令実行部133は、共通OSボリュームの該当アドレスからデータをリードする。   When the flag of the upper generation difference management table 174 is “0”, the read command execution unit 133 reads the corresponding address of the common OS image volume that is the master of each version OS volume. When the flag of the upper generation difference management table 174 is “1”, the read instruction execution unit 133 sets each version OS volume that becomes the master of the user volume, each version OS volume of the upper generation,. The retained data management table 173 is examined in the order of the version OS volume. Then, the read instruction execution unit 133 reads data from the volume in which the flag “1” is first found. If no volume with the flag “1” is found, the read command execution unit 133 reads data from the corresponding address of the common OS volume.

上記I/O処理を、図11および図12を参照して詳細に説明する。   The I / O process will be described in detail with reference to FIG. 11 and FIG.

図11は、I/O処理部130によるI/O処理のうちライト処理の流れを示すフローチャートである。図12は、I/O処理部130によるI/O処理のうちリード処理の流れを示すフローチャートである。   FIG. 11 is a flowchart showing the flow of write processing in the I / O processing by the I / O processing unit 130. FIG. 12 is a flowchart showing the flow of read processing in the I / O processing by the I / O processing unit 130.

ホスト200からリード/ライト命令が送られると、I/Oコマンド取得部131は、それを受信し(S201)、リード/ライト命令がライト命令の場合(S202においてYes)、そのライト命令をライト命令実行部132に渡す。   When a read / write command is sent from the host 200, the I / O command acquisition unit 131 receives it (S201). When the read / write command is a write command (Yes in S202), the write command is used as a write command. It is passed to the execution unit 132.

ライト命令実行部132は、ライト命令の種別を判断し、ライト命令が共通OSイメージボリュームへのライト命令である場合(S203においてYes)、ボリューム更新許否テーブル172における、ライト対象となる共通OSイメージボリュームのフラグを調べる。フラグが「1」である場合(S204においてYes)、ライト命令実行部132は、ライト命令をリジェクトし、ホスト200にリジェクトを返却する(S207)。   The write command execution unit 132 determines the type of the write command, and when the write command is a write command to the common OS image volume (Yes in S203), the common OS image volume to be written in the volume update permission / refusal table 172. Check the flags. When the flag is “1” (Yes in S204), the write command execution unit 132 rejects the write command and returns the reject to the host 200 (S207).

ボリューム更新許否テーブル172のフラグが「0」である場合(S204においてNo)、ライト命令実行部132は、通常のスナップショット技術におけるマスタボリュームへのライト処理を、共通OSイメージボリュームに実施する(S205)。このとき、ライト命令実行部132は、上述したように、共通OSイメージボリュームをマスタとする各バージョンOSボリュームが有する保持データ管理テーブル173の、該当するページのフラグに「1」を設定する。そして、ライト命令実行部132は、ホスト200にレスポンスを返却する(S206)。   When the flag of the volume update permission / refusal table 172 is “0” (No in S204), the write command execution unit 132 performs the write process to the master volume in the normal snapshot technology on the common OS image volume (S205). ). At this time, as described above, the write command execution unit 132 sets “1” to the flag of the corresponding page in the retained data management table 173 included in each version OS volume having the common OS image volume as a master. Then, the write command execution unit 132 returns a response to the host 200 (S206).

一方、S203において、ライト命令は共通OSイメージボリュームではなく(S203においてNo)、各バージョンOSボリュームに対するものである場合(S208においてYes)、ライト命令実行部132は、ライト命令をリジェクトし、ホスト200にリジェクトを返却する(S207)。   On the other hand, in S203, when the write command is not for the common OS image volume (No in S203) but for each version OS volume (Yes in S208), the write command execution unit 132 rejects the write command, and the host 200 The reject is returned to (S207).

S208においてライト命令は各バージョンOSボリュームではなくユーザボリュームに対するものである場合、ライト命令実行部132は、通常のスナップショット技術におけるスナップショットボリュームへのライト処理を、ユーザボリュームに実施する(S209)。このとき、ライト命令実行部132は、ライト処理を実施したユーザボリュームが有する保持データ管理テーブル173の、該当するページのフラグに「1」を設定する。そして、ライト命令実行部132は、ホスト200にレスポンスを返却する(S210)。   If the write command is not for each version OS volume but for the user volume in S208, the write command execution unit 132 performs a write process to the snapshot volume in the normal snapshot technology for the user volume (S209). At this time, the write command execution unit 132 sets “1” to the flag of the corresponding page of the retained data management table 173 of the user volume that has performed the write process. Then, the write command execution unit 132 returns a response to the host 200 (S210).

次に、S202において、I/Oコマンド取得部131がリード命令を受信した場合の動作について、図12を参照して説明する。   Next, an operation when the I / O command acquisition unit 131 receives a read command in S202 will be described with reference to FIG.

I/Oコマンド取得部131は、リード命令を受信した場合、そのリード命令をリード命令実行部133に渡す。リード命令実行部133は、リード命令の種別を判断し、リード命令が共通OSイメージボリュームへのリード命令である場合(S301においてYes)、通常のスナップショット技術におけるマスタボリュームへのリード処理を、共通OSイメージボリュームに実施する(S302)。   When receiving the read command, the I / O command acquisition unit 131 passes the read command to the read command execution unit 133. The read command execution unit 133 determines the type of the read command, and when the read command is a read command to the common OS image volume (Yes in S301), the read processing to the master volume in the normal snapshot technology is shared. The process is performed on the OS image volume (S302).

リード命令が各バージョンOSボリュームへのリード命令である場合(S303においてYes)、リード命令実行部133は、通常のスナップショット技術におけるスナップショットボリュームへのリード処理を、各バージョンOSボリュームに実施する(S304)。   When the read command is a read command to each version OS volume (Yes in S303), the read command execution unit 133 performs the read processing to the snapshot volume in the normal snapshot technology on each version OS volume ( S304).

リード命令がユーザボリュームへのリード命令である場合(S303においてNo)、リード命令実行部133は、ユーザボリュームにデータがあるか否かを調べる。ここで、図13を参照して、ユーザボリュームへのリード命令に対する動作について説明する。   If the read command is a read command to the user volume (No in S303), the read command execution unit 133 checks whether there is data in the user volume. Here, with reference to FIG. 13, an operation in response to a read command to the user volume will be described.

ユーザボリューム2の(D0)データにリード命令(リードi)がなされたと仮定する。このとき、リード命令実行部133は、ユーザボリューム2の(D0)の保持データ管理テーブル173における該当アドレスのフラグを読む。フラグが「1」である場合はユーザボリューム2にデータがあるので(S305においてYes)、リード命令実行部133は、ユーザボリューム2の該当するアドレスをリードする(S306)。   Assume that a read command (read i) is made to the (D0) data of the user volume 2. At this time, the read command execution unit 133 reads the flag of the corresponding address in the retained data management table 173 of (D0) of the user volume 2. If the flag is “1”, since there is data in the user volume 2 (Yes in S305), the read command execution unit 133 reads the corresponding address of the user volume 2 (S306).

一方、上記フラグが「0」の場合、リード命令実行部133は、ユーザボリューム2のマスタである第1世代各バージョンOSボリュームに保持される上位世代差分管理テーブル174の該当アドレスを調べる(図13において「j」で示す)。この該当アドレスのフラグが「0」のとき(S307においてYes)、第1世代および上位世代の各バージョンOSボリュームにはデータがないことが判る。したがって、リード命令実行部133は、マスタである共通OSイメージボリュームからデータをリードする(図13の「k」に示す)(S308)。   On the other hand, when the flag is “0”, the read instruction execution unit 133 checks the corresponding address in the upper generation difference management table 174 held in the first generation version OS volume that is the master of the user volume 2 (FIG. 13). Indicated by “j” in FIG. When the flag of the corresponding address is “0” (Yes in S307), it can be seen that there is no data in the first generation and higher generation version OS volumes. Therefore, the read instruction execution unit 133 reads data from the common OS image volume as a master (indicated by “k” in FIG. 13) (S308).

上記該当アドレスのフラグが「1」のとき(S307においてNo)、リード命令実行部133は、ユーザボリューム2のマスタである各バージョンOSボリュームに保持される保持データ管理テーブル173の該当アドレスを調べる(S309乃至S311)。フラグが「1」のとき(S311においてYes)、リード命令実行部133は、当該各バージョンOSボリュームからデータをリードする(S312)。   When the flag of the corresponding address is “1” (No in S307), the read command execution unit 133 checks the corresponding address in the retained data management table 173 held in each version OS volume that is the master of the user volume 2 ( S309 to S311). When the flag is “1” (Yes in S311), the read instruction execution unit 133 reads data from each version OS volume (S312).

フラグが「0」のとき(S311においてNo)、リード命令実行部133は、1つ上位世代の各バージョンOSボリュームの保持データ管理テーブル173の該当アドレスを調べ、フラグが「1」のときは当該各バージョンOSボリュームからデータをリードする。フラグが「0」のときは、リード命令実行部133は、更に上位世代の各バージョンOSボリュームの保持データ管理テーブル173の該当アドレスを調べる。このように、リード命令実行部133は、データを保有するボリュームが見つかるまで上位世代の保持データ管理テーブル173の調査を繰り返し、データが存在する各バージョンOSボリュームからデータをリードする。   When the flag is “0” (No in S311), the read instruction execution unit 133 checks the corresponding address in the retained data management table 173 of each version OS volume of the one higher generation, and when the flag is “1” Read data from each version OS volume. When the flag is “0”, the read instruction execution unit 133 checks the corresponding address in the retained data management table 173 of each version OS volume of the higher generation. In this way, the read instruction execution unit 133 repeats the investigation of the retained data management table 173 of the higher generation until a volume that holds data is found, and reads data from each version OS volume where the data exists.

上位世代すべての各バージョンOSボリュームにデータが存在しないとき、リード命令実行部133は、共通OSイメージボリュームからデータをリードする(S308)。以上の手順でリード処理が完了すると、I/O処理部130は、ホスト200にリードしたデータを返却する(S313)。   When there is no data in each version OS volume of all higher generations, the read command execution unit 133 reads data from the common OS image volume (S308). When the read process is completed by the above procedure, the I / O processing unit 130 returns the read data to the host 200 (S313).

以上のように、本実施形態によれば、ディスクアレイサブシステム100のライト命令実行部132は、共通OSイメージボリュームへのライト処理を実行する。ライト命令実行部132は、ライト処理が完了すると、更新したボリュームをマスタとするすべての各バージョンOSボリュームについて、自ボリュームまたは上位世代のボリュームのデータ有無を示す上位世代差分管理テーブル174を生成する。   As described above, according to this embodiment, the write command execution unit 132 of the disk array subsystem 100 executes a write process to the common OS image volume. When the write process is completed, the write command execution unit 132 generates an upper generation difference management table 174 indicating the presence / absence of data in the own volume or higher generation volume for each version OS volume whose master is the updated volume.

リード命令実行部133は、ユーザボリュームへのリード命令に対して、ユーザボリュームにデータがない場合、上位階層の各バージョンOSボリュームの上位世代差分管理テーブル174を調べる。上位世代差分管理テーブル174に基づいてこの階層の各バージョンOSボリュームにデータがないことが判ると、リード命令実行部133は、共通OSイメージボリュームからデータをリードする。   When there is no data in the user volume in response to a read instruction to the user volume, the read instruction execution unit 133 checks the upper generation difference management table 174 of each version OS volume in the upper hierarchy. If it is found that there is no data in each version OS volume of this hierarchy based on the upper generation difference management table 174, the read command execution unit 133 reads data from the common OS image volume.

上記構成を採用することにより、本第1の実施形態によれば、ユーザボリュームにデータがない場合、リード命令実行部133は、マスタとなる階層のボリュームのデータの有無を、上位世代差分管理テーブル174を1回検索するのみで判別できる。したがって、共通OSイメージボリューム増加に伴うディスク消費量の増加を招くことなく、ユーザボリュームへのアクセス時間を短縮できるという効果が得られる。   By adopting the above configuration, according to the first embodiment, when there is no data in the user volume, the read command execution unit 133 determines whether or not there is data in the volume of the master tier, by using the higher generation difference management table. It can be determined by searching 174 once. Therefore, the access time to the user volume can be shortened without causing an increase in disk consumption accompanying the increase in the common OS image volume.

第2の実施形態
次に、上述した第1の実施形態を基礎とする第2の実施形態について説明する。上記第1の実施形態では、図6に示したように、共通OSイメージボリューム、各バージョンOSボリュームおよびユーザボリュームの3階層ボリュームを配置するディスクアレイサブシステムを示したが、これに限定されず、本第2の実施形態では、ボリューム構成の異なる例について説明する。
Second Embodiment Next, a second embodiment based on the above-described first embodiment will be described. In the first embodiment, as shown in FIG. 6, the disk array subsystem in which the common OS image volume, each version OS volume, and the user volume three-tier volume is arranged is shown, but the present invention is not limited to this. In the second embodiment, examples of different volume configurations will be described.

図14は、第2の実施形態に係るディスクアレイサブシステム100が備えるボリュームの構成を示す図である。図14では、マスタボリュームから、階層1(第1の階層)の第1世代、第2世代、第3世代のスナップショットボリュームが作成されたことを示す。さらに、階層1の第3世代のスナップショットボリュームをマスタとする階層2(第2の階層)の第1世代、第2世代のスナップショットボリュームが作成されている。さらに、階層2の第2世代のスナップショットボリュームをマスタとする階層3のスナップショットボリュームが作成されている。   FIG. 14 is a diagram showing a configuration of a volume included in the disk array subsystem 100 according to the second embodiment. FIG. 14 shows that the first generation, second generation, and third generation snapshot volumes of the tier 1 (first tier) are created from the master volume. Furthermore, first and second generation snapshot volumes of Tier 2 (second tier) are created with the third generation snapshot volume of Tier 1 as the master. Further, a tier 3 snapshot volume is created with the tier 2 second generation snapshot volume as the master.

このような、複数階層を成すボリューム構成において、ディスクアレイサブシステム100は、下位階層のスナップショットを持つスナップショットボリュームに、上記第1の実施形態において説明した上位世代差分管理テーブル174を配置する。下位階層のスナップショットを持つスナップショットボリュームは、図14の構成では、階層1と階層2のスナップショットボリュームである。   In such a volume configuration having a plurality of hierarchies, the disk array subsystem 100 arranges the upper generation difference management table 174 described in the first embodiment in a snapshot volume having a lower hierarchy snapshot. In the configuration shown in FIG. 14, the snapshot volumes having snapshots in the lower hierarchy are the snapshot volumes in hierarchy 1 and hierarchy 2.

図14に示すようなボリューム構成における最下位階層のボリュームに、リード命令がなされた場合の動作について説明する。このリード命令に応じたリード処理は、第1の実施形態において説明したリード命令実行部133により実行される。   The operation when a read command is issued to the volume of the lowest hierarchy in the volume configuration as shown in FIG. The read process corresponding to the read command is executed by the read command execution unit 133 described in the first embodiment.

図14に示す階層3のスナップショットボリュームのデータC0にリード命令(リードm)がなされたと仮定する。この場合、第1の実施形態において説明したように、リード命令実行部133は、階層3のスナップショットボリュームのマスタボリュームの上位世代差分管理テーブル174を参照する。上位世代差分管理テーブル174の該当するアドレスのフラグが「0」であるので、リード命令実行部133は、データC0は階層1のマスタボリュームに存在すると判る。   Assume that a read command (read m) is made to the data C0 of the snapshot volume 3 in the hierarchy 3 shown in FIG. In this case, as described in the first embodiment, the read instruction execution unit 133 refers to the upper generation difference management table 174 of the master volume of the snapshot volume of the tier 3. Since the flag of the corresponding address in the upper generation difference management table 174 is “0”, the read instruction execution unit 133 knows that the data C0 exists in the master volume of the hierarchy 1.

ここで、階層1、階層2のボリュームが上位世代差分管理テーブル174を持たないと仮定した場合、リード命令実行部133は、以下のように動作する。すなわち、リード命令実行部133は、階層3のスナップショットボリュームにデータが存在しないことが判ると、階層2の第1世代のスナップショットボリュームの保持データ管理テーブル173を調べる。続いて、リード命令実行部133は、データが存在するまで、階層2の第2世代→階層1の第1世代→階層1の第2世代→階層1の第3世代の、各スナップショットボリュームの保持データ管理テーブル173をすべて調べる。   Here, when it is assumed that the volumes of the tier 1 and the tier 2 do not have the upper generation difference management table 174, the read instruction execution unit 133 operates as follows. That is, when it is determined that no data exists in the snapshot volume of the tier 3, the read instruction execution unit 133 checks the retained data management table 173 of the first generation snapshot volume of the tier 2. Subsequently, until the data exists, the read instruction execution unit 133 stores each snapshot volume of the second generation of the hierarchy 2 → the first generation of the hierarchy 1 → the second generation of the hierarchy 1 → the third generation of the hierarchy 1. All the held data management tables 173 are examined.

このように、スナップショットボリュームが上位世代差分管理テーブル174を持たない場合、下位階層のスナップショットボリュームへのアクセスに際し、複数の保持データ管理テーブル173を検索する必要が生じるので、アクセス時間が遅延する。   As described above, when the snapshot volume does not have the upper generation difference management table 174, the access time is delayed because it is necessary to search the plurality of retained data management tables 173 when accessing the lower-level snapshot volume. .

これに対して、本実施形態では、リード命令実行部133は、階層2第1世代スナップショットボリュームの上位世代差分管理テーブル174を調べ、該当するページのフラグが「0」である場合、階層2のボリュームにはデータが存在しないことが判る。したがって、リード命令実行部133は、上位階層、すなわち、階層1の第1世代スナップショットボリュームの上位世代差分管理テーブル174を調べる。ここでも上位世代差分管理テーブル174の該当するページのフラグが「0」であるので、リード命令実行部133は、上位階層、すなわちマスタボリュームにデータが存在すると判る。   In contrast, in this embodiment, the read instruction execution unit 133 checks the upper generation difference management table 174 of the tier 2 first generation snapshot volume, and if the flag of the corresponding page is “0”, the tier 2 It can be seen that there is no data in the volume. Therefore, the read instruction execution unit 133 checks the upper generation difference management table 174 of the upper tier, that is, the first generation snapshot volume of the tier 1. Also here, since the flag of the corresponding page of the upper generation difference management table 174 is “0”, the read instruction execution unit 133 knows that the data exists in the upper hierarchy, that is, the master volume.

以上のように、本第2の実施形態によれば、ボリューム構成が第1の実施形態において示したような3階層の構成に限らず、複数階層に亘って生成されるスナップショットボリュームを有する構成においても、第1の実施形態と同様に、最下位層へのアクセス時間を短縮できるという効果が得られる。   As described above, according to the second embodiment, the volume configuration is not limited to the three-layer configuration as shown in the first embodiment, but has a snapshot volume generated over a plurality of layers. As in the first embodiment, the access time to the lowest layer can be shortened.

第3の実施形態
図15は、本発明の第3の実施形態に係るデータ管理装置400の構成を示すブロック図である。図15に示すように、データ管理装置400は、更新部410と、アクセス部420とを備える。
Third Embodiment FIG. 15 is a block diagram showing a configuration of a data management apparatus 400 according to a third embodiment of the present invention. As shown in FIG. 15, the data management device 400 includes an update unit 410 and an access unit 420.

データ管理装置400は、元データの更新に伴って、当該元データを複製データ記憶領域に格納する。更新部410は、元データの更新に伴って連続した世代として保持される第1の階層の複製データ記憶領域に、元データを差分データとして格納すると共に、自世代および上位世代の複製データ記憶領域におけるデータ有無状況を示す差分管理テーブルを複製データ記憶領域に関連付けて生成する。   As the original data is updated, the data management device 400 stores the original data in the duplicate data storage area. The update unit 410 stores the original data as differential data in the first-tier replicated data storage area that is retained as successive generations as the original data is updated, and also includes the self-generation and higher-generation replicated data storage areas. A difference management table indicating the data presence / absence status is generated in association with the duplicate data storage area.

アクセス部420は、複製データ記憶領域へのアクセスに応じて、差分管理テーブルに示されるデータ有無状況に基づいてアクセスを行う。   The access unit 420 performs access based on the data presence / absence status indicated in the difference management table in response to access to the replicated data storage area.

なお、データ管理装置400は、上記第1の実施形態におけるディスクアレイサブシステムに相当し、更新部410は、同じくライト命令実行部132に相当し、アクセス部420は、同じくリード命令実行部133に相当する。   The data management device 400 corresponds to the disk array subsystem in the first embodiment, the update unit 410 also corresponds to the write command execution unit 132, and the access unit 420 similarly to the read command execution unit 133. Equivalent to.

上記構成を採用することにより、本第3の実施形態によれば、所定の階層の複製データ記憶領域のデータ有無状況を、差分管理テーブルに基づいて検索できるので、下位階層の複製データ記憶領域へのアクセス時間を短縮することができるという効果が得られる。   By adopting the above configuration, according to the third embodiment, the data presence / absence status of the replicated data storage area of the predetermined hierarchy can be searched based on the difference management table. The access time can be shortened.

なお、図1に示したディスクアレイサブシステム100の各部は、図16に例示するハードウエア資源において実現される。すなわち、図16に示す構成は、プロセッサ10、RAM(Random Access Memory)11、ROM(Read Only Memory)12、I/O(Input/Output)デバイス13、ストレージ14および各構成要素を接続するバス15を備える。   Each part of the disk array subsystem 100 shown in FIG. 1 is realized by the hardware resources illustrated in FIG. That is, the configuration shown in FIG. 16 includes a processor 10, a RAM (Random Access Memory) 11, a ROM (Read Only Memory) 12, an I / O (Input / Output) device 13, a storage 14, and a bus 15 for connecting each component. Is provided.

上述した各実施形態では、図16に示すプロセッサ10が実行する一例として、ディスクアレイサブシステム100に対して、上述した機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、プロセッサ10がRAM11に読み出して実行することによって実現する場合について説明した。しかしながら、図1に示した各ブロックに示す機能は、一部または全部を、ハードウエアとして実現してもよい。   In each of the above-described embodiments, as an example executed by the processor 10 shown in FIG. 16, after supplying a computer program capable of realizing the above-described functions to the disk array subsystem 100, the computer program is stored in the processor. A case has been described in which 10 is realized by reading out to the RAM 11 and executing it. However, some or all of the functions shown in each block shown in FIG. 1 may be realized as hardware.

係る供給されたコンピュータ・プログラムは、読み書き可能なメモリ(一時記憶媒体)またはハードディスク装置等のコンピュータ読み取り可能な記憶デバイスに格納すればよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムを表すコード或いは係るコンピュータ・プログラムを格納した記憶媒体によって構成されると捉えることができる。   The supplied computer program may be stored in a computer-readable storage device such as a readable / writable memory (temporary storage medium) or a hard disk device. In such a case, the present invention can be understood as being configured by a code representing the computer program or a storage medium storing the computer program.

10 プロセッサ
11 RAM
12 ROM
13 I/Oデバイス
14 ストレージ
15 バス
100 ディスクアレイサブシステム
110 ボリューム管理部
111 ボリューム管理コマンド取得部
112 スナップショット実行部
113 OS更新抑止部
114 OS更新許可部
130 I/O処理部
131 I/Oコマンド取得部
132 ライト命令実行部
133 リード命令実行部
150 ボリューム群
151 共通OSイメージボリューム
152 バージョンOSボリューム
153 ユーザボリューム
154 プールボリューム
170 テーブル記憶部
171 ボリューム対応テーブル
172 ボリューム更新許否テーブル
173 保持データ管理テーブル
174 上位世代差分管理テーブル
200 ホスト
10 processor 11 RAM
12 ROM
13 I / O device 14 Storage 15 Bus 100 Disk array subsystem 110 Volume management unit 111 Volume management command acquisition unit 112 Snapshot execution unit 113 OS update inhibition unit 114 OS update permission unit 130 I / O processing unit 131 I / O command Acquisition unit 132 Write command execution unit 133 Read command execution unit 150 Volume group 151 Common OS image volume 152 Version OS volume 153 User volume 154 Pool volume 170 Table storage unit 171 Volume correspondence table 172 Volume update permission table 173 Holding data management table 174 Generation difference management table 200 host

Claims (10)

元データの更新に伴って、当該元データを複製データ記憶領域に格納するデータ管理装置において、
前記元データの更新に伴って連続した世代として保持される第1の階層の前記複製データ記憶領域に、前記元データを差分データとして格納すると共に、自世代および上位世代の前記複製データ記憶領域におけるデータ有無状況を示す差分管理テーブルを前記複製データ記憶領域に関連付けて生成する更新手段と、
前記複製データ記憶領域へのアクセスに応じて、前記差分管理テーブルに示されるデータ有無状況に基づいてアクセスを行うアクセス手段と
を備えたデータ管理装置。
Along with the update of the original data, in the data management device that stores the original data in the duplicate data storage area,
The original data is stored as difference data in the replicated data storage area of the first tier that is retained as successive generations with the update of the original data, and in the replicated data storage areas of its own generation and higher generations Update means for generating a difference management table indicating the presence / absence of data in association with the replicated data storage area;
A data management apparatus comprising: access means for performing access based on the data presence / absence status indicated in the difference management table in response to access to the duplicate data storage area.
前記更新手段は、前記差分管理テーブルが関連付けられた前記複製データ記憶領域に格納される前記差分データの更新に伴って連続した世代として保持される第2以降の階層の前記複製データ記憶領域に、前記差分データを格納し、
前記アクセス手段は、所定の階層の前記複製データ記憶領域に関連付けられた前記差分管理テーブルに示されるデータ有無状況に基づいて、当該階層の前記複製データ記憶領域に前記アクセスの対象となるデータがないと判定した場合、当該階層よりも上位の階層の前記複製データ記憶領域に関連付けられた前記差分管理テーブルを検索する
請求項1記載のデータ管理装置。
The update unit is configured to store the difference data stored in the duplicate data storage area associated with the difference management table in the duplicate data storage area in the second and subsequent hierarchies held as successive generations with the update of the difference data. Storing the difference data;
The access means has no data to be accessed in the duplicate data storage area of the hierarchy based on the data presence / absence situation indicated in the difference management table associated with the duplicate data storage area of a predetermined hierarchy The data management device according to claim 1, wherein when the determination is made, the difference management table associated with the replicated data storage area in a hierarchy higher than the hierarchy is searched.
前記アクセス手段は、所定の階層の前記複製データ記憶領域に関連付けられた前記差分管理テーブルに示されるデータ有無状況に基づいて、当該階層の前記複製データ記憶領域に前記アクセスの対象となるデータがあると判定した場合、当該階層のいずれかの前記複製データ記憶領域に保持される前記データにアクセスする
請求項2記載のデータ管理装置。
The access means has the data to be accessed in the duplicate data storage area of the hierarchy based on the data presence / absence situation indicated in the difference management table associated with the duplicate data storage area of a predetermined hierarchy The data management device according to claim 2, wherein, when it is determined, the data held in any one of the duplicate data storage areas of the hierarchy is accessed.
前記アクセス手段は、前記差分管理テーブルに基づいて、すべての階層の前記複製データ記憶領域に前記アクセスの対象となるデータがないと判定した場合、前記元データにアクセスを行う
請求項2または請求項3記載のデータ管理装置。
The access means accesses the original data when it is determined that there is no data to be accessed in the replicated data storage area of all layers based on the difference management table. 3. The data management device according to 3.
前記更新手段は、自世代および上位世代の少なくともいずれかの前記複製データ記憶領域に前記差分データがある場合、当該差分データがあるアドレスに対応する前記差分管理テーブルのフラグをセットする
請求項1ないし4のいずれか1項記載のデータ管理装置。
The update means sets a flag of the difference management table corresponding to an address where the differential data exists when the differential data exists in at least one of the replicated data storage areas of its own generation and upper generation. 5. The data management device according to any one of 4.
元データの更新に伴って、当該元データを複製データ記憶領域に格納するデータ管理方法において、
前記元データの更新に伴って連続した世代として保持される第1の階層の前記複製データ記憶領域に、前記元データを差分データとして格納すると共に、自世代および上位世代の前記複製データ記憶領域におけるデータ有無状況を示す差分管理テーブルを前記複製データ記憶領域に関連付けて生成し、
前記複製データ記憶領域へのアクセスに応じて、前記差分管理テーブルに示されるデータ有無状況に基づいてアクセスを行う
データ管理方法。
In the data management method for storing the original data in the replicated data storage area along with the update of the original data,
The original data is stored as difference data in the replicated data storage area of the first tier that is retained as successive generations with the update of the original data, and in the replicated data storage areas of its own generation and higher generations A difference management table indicating data presence / absence status is generated in association with the duplicate data storage area,
A data management method for performing access based on a data presence / absence situation indicated in the difference management table in response to access to the duplicate data storage area.
前記元データを差分データとして格納するに際し、前記差分管理テーブルが関連付けられた前記複製データ記憶領域に格納される前記差分データの更新に伴って連続した世代として保持される第2以降の階層の前記複製データ記憶領域に、前記差分データを格納し、
前記アクセスを行うに際し、所定の階層の前記複製データ記憶領域に関連付けられた前記差分管理テーブルに示されるデータ有無状況に基づいて、当該階層の前記複製データ記憶領域に前記アクセスの対象となるデータがないと判定した場合、当該階層よりも上位の階層の前記複製データ記憶領域に関連付けられた前記差分管理テーブルを検索する
請求項6記載のデータ管理方法。
When storing the original data as differential data, the second and subsequent hierarchies held as successive generations as the differential data stored in the duplicate data storage area associated with the differential management table is updated. Storing the difference data in a replicated data storage area;
When performing the access, based on the data presence / absence situation indicated in the difference management table associated with the replicated data storage area of a predetermined hierarchy, the access target data is stored in the replicated data storage area of the hierarchy. The data management method according to claim 6, wherein if it is determined that there is no data, the difference management table associated with the replicated data storage area in a higher hierarchy than the hierarchy is searched.
前記アクセスを行うに際し、所定の階層の前記複製データ記憶領域に関連付けられた前記差分管理テーブルに示されるデータ有無状況に基づいて、当該階層の前記複製データ記憶領域に前記アクセスの対象となるデータがあると判定した場合、当該階層のいずれかの前記複製データ記憶領域に保持される前記データにアクセスする
請求項7記載のデータ管理方法。
When performing the access, based on the data presence / absence situation indicated in the difference management table associated with the replicated data storage area of a predetermined hierarchy, the access target data is stored in the replicated data storage area of the hierarchy. The data management method according to claim 7, wherein when it is determined that the data is present, the data held in any one of the duplicate data storage areas of the hierarchy is accessed.
前記アクセスを行うに際し、前記差分管理テーブルに基づいて、すべての階層の前記複製データ記憶領域に前記アクセスの対象となるデータがないと判定した場合、前記元データにアクセスを行う
請求項7または請求項8記載のデータ管理方法。
8. When performing the access, if it is determined that there is no data to be accessed in the replicated data storage area of all layers based on the difference management table, the original data is accessed. Item 9. The data management method according to Item 8.
元データの更新に伴って、当該元データを複製データ記憶領域に格納するデータ管理装置に、
前記元データの更新に伴って連続した世代として保持される第1の階層の前記複製データ記憶領域に、前記元データを差分データとして格納すると共に、自世代および上位世代の前記複製データ記憶領域におけるデータ有無状況を示す差分管理テーブルを前記複製データ記憶領域に関連付けて生成する処理と、
前記複製データ記憶領域へのアクセスに応じて、前記差分管理テーブルに示されるデータ有無状況に基づいてアクセスを行う処理と
を実行させるデータ管理プログラム。
Along with the update of the original data, the data management device that stores the original data in the replicated data storage area,
The original data is stored as difference data in the replicated data storage area of the first tier that is retained as successive generations with the update of the original data, and in the replicated data storage areas of its own generation and higher generations A process for generating a difference management table indicating data presence / absence conditions in association with the duplicate data storage area;
A data management program that executes a process of performing an access based on a data presence / absence situation indicated in the difference management table in response to an access to the duplicate data storage area.
JP2015055670A 2015-03-19 2015-03-19 Data management apparatus, data management method, and data management program Active JP6202026B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015055670A JP6202026B2 (en) 2015-03-19 2015-03-19 Data management apparatus, data management method, and data management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015055670A JP6202026B2 (en) 2015-03-19 2015-03-19 Data management apparatus, data management method, and data management program

Publications (2)

Publication Number Publication Date
JP2016177407A true JP2016177407A (en) 2016-10-06
JP6202026B2 JP6202026B2 (en) 2017-09-27

Family

ID=57071287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015055670A Active JP6202026B2 (en) 2015-03-19 2015-03-19 Data management apparatus, data management method, and data management program

Country Status (1)

Country Link
JP (1) JP6202026B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7516286B1 (en) * 2005-08-31 2009-04-07 Symantec Operating Corporation Conversion between full-data and space-saving snapshots
US20090157990A1 (en) * 2007-12-14 2009-06-18 Fujitsu Limited Backing-up apparatus, backing-up method, and backing-up program
US20100023716A1 (en) * 2008-07-23 2010-01-28 Jun Nemoto Storage controller and storage control method
US20130262804A1 (en) * 2012-03-30 2013-10-03 Nec Corporation Data duplication system, data duplication method, and program thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7516286B1 (en) * 2005-08-31 2009-04-07 Symantec Operating Corporation Conversion between full-data and space-saving snapshots
US20090157990A1 (en) * 2007-12-14 2009-06-18 Fujitsu Limited Backing-up apparatus, backing-up method, and backing-up program
JP2009146228A (en) * 2007-12-14 2009-07-02 Fujitsu Ltd Backing-up apparatus, backing-up method, and backing-up program
US20100023716A1 (en) * 2008-07-23 2010-01-28 Jun Nemoto Storage controller and storage control method
JP2010026939A (en) * 2008-07-23 2010-02-04 Hitachi Ltd Storage control device and method
US20130262804A1 (en) * 2012-03-30 2013-10-03 Nec Corporation Data duplication system, data duplication method, and program thereof
JP2013210704A (en) * 2012-03-30 2013-10-10 Nec Corp Data duplication system, data duplication method, and program therefor

Also Published As

Publication number Publication date
JP6202026B2 (en) 2017-09-27

Similar Documents

Publication Publication Date Title
US20230117542A1 (en) Remote Data Replication Method and System
US11487787B2 (en) System and method for near-synchronous replication for object store
US10983955B2 (en) Data unit cloning in memory-based file systems
JP6629407B2 (en) Method and system for accessing updated files and software products
CN105408895A (en) Latch-free, log-structured storage for multiple access methods
US10146696B1 (en) Data storage system with cluster virtual memory on non-cache-coherent cluster interconnect
CN105593829B (en) Method, system and the medium of file system object are excluded from original image backup
US20190087130A1 (en) Key-value storage device supporting snapshot function and operating method thereof
CN104021145A (en) Mixed service concurrent access method and device
JP2006268139A (en) Data reproduction device, method and program and storing system
CN109690522B (en) Data updating method and device based on B+ tree index and storage device
US11960442B2 (en) Storing a point in time coherently for a distributed storage system
CN109271376A (en) Database upgrade method, apparatus, equipment and storage medium
WO2016119597A1 (en) Page querying method and data processing node in oltp cluster database
WO2016192057A1 (en) Updating method and device for index table
JP6033420B2 (en) Storage system and storage system control method
EP3291103B1 (en) System and method for creating a snapshot of a subset of a database
US9235349B2 (en) Data duplication system, data duplication method, and program thereof
CN116069685A (en) Storage system write control method, device, equipment and readable storage medium
JP6202026B2 (en) Data management apparatus, data management method, and data management program
WO2015162717A1 (en) Computer
JP6788386B2 (en) File access provision methods, computers, and software products
JP6627541B2 (en) Volume management device, volume management method, and volume management program
CN113590309B (en) Data processing method, device, equipment and storage medium
US11531474B1 (en) Storage system and data replication method in storage system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160715

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170530

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170719

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: 20170801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170814

R150 Certificate of patent or registration of utility model

Ref document number: 6202026

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150