JP5688676B2 - Storage device and method for improving use efficiency of storage resource of storage device - Google Patents
Storage device and method for improving use efficiency of storage resource of storage device Download PDFInfo
- Publication number
- JP5688676B2 JP5688676B2 JP2010198867A JP2010198867A JP5688676B2 JP 5688676 B2 JP5688676 B2 JP 5688676B2 JP 2010198867 A JP2010198867 A JP 2010198867A JP 2010198867 A JP2010198867 A JP 2010198867A JP 5688676 B2 JP5688676 B2 JP 5688676B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- storage area
- area
- management unit
- specific value
- 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.)
- Active
Links
Images
Description
本発明は、ストレージ装置及びストレージ装置の記憶資源の使用効率向上方法に関する。 The present invention relates to a storage apparatus and a method for improving the use efficiency of storage resources of the storage apparatus.
ストレージ装置において、シン・プロビジョニング機能を用いて記憶資源を有効に活用する技術が知られている。シン・プロビジョニング機能は、アプリケーションやサーバに割り当てられている記憶容量を、実際に割り当てられている物理ストレージのディスク容量よりも多く使えるように見せる技術である。 A technology for effectively utilizing storage resources using a thin provisioning function in a storage apparatus is known. The thin provisioning function is a technology that makes it possible to use more storage capacity allocated to applications and servers than the disk capacity of physical storage that is actually allocated.
また、複数のネットワークストレージを仮想的に一元化する方法で、アクセスする対象のオブジェクトの論理的な識別子から生成されるハッシュ値に基づきオブジェクトを格納するネットワークストレージを決定し、オブジェクトのアクセス時にオブジェクトの論理的な識別子のハッシュ値を計算することで、アクセス要求を処理すべきネットワークストレージを決定する方法が知られている。この方法によると、オブジェクトの格納位置の情報を管理サーバに問い合わせることなく取得することができる(例えば、特許文献1参照)。 In addition, a method of virtually unifying a plurality of network storages determines the network storage for storing objects based on the hash value generated from the logical identifier of the object to be accessed, and the object logical There is known a method for determining a network storage to process an access request by calculating a hash value of a typical identifier. According to this method, information on the storage position of the object can be acquired without inquiring of the management server (see, for example, Patent Document 1).
シン・プロビジョニング機能を使用することによって、ストレージ装置は、実際の記憶容量より多くの容量をアプリケーションやサーバに使えるように見せることができる。しかしながら、シン・プロビジョニング機能では、未割当てのブロックへデータの書き込みがあった場合、データを当該ブロックに常に割り付けるように構成されている。よって、ストレージ装置は、書き込みがあったデータと同じデータがいずれかの領域に存在していても必ずデータをブロックに割り付ける処理を行う。従って、シン・プロビジョニング機能を有するストレージ装置であっても、使用効率という点においては、まだ改善の余地がある。 By using the thin provisioning function, the storage apparatus can appear to be able to use more capacity than the actual storage capacity for applications and servers. However, the thin provisioning function is configured such that when data is written to an unallocated block, the data is always allocated to the block. Therefore, the storage apparatus always performs a process of assigning data to blocks even if the same data as the written data exists in any area. Therefore, even a storage apparatus having a thin provisioning function still has room for improvement in terms of usage efficiency.
また、上記特許文献1に記載の技術は、ストレージ装置の記憶資源の使用効率を向上させるものではない。
Further, the technique described in
本発明は、上記事情に鑑みてなされたものであり、その目的は、記憶資源の使用効率を向上させることができるストレージ装置及びストレージ装置の記憶資源の使用効率向上方法を提供することにある。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a storage apparatus that can improve the use efficiency of storage resources and a method for improving the use efficiency of storage resources of the storage apparatus.
本発明は、仮想ディスクを用いてデータを管理するストレージ装置であって、データを格納する格納領域と、データの仮想ディスク上の領域とデータに基づいて算出される特定値とを関連付けて管理する第1の管理部と、格納領域に格納されるデータの領域と特定値とを関連付けて管理する第2の管理部と、上位装置から仮想ディスク上の領域を指定したライトデータを受信した場合、当該ライトデータに基づいて第1の管理部で管理される特定値を算出し、当該算出した特定値と一致する特定値が第2の管理部で管理されているか否かを判断し、管理されていると判断した場合、一致する特定値を用いて第1の管理部で管理される仮想ディスクの領域と第2の管理部で管理されるデータの領域とを関連付け、格納領域へのライトデータの格納処理を回避する処理部と、を備えることを特徴とする。 The present invention is a storage device that manages data using a virtual disk, and manages a storage area for storing data, an area on the virtual disk of data, and a specific value calculated based on the data in association with each other When the first management unit, the second management unit that manages the data area stored in the storage area in association with the specific value, and the write data designating the area on the virtual disk from the higher-level device are received, A specific value managed by the first management unit is calculated based on the write data, and it is determined whether or not a specific value that matches the calculated specific value is managed by the second management unit. If it is determined that the virtual disk area managed by the first management unit is associated with the data area managed by the second management unit using the matching specific value, the write data to the storage area Case A processing unit to avoid processing, characterized in that it comprises a.
本発明によると、記憶資源の使用効率を向上させることができるストレージ装置及びストレージ装置の記憶資源の使用効率向上方法を提供できる。 According to the present invention, it is possible to provide a storage apparatus that can improve the use efficiency of storage resources, and a method for improving the use efficiency of storage resources of the storage apparatus.
以下、本発明の各実施の形態について図面を参照しながら説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(第1の実施の形態)
図1は、ストレージ装置10の構成を示す図である。同図に示すように、ストレージ装置10は、コントローラ部100と、実データ格納領域200とを有している。コントローラ部100は、実データ格納領域200へのデータの格納を制御する。実データ格納領域200は、実データを格納する領域である。なお、ストレージ装置10の他の構成については従来よりあるものと同様であるため詳細な説明は省略する。
(First embodiment)
FIG. 1 is a diagram showing a configuration of the
また、ストレージ装置10は、上位装置20と通信可能に接続されている。上位装置20は、ストレージ装置10に対してライトコマンドを送信し、又は、ストレージ装置へリードコマンドを送信する。
Further, the
次に、図2を参照してコントローラ部100について説明する。図2は、コントローラ部100の機能を説明するための図である。
Next, the
コントローラ部100は、処理部110、仮想ディスクである論理ディスク120,140、第1の管理部であるインデックステーブル130,150、及びハッシュ算出部160を有している。なお、図2においては、説明の簡略化のため論理ディスク,インデックステーブルはそれぞれ2つしか図示していない。
The
処理部110は、上位装置20からライト命令を受信した場合、より詳細には、論理ディスク120(又は140)上の領域を指定したライトデータを受信した場合、当該ライトデータを実データ格納領域200に格納する処理を行う。
When the
論理ディスク120は、仮想的に構成されたディスクである。上位装置20は論理ディスクの所定の領域に対してデータを書き込む。このように論理ディスクに対してデータが書き込まれた場合、当該ライトデータが処理部110によって処理され、当該ライトデータは、当該所定の領域と対応する実データ格納領域200の所定の領域に格納される。なお、論理ディスク140も同様な説明となるため詳細な説明は省略する。
The
インデックステーブル130は、論理ディスク120と対応して設けられるテーブルであり、論理ブロックアドレス(LBA)を保持するフィールド131と、ハッシュ算出部160で算出されるハッシュ値を保持するフィールド132とを有している。処理部110は、フィールド131に保持される論理ブロックアドレスとフィールド132に保持されるハッシュ値とを関連付けて管理する。なお、インデックステーブル150の説明は、実質的にインデックステーブル130の説明と同様になるため詳細な説明は省略する。
The index table 130 is a table provided corresponding to the
ハッシュ算出部160は、論理ディスク120(又は140)に対して上位装置20からデータ書き込まれた場合、キャッシュ(図示を省略する。)に保持された当該ライトデータに基づいて特定値であるハッシュ値を算出する。所定のデータに基づいてハッシュ値を算出する技術については、従来よりあるものと同様であるため説明は省略する。
When data is written from the higher-
次に、図3を参照して実データ格納領域200について説明する。図3は、実データ格納領域200の機能を説明するための図である。
Next, the actual
実データ格納領域200は、既述のようにデータ及び各種情報を格納する領域である。実データ格納領域200は、第2の管理部であるデータブロック情報ノード領域210と、無圧縮データ領域230と、圧縮データ領域240と、データ圧縮部250とを有している。無圧縮データ領域230及び圧縮データ領域240は、データを格納する記憶資源になっている。
The actual
データブロック情報ノード領域210は、実データ格納領域200に格納されるデータブロック毎の情報ノードを保持する領域である。情報ノード220は、ハッシュ値毎に種々の情報を含むものであり、本実施の形態においては、情報ノード220は、リンク数221、アクセス情報222、ロケーション223、及びロケーション224を有して構成される。
The data block
リンク数221は、リンクするインデックステーブルの数を示す。したがって、リンク数が“1”なら当該ハッシュ値は、1つのインデックステーブルとリンク付けられていることを示し、リンク数が“2”なら当該ハッシュ値は、2つのインデックステーブルとリンク付けられていることを示している。
The number of
アクセス情報222は、実データ格納領域200に格納されているデータブロックへアクセスした回数(例えば、所定期間内のアクセス回数、つまり、アクセス頻度)を示している。
The
ロケーション223は、実データを格納する無圧縮データ領域230の所定の領域を示すポインタである。また、ロケーション224は、圧縮されたデータを格納する圧縮データ領域240の所定の領域を示すポインタである。
The
無圧縮データ領域230は、実データを格納する領域である。圧縮データ領域240は、無圧縮データ領域230に記憶されるデータを圧縮した実データを格納する領域である。
The
データ圧縮部250は、各情報ノード220のアクセス情報222を参照し、アクセス頻度の低い情報ノード220について、ロケーション223に格納されているデータの圧縮を行い、圧縮データを生成し、この生成した圧縮データを圧縮データ領域240に格納する。この圧縮データを格納した領域を示すポインタがロケーション224に格納される。なお、データ圧縮部250は、圧縮データ領域240に圧縮データを格納した場合、当該無圧縮データが格納されていたロケーションの領域を開放する処理を行う。
The
次に、上位装置20から論理ディスク120上の領域を指定してデータが書き込まれる場合のストレージ装置10の処理について、図4を参照して説明する。
Next, processing of the
先ず、処理部110は、ライトデータの論理ブロックアドレスが、既に情報ノード220とリンク済みのアドレスであるか否かを判定する(S11)。
First, the
論理ブロックアドレスがリンク済みでないと判定した場合(S11:NO)、ハッシュ算出部160は、キャッシュ(図示を省略する。)に保持されたライトデータに基づいて、ハッシュ値を算出する(S12)。
If it is determined that the logical block address has not been linked (S11: NO), the
次に、処理部110は、ハッシュ算出部160が算出したハッシュ値を当該論理ブロックアドレスと関連付けて、インデックステーブル130に保持する(S13)。
Next, the
次に、処理部110は、当該ハッシュ値と同値のハッシュ値を有する情報ノード220がデータブロック情報ノード領域210にあるか否かを判定する(S14)。
Next, the
同値のハッシュ値があると判定した場合(S14:YES)、処理部110は、当該情報ノード220とインデックステーブル130の当該論理ブロックアドレスとをリンクし、当該情報ノード220のリンク数をインクリメントする(S15)。
When it is determined that there is the same hash value (S14: YES), the
同値のハッシュ値がないと判定した場合(S14:NO)、処理部110は、データブロック情報ノード領域210に新たな情報ノード220を追加し、無圧縮データ領域230にデータブロックの内容を書き込んだ後、当該書き込んだロケーションを示すポインタをロケーション223に格納する(S16)。
When it is determined that there is no hash value with the same value (S14: NO), the
また、処理部110は、ステップS16のデータブロックの書き込み終了時に、情報ノード220とインデックステーブル130の当該論理ブロックアドレスとをリンクし、リンク数221を“1”にインクリメントする(S17)。
The
一方、ステップS11において、論理ブロックアドレスがリンク済みであると判定した場合、つまりデータの上書きである場合(S11:YES)、ハッシュ算出部160は、上書きするデータに基づいて、ハッシュ値を算出する(S18)。
On the other hand, if it is determined in step S11 that the logical block address has been linked, that is, if data is overwritten (S11: YES), the
次に、処理部110は、ハッシュ算出部160が算出したハッシュ値を当該論理ブロックアドレスに関連付けて、インデックステーブル130に保持する(S19)。
Next, the
次に、処理部110は、当該ハッシュ値と同値のハッシュ値を有する情報ノード220がデータブロック情報ノード領域210にあるか否かを判定する(S20)。
Next, the
同値のハッシュ値があると判定した場合(S20:YES)、処理部110は、リンク済みの情報ノード、つまり、上書きされるデータに対応する情報ノード220とインデックステーブル130の当該論理ブロックアドレスとのリンクを解除し、当該情報ノード220のリンク数221をデクリメントする(S21)。
When it is determined that there is a hash value with the same value (S20: YES), the
次に、処理部110は、ステップS18で算出したハッシュ値を有する情報ノード220とインデックステーブル130の当該論理ブロックアドレスとをリンクし、当該情報ノード220のリンク数221をインクリメントする(S22)。
Next, the
一方、処理部110は、同値のハッシュ値がないと判定した場合(S20:NO)、処理部110は、データブロック情報ノード領域210に新たな情報ノード220を追加し、無圧縮データ領域230にデータブロックの内容を書き込んだ後、当該書き込んだロケーションを示すポインタをロケーション223に格納する(S23)。
On the other hand, when the
また、処理部110は、ステップS16のデータブロックの書き込み終了時に、情報ノード220とインデックステーブル130の当該論理ブロックアドレスとをリンクし、リンク数221を“1”にインクリメントする(S24)。
The
次に、ストレージ装置10がデータを消去する指示を受信した場合について説明する。処理部110は、上位装置20から例えば論理ディスク120の所定のデータを消去する指示を受信した場合、当該消去の対象となるインデックステーブル130の論理ブロックアドレスと、当該論理ブロックアドレスとリンクされている情報ノード220とのリンクを解除し、当該情報ノード220のリンク数221をデクリメントする。
Next, a case where the
なお、実データ格納領域200においては、情報ノード220のリンク数221がデクリメントされた結果、リンク数が“0”になった場合、当該情報ノード220のデータ領域(ロケーション223、又はロケーション224)は、開放される。
In the actual
以上のように、処理部110は、上位装置20からの指示に基づいて、論理ディスク120を介して実データ格納領域200へのデータの書き込み、又はデータの消去を行う。
As described above, the
次に、実データ格納領域200に格納されたデータを圧縮する処理ついて説明する。
Next, a process for compressing data stored in the actual
データ圧縮部250は、データブロック情報ノード領域210内の各情報ノード220のアクセス情報222を監視し、ストレージ装置10の負荷が軽くなった時にバックグラウンドでアクセス頻度の低いデータを圧縮する処理を行う。
The
この圧縮する処理は、より詳細には、データ圧縮部250がロケーション223に格納されているアクセス頻度の低いデータブロックを圧縮して圧縮データを生成し、この生成したデータを圧縮データ領域240に格納し、この圧縮データを格納したロケーションをロケーション224に格納するとともに、当該データブロックを格納していた無圧縮データ領域230を開放することにより行われる。
More specifically, in the compression process, the
このようにアクセス頻度の低いデータブロックが無圧縮データ領域230から圧縮データ領域240へ移動されるため、無圧縮データ領域230は、データブロックのアクセス頻度に応じてリサイクルされ、有効活用される。
As described above, since the data block with low access frequency is moved from the
また、圧縮データ領域240に圧縮データを格納した後、当該圧縮データにアクセスがあった場合、処理部110は、キャッシュ(図示を省略する。)に展開したデータを保持し、その後のアクセス頻度が所定の頻度を超えた場合に、当該キャッシュに保持したデータを無圧縮データ領域230に格納する処理を行う。これにより、一時的にアクセス頻度が低く圧縮した状態で格納されることになったデータが、アクセス頻度が所定の頻度を超えた場合には、無圧縮の状態で無圧縮データ領域230に格納されるようになる。
In addition, when the compressed data is accessed after storing the compressed data in the compressed
この第1の実施の形態によると、ストレージ装置10は、論理ディスク120上の領域を指定してデータが書き込まれた場合、当該データから算出されるハッシュ値と、同じハッシュ値がデータブロック情報ノード領域210の情報ノード220に記憶されている場合には、情報ノード220で管理されるデータのロケーションとインデックステーブル130の論理ブロックアドレスとを関連づけ、実データ格納領域200にデータを記憶する処理を回避することができる。このため、ストレージ装置10は、実データ格納領域200の使用効率を向上させることができる。
According to the first embodiment, when data is written by designating an area on the
また、データ圧縮部250は、アクセス情報222に基づいて、アクセス頻度が所定の頻度より低いデータを、無圧縮データ領域230から圧縮データへ移動させる。このため、実データ格納領域200に格納されるデータの容量が少なくなり、ストレージ装置10は、実データ格納領域200の使用効率を更に向上させることができる。
Further, the
さらに、データ圧縮部250の圧縮処理はストレージ装置10の負荷が軽いときに行われるため、ストレージ装置10の処理能力を効率的に使用することができ、当該処理能力が低下しない。
Furthermore, since the compression processing of the
(第2の実施の形態)
次に、第2の実施の形態について説明する。この第2の実施の形態は、論理ディスクと他の論理ディスクとでペアが構成され、論理ディスクから他の論理ディスクへレプリケーションを行うように構成されている点が既述の第1の実施の形態と異なっている。したがって、以下では、上記異なる点について詳細に説明する。なお、第1の実施の形態と同一の構成には同一の符号を付して詳細な説明は省略する。
(Second Embodiment)
Next, a second embodiment will be described. In the second embodiment, a pair is constituted by a logical disk and another logical disk, and replication is performed from the logical disk to another logical disk. It is different from the form. Therefore, the different points will be described in detail below. In addition, the same code | symbol is attached | subjected to the structure same as 1st Embodiment, and detailed description is abbreviate | omitted.
図5は、レプリケーション処理を説明するための図である。同図に示すように、論理ディスク(以下、この第2の実施の形態では、マスターボリュームと称する。)120から論理ディスクの内容を複製する論理ディスク(以下、この第2の実施の形態では、リモートボリュームと称する。)320を有するストレージシステムを示している。つまり、マスターボリューム120とリモートボリューム320とでペアが構成され、マスターボリューム120からリモートボリューム320へレプリケーションを行うように構成されている。したがって、ストレージシステムにおいて、インデックステーブル130からインデックステーブル330へ、実データ格納領域200から実データ格納領域400へデータの複製がなされるように構成されている。
FIG. 5 is a diagram for explaining the replication processing. As shown in the figure, a logical disk (hereinafter referred to as a master volume in this second embodiment) 120 that replicates the contents of a logical disk from a logical disk (hereinafter referred to as a master volume in this second embodiment) A storage system having 320 is shown. That is, the
なお、マスターボリューム120とリモートボリューム320は同一のストレージ装置内に設けられていても良いが、本第2の実施の形態においては、地理的に離れた異なるストレージ装置内に設けられている場合について説明する。
The
また、ストレージシステムにおいて、マスターボリューム120に対してデータが書き込まれた場合、マスターボリューム120のインデックステーブル130からリモートボリューム320のインデックステーブル330へは高速に同期コピーがなされるが、マスターボリューム120の実データ格納領域200からリモートボリューム320の実データ格納領域400へは非同期コピーがなされるように構成されている。
Further, in the storage system, when data is written to the
次に、レプリケーション処理について説明する。 Next, the replication process will be described.
先ず、例えば、マスターボリューム120を有するストレージ装置10がリモートボリューム320とペアを構成する指示を上位装置20から受信した場合、マスターボリューム120とリモートボリューム320とがペア状態になり、インデックステーブル130からインデックステーブル330にデータ内容がコピーされる。
First, for example, when the
このようにペア状態になった後、上位装置20からマスターボリューム120に対してデータの書き込みがあった場合、インデックステーブル130の更新内容が同期してインデックステーブル330にコピーされる。
In this way, when data is written from the
次に、上位装置20からペア解除の指示をストレージ装置10が受信し、マスターボリューム120とリモートボリューム320とがセパレート状態になった場合、リモートボリューム320のインデックステーブル330は、セパレート時の実データ格納領域200の内容と対応する内容を保持したままとなる。一方、当該インデックステーブル330の内容は、セパレート時の実データ格納領域400の内容と異なっている。しかしながら、マスターボリューム120を含むストレージ装置10の負荷の軽い時に、実データ格納領域200から実データ格納領域400へデータのコピーが行われ、インデックステーブル330の内容と実データ格納領域400との内容が一致する。
Next, when the
したがって、リモートボリューム320を含むストレージ装置は、セパレート状態になった後、実データ格納領域200から実データ格納領域400のコピーが完了する前は、インデックステーブル330を介して実データ格納領域200に格納されているデータを参照する。一方、リモートボリューム320を含むストレージ装置は、セパレート状態になった後、実データ格納領域200から実データ格納領域400のコピーが完了した後は、インデックステーブル330を介して実データ格納領域400に格納されているデータを参照する。
Therefore, the storage apparatus including the
この第2の実施の形態によると、ペア状態時にマスターボリューム120にデータが書き込まれた場合、インデックステーブル130の内容のみを同期コピーすることにより、レプリケーション応答時の応答遅延を短縮し、ストレージ装置10の処理性能を向上させることができる。
According to the second embodiment, when data is written to the
また、マスターボリューム120とリモートボリューム320とがセパレート状態になった場合、マスターボリューム120を含むストレージ装置10の負荷が軽い時にバックグラウンドで実データ格納領域200から実データ格納領域400へのコピーを実行するため、マスターボリューム120を有するストレージ装置10のパフォーマンスを維持したまま遠隔地にデータのレプリケーションを実行することができる。
Further, when the
(第3の実施の形態)
次に、第3の実施の形態について説明する。この第3の実施の形態は、論理ディスク120のスナップショットを作成するように構成されている点が既述の第1の実施の形態と異なっている。したがって、以下では、上記異なる点について詳細に説明する。なお、第1の実施の形態と同一の構成には同一の符号を付して詳細な説明は省略する。
(Third embodiment)
Next, a third embodiment will be described. The third embodiment is different from the first embodiment described above in that it is configured to create a snapshot of the
図6は、論理ディスクのスナップショット処理を説明するための図である。同図に示すように、ストレージシステムは、論理ディスク(以下、この第3の実施の形態ではベースボリュームと称する。)120、一世代前の論理ディスク(以下、この第3の実施の形態では、スナップショットボリュームと称する。)121、二世代前の論理ディスク(以下、この第3の実施の形態では、スナップショットボリュームと称する。)122、インデックステーブル170、及び第3の管理部である世代管理テーブル180を有している。
FIG. 6 is a diagram for explaining snapshot processing of a logical disk. As shown in the figure, the storage system includes a logical disk (hereinafter referred to as a base volume in the third embodiment ) 120 , a logical disk one generation before (hereinafter, in the third embodiment, 121, a logical disk of two generations before (hereinafter referred to as a snapshot volume in this third embodiment) 122, an index table 170, and a generation management as a third management unit A table 180 is provided.
インデックステーブル170は、論理ブロックアドレスを保持するフィールド171、スナップショットの世代を保持するフィールド172、ハッシュ値を保持するフィールド173を有している。また、インデックステーブル170は、フィールド171に保持される論理ブロックアドレスに、フィールド172に保持するスナップショットの世代、及びフィールド173に保持されるハッシュ値を対応させて、論理ブロックアドレス、スナップショットの世代、及びハッシュ値を管理するように構成されている。
The index table 170 has a
世代管理テーブル180は、スナップショットの世代を保持するフィールド181、スナップショットの作成日時を保持するフィールド182、及びインデックステーブル170のスナップショットの世代と関連付けるための管理情報(ポインタ)を保持するフィールド183を有している。また、世代管理テーブル180は、フィールド181に保持されるスナップショットの世代に、フィールド182に保持される日時及びフィールド183に保持される管理情報を対応させて、スナップショットの世代、日時、及び管理情報を管理するように構成されている。
The generation management table 180 has a
この第3の実施の形態によると、上位装置10から所定のスナップショットを出力する指示を受信した場合、ストレージ装置10は、世代管理テーブル180の当該所定の世代と対応する管理情報を用いて、インデックステーブル170のフィールド172にアクセスし、当該所定の世代に対応するハッシュ値に基づいて、実データ格納領域200に格納されている論理ディスク120のスナップショットのデータを上位装置に出力することができる。よって、ストレージ装置10は、世代管理テーブル180及びインデックステーブル170を用いて、ユーザに指定された世代のスナップショットボリュームを瞬時に上位装置20へ出力することができる。
According to the third embodiment, when receiving an instruction for outputting a predetermined snapshot from the
また、ストレージ装置10は、既述のように、世代管理テーブル180及びインデックステーブル170を用いて、各世代のスナップショットボリュームに出力を切り替えることができる。よって、従来よりあるナップショットの技術に用いられる世代間の差分を管理する管理テーブルを設けなくても良い。
Further, as described above, the
なお、本発明は上述の実施の形態に限定されるものではなく、その実施に際して様々な変形が可能である。 In addition, this invention is not limited to the above-mentioned embodiment, A various deformation | transformation is possible in the case of the implementation.
上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 A part or all of the above embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1)
仮想ディスクを用いてデータを管理するストレージ装置であって、
データを格納する格納領域と、
前記データの前記仮想ディスク上の領域と前記データに基づいて算出される特定値とを関連付けて管理する第1の管理部と、
前記格納領域に格納されるデータの領域と前記特定値とを関連付けて管理する第2の管理部と、
上位装置から前記仮想ディスク上の領域を指定したライトデータを受信した場合、当該ライトデータに基づいて前記第1の管理部で管理される特定値を算出し、当該算出した特定値と一致する特定値が前記第2の管理部で管理されているか否かを判断し、管理されていると判断した場合、前記一致する特定値を用いて前記第1の管理部で管理される仮想ディスクの領域と前記第2の管理部で管理されるデータの領域とを関連付け、前記格納領域への前記ライトデータの格納処理を回避する処理部と、
を備えることを特徴とするストレージ装置。
(Appendix 1)
A storage device that manages data using a virtual disk,
A storage area for storing data; and
A first management unit that manages an area of the data on the virtual disk in association with a specific value calculated based on the data;
A second management unit that manages the data area stored in the storage area in association with the specific value;
When write data designating an area on the virtual disk is received from a host device, a specific value managed by the first management unit is calculated based on the write data, and a specific value that matches the calculated specific value It is determined whether or not the value is managed by the second management unit, and if it is determined that the value is managed, the virtual disk area managed by the first management unit using the matching specific value And a processing unit that associates an area of data managed by the second management unit and avoids the storage process of the write data in the storage area,
A storage apparatus comprising:
(付記2)
前記処理部は、前記上位装置から前記ライトデータの削除指示を受信した場合、前記一致する特定値を用いた前記第1の管理部と前記第2の管理部との関連づけを解消する、ことを特徴とする付記1記載のストレージ装置。
(Appendix 2)
When the processing unit receives an instruction to delete the write data from the higher-level device, the processing unit cancels the association between the first management unit and the second management unit using the matching specific value. The storage device according to
(付記3)
前記仮想ディスクは、当該仮想ディスクのデータを複製する他の仮想ディスクとペアとなるよう構成され、
前記仮想ディスクと前記他の仮想ディスクとのペア構成中に、前記上位装置から前記仮想ディスクを介してライトデータを受信した場合、前記処理部は、前記第1の管理部で管理されるデータを前記他の仮想ディスクに対応づけられた第1の管理部に複製し、前記ペアが解除された場合、前記格納領域に格納されるデータを前記第2の仮想ディスクに対応づけられた格納領域に複製する、ことを特徴とする付記1又は2記載のストレージ装置。
(Appendix 3)
The virtual disk is configured to be paired with another virtual disk that replicates the data of the virtual disk,
When write data is received from the host device via the virtual disk during the pair configuration of the virtual disk and the other virtual disk, the processing unit receives data managed by the first management unit. When data is copied to the first management unit associated with the other virtual disk and the pair is released, the data stored in the storage area is stored in the storage area associated with the second virtual disk. The storage apparatus according to
(付記4)
前記仮想ディスクの1以上のスナップショットを管理する第3の管理部を備え、
前記第1の管理部は、前記1以上のスナップショット毎に前記特定値を管理し、
前記処理部は、前記上位装置から所定の世代のスナップショットの出力を指示された場合、前記第1の管理部に管理される特定値、前記第2の管理部に管理される特定値、及び前記第3の管理部に管理される特定値に基づいて、前記所定の世代のスナップショットを出力する、ことを特徴とする付記1又は2記載のストレージ装置。
(Appendix 4)
A third management unit for managing one or more snapshots of the virtual disk;
The first management unit manages the specific value for each of the one or more snapshots,
The processing unit, when instructed to output a snapshot of a predetermined generation from the host device, a specific value managed by the first management unit, a specific value managed by the second management unit, and The storage apparatus according to
(付記5)
仮想ディスクを用いてデータを管理するストレージ装置の記憶資源の使用効率向上方法であって、
前記ストレージ装置は、
前記データの前記仮想ディスク上の領域と前記データに基づいて算出される特定値とを関連付けて管理する第1の管理部と、
格納領域に格納されるデータの領域と前記特定値とを関連付けて管理する第2の管理部ととを備えるものであり、
上位装置から前記仮想ディスクを介してライトデータを受信した場合、当該ライトデータに基づいて前記第1の管理部で管理される特定値を算出するステップと、
当該算出した特定値と一致する特定値が前記第2の管理部で管理されているか否かを判断するステップと、
前記ステップで管理されていると判断した場合、前記一致する特定値を用いて前記第1の管理部と前記第2の管理部とを関連付け、前記格納領域への前記ライトデータの格納処理を回避するステップと、
を有することを特徴とするストレージ装置の記憶資源の使用効率向上方法。
(Appendix 5)
A method for improving the use efficiency of storage resources of a storage device that manages data using virtual disks,
The storage device
A first management unit that manages an area of the data on the virtual disk in association with a specific value calculated based on the data;
A second management unit that manages the data area stored in the storage area in association with the specific value;
A step of calculating a specific value managed by the first management unit based on the write data when the write data is received from the host device via the virtual disk;
Determining whether a specific value that matches the calculated specific value is managed by the second management unit;
If it is determined that the management is performed in the step, the first management unit and the second management unit are associated with each other using the matching specific value, and the storage process of the write data in the storage area is avoided. And steps to
A method for improving the use efficiency of storage resources of a storage apparatus, comprising:
論理ディスクを利用してデータの記憶処理を実行するストレージ装置に広く適用可能である。 The present invention can be widely applied to storage apparatuses that execute data storage processing using logical disks.
10・・・・上位装置
20・・・・ストレージ装置
100・・・コントローラ部
110・・・処理部
120,121,122,140,320・・・論理ディスク
130,150,170,330・・・インデックステーブル
180・・・世代管理テーブル
160・・・ハッシュ算出部
200,400・・・実データ格納領域
210・・・データブロック情報ノード領域
220・・・情報ノード
230・・・無圧縮データ領域
240・・・圧縮データ領域
250・・・データ圧縮部
10...
Claims (5)
データを無圧縮で格納する第1データ格納領域と、データを圧縮して格納する第2データ格納領域とを含む格納領域と、
前記データの前記仮想ディスク上の領域と前記データに基づいて算出される特定値とを関連付けて管理する第1の管理部と、
前記格納領域に格納されるデータの領域と前記特定値とを関連付けて管理する第2の管理部と、
上位装置から前記仮想ディスク上の領域を指定したライトデータを受信した場合、当該ライトデータに基づいて前記第1の管理部で管理される特定値を算出し、当該算出した特定値と一致する特定値が前記第2の管理部で管理されているか否かを判断し、管理されていると判断した場合、前記一致する特定値を用いて前記第1の管理部で管理される仮想ディスクの領域と前記第2の管理部で管理されるデータの領域とを関連付け、前記格納領域への前記ライトデータの格納処理を回避する処理部と、
前記第1データ格納領域及び前記第2データ格納領域に格納されたデータへのアクセス回数を示すアクセス回数情報を監視し、前記第1データ格納領域に対するアクセス回数情報が所定回数以下を示す場合、当該第1データ格納領域に格納されるデータを圧縮し、当該圧縮データを前記第2データ格納領域に格納すると共に前記データを格納している第1データ格納領域を開放し、前記第2データ格納領域に対するアクセス回数情報が所定回数以上を示す場合、当該第2データ格納領域に格納している圧縮データに対応する無圧縮データを前記第1データ格納領域に格納すると共に前記圧縮データを格納している第2データ格納領域を開放するデータ圧縮部と、を備え、
前記データ圧縮部は、前記アクセス回数情報を監視してストレージ装置の負荷が軽くなった時にバックグラウンドで前記第1データ格納領域に格納されるデータの圧縮を行う、ことを特徴とするストレージ装置。 A storage device that manages data using a virtual disk,
A storage area including a first data storage area for storing data without compression, and a second data storage area for compressing and storing data;
A first management unit that manages an area of the data on the virtual disk in association with a specific value calculated based on the data;
A second management unit that manages the data area stored in the storage area in association with the specific value;
When write data designating an area on the virtual disk is received from a host device, a specific value managed by the first management unit is calculated based on the write data, and a specific value that matches the calculated specific value It is determined whether or not the value is managed by the second management unit, and if it is determined that the value is managed, the virtual disk area managed by the first management unit using the matching specific value And a processing unit that associates an area of data managed by the second management unit and avoids the storage process of the write data in the storage area,
When the access count information indicating the number of accesses to the data stored in the first data storage area and the second data storage area is monitored, and the access count information for the first data storage area indicates a predetermined number or less, The data stored in the first data storage area is compressed, the compressed data is stored in the second data storage area, the first data storage area storing the data is released, and the second data storage area When the access frequency information indicates a predetermined number of times or more, uncompressed data corresponding to the compressed data stored in the second data storage area is stored in the first data storage area and the compressed data is stored. A data compression unit for releasing the second data storage area ,
The data compression unit monitors the access frequency information and compresses data stored in the first data storage area in the background when the load on the storage apparatus becomes light .
前記仮想ディスクと前記他の仮想ディスクとのペア構成中に、前記上位装置から前記仮想ディスクを介してライトデータを受信した場合、前記処理部は、前記第1の管理部で管理されるデータを前記他の仮想ディスクに対応づけられた第1の管理部に複製し、前記ペアが解除された場合、前記格納領域に格納されるデータを前記他の仮想ディスクに対応づけられた格納領域に複製する、ことを特徴とする請求項1又は2記載のストレージ装置。 The virtual disk is configured to be paired with another virtual disk that replicates the data of the virtual disk,
When write data is received from the host device via the virtual disk during the pair configuration of the virtual disk and the other virtual disk, the processing unit receives data managed by the first management unit. Replicated to the first management unit associated with the other virtual disk, and when the pair is released, the data stored in the storage area is replicated to the storage area associated with the other virtual disk The storage apparatus according to claim 1 or 2, wherein:
前記第1の管理部は、前記1以上のスナップショット毎に前記特定値を管理し、
前記処理部は、前記上位装置から所定の世代のスナップショットの出力を指示された場合、前記第1の管理部に管理される特定値、前記第2の管理部に管理される特定値、及び前記第3の管理部に管理される管理情報に基づいて、前記所定の世代のスナップショットを出力する、ことを特徴とする請求項1又は2記載のストレージ装置。 A third management unit for managing one or more snapshots of the virtual disk;
The first management unit manages the specific value for each of the one or more snapshots,
The processing unit, when instructed to output a snapshot of a predetermined generation from the host device, a specific value managed by the first management unit, a specific value managed by the second management unit, and The storage apparatus according to claim 1 or 2, wherein the snapshot of the predetermined generation is output based on management information managed by the third management unit.
前記ストレージ装置は、
データを無圧縮で格納する第1データ格納領域と、データを圧縮して格納する第2データ格納領域とを含む格納領域と、
前記データの前記仮想ディスク上の領域と前記データに基づいて算出される特定値とを関連付けて管理する第1の管理部と、
前記格納領域に格納されるデータの領域と前記特定値とを関連付けて管理する第2の管理部とを備えるものであり、
上位装置から前記仮想ディスク上の領域を指定したライトデータを受信した場合、当該ライトデータに基づいて前記第1の管理部で管理される特定値を算出するステップと、
当該算出した特定値と一致する特定値が前記第2の管理部で管理されているか否かを判断するステップと、
前記ステップで管理されていると判断した場合、前記一致する特定値を用いて前記第1の管理部で管理される仮想ディスクの領域と前記第2の管理部で管理されるデータの領域とを関連付け、前記格納領域への前記ライトデータの格納処理を回避するステップと、
前記第1データ格納領域及び前記第2データ格納領域に格納されたデータへのアクセス回数を示すアクセス回数情報を監視するステップと、
前記監視される前記第1データ格納領域に対するアクセス回数情報が所定回数以下を示す場合、前記ストレージ装置の負荷が軽くなった時にバックグラウンドで、前記当該第1データ格納領域に格納されるデータを圧縮し、当該圧縮データを前記第2データ格納領域に格納すると共に前記データを格納している第1データ格納領域を開放するステップと、
前記監視される前記第2データ格納領域に対するアクセス回数情報が所定回数以上を示す場合、当該第2データ格納領域に格納している圧縮データに対応する無圧縮データを前記第1データ格納領域に格納すると共に前記圧縮データを格納している第2データ格納領域を開放するステップと、
を有することを特徴とするストレージ装置の記憶資源の使用効率向上方法。 A method for improving the use efficiency of storage resources of a storage device that manages data using virtual disks,
The storage device
A storage area including a first data storage area for storing data without compression, and a second data storage area for compressing and storing data;
A first management unit that manages an area of the data on the virtual disk in association with a specific value calculated based on the data;
A second management unit that manages the data area stored in the storage area in association with the specific value;
A step of calculating a specific value managed by the first management unit based on the write data when receiving write data designating an area on the virtual disk from a host device;
Determining whether a specific value that matches the calculated specific value is managed by the second management unit;
If it is determined that the data is managed in the step, the virtual disk area managed by the first management unit and the data area managed by the second management unit using the matching specific value Associating and avoiding storage processing of the write data in the storage area;
Monitoring access count information indicating the number of accesses to the data stored in the first data storage area and the second data storage area;
When the number-of-accesses information to the monitored first data storage area indicates a predetermined number or less, the data stored in the first data storage area is compressed in the background when the load on the storage device is reduced Storing the compressed data in the second data storage area and releasing the first data storage area storing the data;
When the access frequency information for the monitored second data storage area indicates a predetermined number or more, uncompressed data corresponding to the compressed data stored in the second data storage area is stored in the first data storage area And releasing a second data storage area storing the compressed data;
A method for improving the use efficiency of storage resources of a storage apparatus, comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010198867A JP5688676B2 (en) | 2010-09-06 | 2010-09-06 | Storage device and method for improving use efficiency of storage resource of storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010198867A JP5688676B2 (en) | 2010-09-06 | 2010-09-06 | Storage device and method for improving use efficiency of storage resource of storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012058825A JP2012058825A (en) | 2012-03-22 |
JP5688676B2 true JP5688676B2 (en) | 2015-03-25 |
Family
ID=46055897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010198867A Active JP5688676B2 (en) | 2010-09-06 | 2010-09-06 | Storage device and method for improving use efficiency of storage resource of storage device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5688676B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013186828A1 (en) * | 2012-06-11 | 2013-12-19 | 株式会社 日立製作所 | Computer system and control method |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132546A (en) * | 2000-10-24 | 2002-05-10 | Xaxon R & D Corp | Storage device |
JP4990066B2 (en) * | 2007-08-21 | 2012-08-01 | 株式会社日立製作所 | A storage system with a function to change the data storage method using a pair of logical volumes |
JP5060876B2 (en) * | 2007-08-30 | 2012-10-31 | 株式会社日立製作所 | Storage system and storage system power consumption reduction method |
JP5026213B2 (en) * | 2007-09-28 | 2012-09-12 | 株式会社日立製作所 | Storage apparatus and data deduplication method |
JP4607937B2 (en) * | 2007-10-31 | 2011-01-05 | 株式会社東芝 | Cache method and cache device |
JP2009251725A (en) * | 2008-04-02 | 2009-10-29 | Hitachi Ltd | Storage controller and duplicated data detection method using storage controller |
-
2010
- 2010-09-06 JP JP2010198867A patent/JP5688676B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012058825A (en) | 2012-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853274B2 (en) | Primary data storage system with data tiering | |
US10503639B2 (en) | Cached volumes at storage gateways | |
US20200125412A1 (en) | Dynamic workload management based on predictive modeling and recommendation engine for storage systems | |
JP7312251B2 (en) | Improving available storage space in systems with various data redundancy schemes | |
US9690487B2 (en) | Storage apparatus and method for controlling storage apparatus | |
JP5309043B2 (en) | Storage system and method for duplicate data deletion in storage system | |
US7836266B2 (en) | Managing snapshot history in a data storage system | |
WO2017119091A1 (en) | Distrubuted storage system, data storage method, and software program | |
US9274956B1 (en) | Intelligent cache eviction at storage gateways | |
US9268651B1 (en) | Efficient recovery of storage gateway cached volumes | |
CN106687911B (en) | Online data movement without compromising data integrity | |
TWI771933B (en) | Method for performing deduplication management with aid of command-related filter, host device, and storage server | |
CN109313538A (en) | Inline duplicate removal | |
US10628298B1 (en) | Resumable garbage collection | |
JP2007220103A (en) | Method, system, and program for consolidating session information for a cluster of sessions in coupled session environment | |
CN113220729A (en) | Data storage method and device, electronic equipment and computer readable storage medium | |
JP6558059B2 (en) | Storage control device, storage control program, and storage system | |
JP4755244B2 (en) | Information generation method, information generation program, and information generation apparatus | |
JP6653370B2 (en) | Storage system | |
CN112579550B (en) | Metadata information synchronization method and system of distributed file system | |
US11256434B2 (en) | Data de-duplication | |
JP6337982B1 (en) | Storage system | |
JP5688676B2 (en) | Storage device and method for improving use efficiency of storage resource of storage device | |
WO2018055686A1 (en) | Information processing system | |
JP2018181207A (en) | Device, method, and program for storage control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121107 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131002 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131007 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131205 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140424 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140623 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140901 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141126 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20141203 |
|
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: 20150105 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5688676 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150118 |