JP6237925B2 - クラスタシステム及びクラスタ制御方法 - Google Patents

クラスタシステム及びクラスタ制御方法 Download PDF

Info

Publication number
JP6237925B2
JP6237925B2 JP2016555061A JP2016555061A JP6237925B2 JP 6237925 B2 JP6237925 B2 JP 6237925B2 JP 2016555061 A JP2016555061 A JP 2016555061A JP 2016555061 A JP2016555061 A JP 2016555061A JP 6237925 B2 JP6237925 B2 JP 6237925B2
Authority
JP
Japan
Prior art keywords
data
snapshot
cluster
storage unit
node
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
Application number
JP2016555061A
Other languages
English (en)
Other versions
JPWO2016063461A1 (ja
Inventor
和幸 神田
和幸 神田
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
Publication of JPWO2016063461A1 publication Critical patent/JPWO2016063461A1/ja
Application granted granted Critical
Publication of JP6237925B2 publication Critical patent/JP6237925B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements

Description

本発明は、クラスタシステム、クラスタノード、クラスタ制御方法及びクラスタ制御プログラムに関し、特に、ミラーリングを行うクラスタシステム、クラスタノード、クラスタ制御方法及びクラスタ制御プログラムに関する。
複数のノード(コンピュータ)を結合することで冗長化構成を構築するクラスタシステムが知られている。特に、一部のハードウェアやソフトウェアに障害が発生してもシステム全体で安定して動作するように可用性を高めたシステムは、HA(High Availability:高可用性)クラスタシステムと呼ばれている。HAクラスタシステムは、複数のノードで構成されており、各ノードで障害を監視し、当該ノードに異常が発生した場合に当該ノードで起動していた業務(アプリケーション)を他のノードで再開する系切り替えを実施する。
HAクラスタシステムでは、業務データの引き継ぎ方法として、共有ストレージを利用した方式(共有ディスク型クラスタシステム)と、業務データをHAクラスタシステム構成サーバ間で同期し、各サーバのローカルディスクに同一データを保持する形式(データミラー型クラスタシステム)がある(例えば、特許文献1や非特許文献1参照)。データミラー型クラスタシステムは、共有ストレージ装置が不要な構成であり、データの冗長性も確保できるためコストパフォーマンスのよいHAクラスタシステムの構成が可能である。
データミラー型クラスタシステムでは、現用系ノードの記憶装置にデータが書き込まれると、書き込まれたデータを現用系ノードから待機系ノードに転送し、待機系ノードの記憶装置にも同じ内容が書き込まれる。これにより、常に現用系ノードと待機系ノードの記憶装置内のデータが互いに同じとなるようにミラーリングを行っている。
なお、データの書き込みやバックアップに関連する技術として、例えば、特許文献2や3が知られている。
特開2007−249652号公報 特開2008−33527号公報 特開2009−205201号公報
日本電気株式会社、"CLUSTERPRO X−特長/機能"、[online]、インターネット<URL:http://jpn.nec.com/clusterpro/clp/function.html#func5_mirror>
データミラー型クラスタシステムでは、ミラーリングする業務データをネットワークを利用してデータ転送する必要があり、このデータ転送時間はネットワークの回線帯域や転送速度などに大きく依存する。したがって、関連する技術では、ネットワーク資源が限られた状況等ではデータ転送にかかる時間がボトルネックとなってしまい、適切にミラーリングを行うことができない場合があるという問題がある。
本発明は、このような問題に鑑み、適切にミラーリングを行うことが可能なクラスタシステム、クラスタノード、クラスタ制御方法及びクラスタ制御プログラムを提供することを目的とする。
本発明に係るクラスタシステムは、第1及び第2のクラスタノードを備えたクラスタシステムであって、前記第1のクラスタノードは、第1の同期データを記憶する第1の同期データ記憶部と、第1のスナップショットデータを記憶する第1のスナップショット記憶部と、前記第1の同期データを更新データに更新する第1の同期データ更新部と、前記第1のスナップショットデータに基づいて、前記更新データから転送情報を生成する転送情報生成部と、前記生成された転送情報を前記第2のクラスタノードへ送信する転送情報送信部と、を備え、前記第2のクラスタノードは、第2の同期データを記憶する第2の同期データ記憶部と、第2のスナップショットデータを記憶する第2のスナップショット記憶部と、前記第1のクラスタノードから送信された転送情報を受信する転送情報受信部と、前記第2のスナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成する更新データ生成部と、前記第2の同期データを前記更新データに更新する第2の同期データ更新部と、を備えるものである。
本発明に係るクラスタノードは、同期データを記憶する同期データ記憶部と、スナップショットデータを記憶するスナップショット記憶部と、前記同期データを更新データに更新する同期データ更新部と、前記スナップショットデータに基づいて、前記更新データから転送情報を生成する転送情報生成部と、前記生成された転送情報を他のクラスタノードへ送信する転送情報送信部と、を備えるものである。
本発明に係るクラスタノードは、同期データを記憶する同期データ記憶部と、スナップショットデータを記憶するスナップショット記憶部と、他のクラスタノードから送信された転送情報を受信する転送情報受信部と、前記スナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成する更新データ生成部と、前記同期データを前記更新データに更新する同期データ更新部と、を備えるものである。
本発明に係るクラスタ制御方法は、第1及び第2のクラスタノードを備えたクラスタシステムにおけるクラスタ制御方法であって、前記第1のクラスタノードは、第1の同期データ記憶部に第1の同期データを記憶し、第1のスナップショット記憶部に第1のスナップショットデータを記憶し、前記第1の同期データを更新データに更新し、前記第1のスナップショットデータに基づいて、前記更新データから転送情報を生成し、前記生成された転送情報を前記第2のクラスタノードへ送信し、前記第2のクラスタノードは、第2の同期データ記憶部に第2の同期データを記憶し、第2のスナップショット記憶部に第2のスナップショットデータを記憶し、前記第1のクラスタノードから送信された転送情報を受信し、前記第2のスナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成し、前記第2の同期データを前記更新データに更新するものである。
本発明に係るクラスタ制御プログラムは、同期データ記憶部に同期データを記憶し、スナップショット記憶部にスナップショットデータを記憶し、前記同期データを更新データに更新し、前記スナップショットデータに基づいて、前記更新データから転送情報を生成し、前記生成された転送情報を他のクラスタノードへ送信する、処理をクラスタノードに実行させるためのものである。
本発明に係るクラスタ制御プログラムは、同期データ記憶部に同期データを記憶し、スナップショット記憶部にスナップショットデータを記憶し、他のクラスタノードから送信された転送情報を受信し、前記スナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成し、前記同期データを前記更新データに更新する、処理をクラスタノードに実行させるためのものである。
本発明によれば、適切にミラーリングを行うことが可能なクラスタシステム、クラスタノード、クラスタ制御方法及びクラスタ制御プログラムを提供することができる。
実施の形態に係るクラスタシステムの概要構成を示す構成図である。 実施の形態1に係るクラスタシステムの構成を示す構成図である。 実施の形態1に係るクラスタノードの動作を説明するための説明図である。 実施の形態1に係るクラスタノードの動作を示すフローチャートである。 実施の形態1に係るクラスタノードの動作を示すフローチャートである。 比較例の動作を説明するための説明図である。 実施の形態1に係るクラスタシステムの動作を説明するための説明図である。
(実施の形態の概要)
上記のように、データミラー型クラスタシステムでは、ネットワーク資源が限られた状況ではデータ転送にかかる時間がボトルネックとなる。このため、運用上のトラブルの発生や、SLA(Service Level Agreement)が満たせないなどによりデータミラー型クラスタシステムの適用に敷居が高くなってしまう問題点がある。
昨今は「ビックデータ」や、「大容量補助記憶装置の低価格化」のため、ますますデータ転送量が増加する傾向がある。データ転送量削減のためデータ転送を効率化する既存の技術として圧縮技術や重複技術が利用されているが、今後のデータ増加傾向も鑑みて、さらに効率的なデータ転送技術が必要とされている。
そのため、一般的な重複排除の仕組みを利用しつつ、データミラー型クラスタとしての利点を生かした、効率的かつ無駄のないデータ転送を行う必要がある。データミラー型クラスタシステムではデータ同期が必要となるが、ネットワーク性能に大きく依存するため、単純な書き込みデータの逐次転送では限界がある。圧縮を利用したデータ転送においても重複は排除されないため、無駄なデータ転送が発生してしまう。
そこで、実施の形態では、図1のようにクラスタシステムを構成する。図1に示すように、実施の形態に係るクラスタシステム100は、クラスタノード110及び120を備えている。
クラスタノード(第1のクラスタノード)110は、同期データ記憶部111、スナップショット記憶部112、同期データ更新部113、転送情報生成部114、転送情報送信部115を備えている。同期データ記憶部111は、同期データを記憶する記憶部であり、スナップショット記憶部112は、スナップショットデータを記憶する記憶部である。同期データ更新部113は、同期データ記憶部111の同期データを更新データに更新する。転送情報生成部114は、スナップショット記憶部112のスナップショットデータに基づいて、更新データから転送情報を生成する。転送情報送信部115は、生成された転送情報をクラスタノード120へ送信する。
クラスタノード(第2のクラスタノード)120は、同期データ記憶部121、スナップショット記憶部122、同期データ更新部123、更新データ生成部124、転送情報受信部125を備えている。同期データ記憶部121は、同期データを記憶する記憶部であり、スナップショット記憶部122は、スナップショットデータを記憶する記憶部である。転送情報受信部125は、クラスタノード110から送信された転送情報を受信する。更新データ生成部124は、スナップショット記憶部122のスナップショットデータに基づいて、受信された転送情報から更新データを生成する。同期データ更新部123は、同期データ記憶部121の同期データを、生成した更新データに更新する。
実施の形態では、スナップショットを保持することができる機構を備えたクラスタシステムとすることで、更新データを過去データとなるスナップショットにまでさかのぼって照合し、重複排除することが可能なため、不要なデータ転送を行わずに、データ転送量を削減することができる。転送するデータの絶対量を減らすことでデータ転送の効率化を図ることができるため、データ同期のタイミングが遅延したり、同期に失敗する恐れがあるという問題を解消し、適切にミラーリングを行うことが可能となる。
なお、上記の特許文献1には、差分データを蓄積するデータミラー型クラスタシステムが記載され、特許文献2には、ファイルのリストア処理時間を短縮するストレージ装置が記載され、特許文献3には、重複排除技術を用いたデータバックアップ方法が記載されている。しかしながら、いずれの特許文献にも、実施の形態のようにスナップショットのような「過去の任意」の時点におけるデータを用いてミラーリングを行くクラスタシステムについては記載されていない。
(実施の形態1)
以下、図面を参照して実施の形態1について説明する。図2は、本実施の形態に係るクラスタシステム1の構成を示している。クラスタシステム1は、データミラー型クラスタシステムであり、図2に示すように、ネットワーク50を介して通信可能に接続されたノード10とノード20を備えている。この例では、ノード10を現用系ノード、ノード20を待機系ノードとして説明する。
図2のような構成により、ノード20にて障害前までのデータを利用して業務継続が可能となるデータミラー型クラスタが構成される。なお、ここでは、図2の各ブロックの構成例を用いて説明するが、後述する本実施の形態に係る動作が実現できれば、その他の構成であってもよい。
ノード10及び20における各構成は、ハードウェア又はソフトウェア、もしくはその両方によって構成され、1つのハードウェア又はソフトウェアから構成してもよいし、複数のハードウェア又はソフトウェアから構成してもよい。
ノード10及び20の各機能(各処理)を、CPUやメモリ等を有するコンピュータにより実現してもよい。例えば、記憶装置にクラスタ制御を行うためのクラスタ制御プログラム(クラスタ制御ソフトウェア)を格納し、記憶装置に格納されたプログラムをCPU(コンピュータ)で実行することにより、図2の各機能を実現してもよい。
これらのプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
ノード(第1のクラスタノード)10は、アプリケーション処理部11、クラスタウェア処理部12、ファイルシステム13、データ記憶制御部14、書き込み履歴記憶部15、マスタ記憶部16、スナップショット記憶部17、送受信部18を備えている。
アプリケーション処理部11は、業務プログラムであるアプリケーションを実行し、業務に必要な処理を行う。アプリケーション処理部11は、ノード10が現用系である間、アプリケーションを実行し、現用系から待機系に切り替わると、アプリケーションを停止する。
クラスタウェア処理部12は、クラスタウェアを実行し、HAクラスタを構成するために必要な処理を行う。クラスタウェア処理部12は、ノード10のハードウェア及びソフトウェアを監視し、ノード10に障害が発生した場合、現用系から待機系への切り替え処理を行い、アプリケーションの実行をノード10からノード20へ切り替える。
ファイルシステム13は、アプリケーション処理部11から各記憶部のデータへのアクセスを可能とする。アプリケーション処理部11からの書き込み要求はファイルシステム13を経てデータ記憶制御部14から書き込み履歴記憶部15へと渡る。
データ記憶制御部14は、各記憶部に記憶するデータを制御する。データ記憶制御部14は、後述するように、書き込み履歴記憶部15にデータの書き込みが行われると、マスタ記憶部16及びスナップショット記憶部17を参照し、ノード20へ送信する転送データを送受信部18から送信する。例えば、データ記憶制御部14は、書き込み履歴記憶部15を介してマスタ記憶部16の同期データを更新する同期データ更新部と、スナップショット記憶部17のスナップショットデータに基づいて、更新データから転送データを生成する転送データ生成部を含むとも言える。
書き込み履歴記憶部15は、ノード10のブロック書き込み履歴を記憶する。マスタ記憶部16は、ノード10のマスタとなるデータを記憶する。例えば、マスタ記憶部16は、同期データ(マスタデータ)を記憶する同期データ記憶部であるとも言える。スナップショット記憶部17は、マスタ記憶部16の特定の時点における複製データを記憶する。
送受信部18は、ネットワーク50を介してノード20との間でデータ送受信を行う。送受信部18は、後述するように、ノード20のデータ記憶制御部24へ、書き込み履歴記憶部15に書き込まれたデータを示す転送データを送信する。
ノード(第2のクラスタノード)20は、アプリケーション処理部21、クラスタウェア処理部22、ファイルシステム23、データ記憶制御部24、書き込み履歴記憶部25、マスタ記憶部26、スナップショット記憶部27、送受信部28を備えている。ノード20の各ブロックは、基本的にノード10と同様である。
アプリケーション処理部21は、アプリケーションを実行し、ノード20が待機系である間、アプリケーションを停止しておき、待機系から現用系に切り替わると、アプリケーションの実行を開始する。クラスタウェア処理部22は、クラスタウェアを実行し、現用系であるノード10に障害が発生した場合、待機系から現用系への切り替え処理を行い、アプリケーションの実行をノード10からノード20へ切り替える。ファイルシステム23は、アプリケーション処理部21から各記憶部のデータへのアクセスを可能とする。
データ記憶制御部24、各記憶部に記憶するデータを制御し、後述するように、送受信部28がノード10から転送データを受信すると、マスタ記憶部26及びスナップショット記憶部27を参照し、生成された書き込みデータを書き込み履歴記憶部25へ書き込む。これによりノード10とノード20間は業務で利用するデータが同期される。例えば、データ記憶制御部24は、スナップショット記憶部27に基づいて、ノード10より受信する転送データから更新データを生成する更新データ生成部と、書き込み履歴記憶部25を介してマスタ記憶部26の同期データを更新する同期データ更新部とを含むとも言える。
書き込み履歴記憶部25は、ノード20のブロック書き込み履歴を記憶する。マスタ記憶部26は、ノード20のマスタとなるデータを記憶する。例えば、マスタ記憶部26は、同期データ(マスタデータ)を記憶する同期データ記憶部であるとも言える。スナップショット記憶部27は、マスタ記憶部26の特定の時点における複製データを記憶する。
送受信部28は、ネットワーク50を介してノード10との間でデータ送受信を行う。送受信部28は、後述するように、ノード10の書き込み履歴記憶部15に書き込まれたデータを示す転送データを、ノード10から受信する。
次に、図3を用いて、本実施の形態に係るノードにおけるスナップショット生成動作について説明する。図3はノード10の例を示している。この例では、マスタ記憶部16及びスナップショット記憶部17は、同じファイル形式である。マスタ記憶部16には、マスタファイル30にブロック31単位でデータの書き込み/読み出しが行われ、スナップショット記憶部17には、スナップショットファイル40にブロック41単位でデータの書き込み/読み出しが行われる。また、書き込み履歴記憶部15は、マスタ記憶部16のファイル形式に対応した書き込み履歴テーブル32に、マスタファイル30のブロック31ごとにデータを記憶する。
まず、アプリケーション処理部11がファイルシステム13にデータの書き込みを要求すると、データ記憶制御部14は、ファイルシステム13から書き込みデータ(更新データ)を受け取り、受け取った書き込みデータを書き込み履歴記憶部15に記録する(S100)。データ記憶制御部14は、マスタ記憶部16上のブロック位置とデータ列とを対応付ける書き込み履歴テーブル32に、書き込みデータを追記する。
続いて、データ記憶制御部14は、追記された書き込み履歴テーブル32のサイズが上限に達した時、または任意のタイミングでマスタ記憶部16へ反映処理を行う。その際、書き込みデータをマスタ記憶部16へ書き込む前に、まず、データ記憶制御部14は、マスタ記憶部16上の上書きされるデータをスナップショット記憶部17へと退避する(S101)。すなわち、データ記憶制御部14は、マスタ記憶部16のマスタファイル30から、書き込みデータのブロック位置に記憶されているデータを読み出し、スナップショット記憶部17のスナップショットファイル40における対応するブロック位置へ、読み出したデータを書き込む。なお、スナップショット記憶部17は、複数世代分のスナップショットファイル40を作成し記憶していてもよい。
その後、データ記憶制御部14は、マスタ記憶部16へ書き込み履歴記憶部15のデータを反映する(S102)。すなわち、データ記憶制御部14は、書き込み履歴記憶部15に追記された書き込みデータを読み出し、マスタ記憶部16のマスタファイル30(同期データ)における対応するブロック位置へ、読み出したデータを書き込む。
スナップショット(スナップショットファイル40)は、データミラー型クラスタを構成する各ノード上で同様の動作にて作成する。すなわち、待機系のノード20においても、データ記憶制御部24が、アプリケーション処理部21もしくは現用系のノード10から書き込みデータを取得すると、上記のS100〜S102と同様に、書き込み履歴記憶部25にデータを追記し、マスタ記憶部26のデータをスナップショット記憶部27のスナップショットに書き込み、マスタ記憶部26にデータを上書きする。
次に、図4フローチャートを用いて、本実施の形態に係る現用系のノード10の動作概要について説明する。まず、データ記憶制御部14は、同期すべき書き込みデータ(更新データ)を書き込み履歴記憶部15より取得する(S110)。なお、書き込み履歴記憶部15の書き込みデータは、図3で説明したように、マスタ記憶部16に書き込まれる。続いて、データ記憶制御部14は、マスタ記憶部16およびスナップショット記憶部17のデータを参照し、S110で取得した書き込みデータと重複するデータを検索する(S111)。
S111において、マスタ記憶部16およびスナップショット記憶部17に重複するデータ(同一データ)が見つからなかった場合、書き込みデータは新規の書き込みデータであるため、データ記憶制御部14は、新規の書き込みデータとしてそのままのデータ(転送データ)をノード20のデータ記憶制御部24へ転送する(S112)。すなわち、データ記憶制御部14は、書き込みデータを含む転送データを生成し、生成した転送データをノード20へ送信する。
一方、S111において、マスタ記憶部16またはスナップショット記憶部17のいずれかに重複するデータ(同一データ)が見つかった場合、データ記憶制御部14は、書き込みデータに代えて、マスタ記憶部16またはスナップショット記憶部17の保持位置を示す同一データ保持位置情報(ポインタ)のみのデータ(転送データ)をノード20のデータ記憶制御部24へ転送する(S113)。すなわち、データ記憶制御部14は、書き込みデータのポインタ情報を含む転送データを生成し、生成した転送データをノード20へ送信する。
次に、図5のフローチャートを用いて、本実施の形態に係る待機系のノード20の動作概要について説明する。まず、データ記憶制御部24は、ノード10のデータ記憶制御部14から転送データを受信する(S120)。続いて、データ記憶制御部24は、S120で受信した受信データが新規の書き込みデータまたは重複データ(ポインタ)であるか否かを判定する(S121)。新規の書き込みデータか重複データかの判定は、データの内容で判定してもよいし、新規の書き込みデータか重複データかを示すフラグをノード10で設定して、このフラグにより判定してもよい。
S121において、受信データが新規の書き込みデータである場合、データ記憶制御部24は、受信データをそのまま書き込み履歴記憶部25へ記憶する(S122)。すなわち、データ記憶制御部24は、書き込みデータを含む転送データから書き込みデータを生成し、生成した書き込みデータを書き込み履歴記憶部25へ書き込む。
一方、S121において、受信データが重複データ(ポインタ)である場合、データ記憶制御部24は、受信データ内のポインタ情報によりマスタ記憶部26、およびスナップショット記憶部27を検索し(S123)、検索結果により書き込みデータを復元して、復元された完全な書き込みデータを書き込み履歴記憶部25へ記憶する(S124)。すなわち、データ記憶制御部24は、ポインタ情報を含む転送データから書き込みデータを生成し、生成した書き込みデータを書き込み履歴記憶部25へ書き込む。
S122またはS124のあと、書き込み履歴記憶部25の書き込みデータは、図3で説明したように、マスタ記憶部26に書き込まれる。
ここで、本実施の形態と比較するため、図6を用いて比較例の動作を説明する。図6は、上記特許文献3に記載された関連する重複排除技術の動作を示している。
初回のファイル書き込み時、ホスト装置201が、ファイル202(データブロック[A][B][C][A][D])を記憶装置204へ蓄積しようとしている。ホスト装置201からファイル202を受信した制御装置203は、データブロック[A]が冗長的である(重複している)ことを認識し、データブロック[A][B][C][D]を記憶装置204へ蓄積する。この時、冗長であるとされたファイル202中のデータブロック[A]は、記憶装置204に記憶された1回目のデータブロック[A]のアドレスを指し示すポインタ情報として記憶される。
2回目以降のファイル書き込みではホスト装置201が、ファイル205(データブロック[A][B][C][A][E])を記憶装置204へ蓄積しようとしている。ホスト装置201からファイル205を受信した制御装置203は、データブロック[A][B][C]が既に記憶装置204に記憶されていることを認識し、データブロック[E]のみを記憶装置204へ蓄積する。ファイル205のデータブロック[A][B][C][A]は、記憶装置204に既に記憶されているデータブロック[A][B][C]のアドレスを指し示すポインタ情報として記憶される。
次に、図7を用いて、本実施の形態に係るクラスタシステムにおける重複排除動作の具体例について説明する。まず、ノード10においてデータ記憶制御部14は、書き込み履歴記憶部15に記憶されているファイル301(データブロック[A][B][C][D][E])を読み出す(S200)。
続いて、データ記憶制御部14は、マスタ記憶部16及びスナップショット記憶部17を検索し、マスタ記憶部16のファイル302(データブロック[E][F])よりデータブロック[E]が重複し、スナップショット記憶部17のファイル303(データブロック[D][G])よりデータブロック[D]が重複していることを認識する(S201)。
続いて、データ記憶制御部14は、この検索結果から転送データ304を作成する(S202)。このとき、冗長とされたデータブロック[D][E]に対応する、マスタ記憶部16及びスナップショット記憶部17にすでに記憶されている箇所へのそれぞれのアドレスを指すポインタ情報を、データブロック[D][E]に代えて転送データ304に含める。続いて、データ記憶制御部14は、待機系ノード20のデータ記憶制御部24へ転送データ304を送信する(S203)。
続いて、ノード20において、データ記憶制御部24は、ノード10から転送データ304を受信し、受信した転送データ304に基づき、マスタ記憶部26及びスナップショット記憶部27を検索する(S204)。データ記憶制御部24は、転送データ304のポインタ情報に基づき、データブロック[D][E]のデータをマスタ記憶部26のファイル312(データブロック[E][F])と、スナップショット記憶部27のファイル313(データブロック[D][G])から取得し、ポインタ情報をデータブロック[D][E]に復元する(S205)。続いて、データ記憶制御部24は、書き込み履歴記憶部25へ復元したファイル311(データブロック[A][B][C][D][E])を書き込む(S206)。
図6及び図7を用いて、本実施の形態の効果を説明する。図6に示した比較例の重複排除技術では、記憶装置204のデータブロック[E]の冗長性まで検出できるが、図7のようにスナップショット記憶部を利用する本実施の形態によれば、すでに上書きされてしまっている過去に存在したデータブロック[D]も排除することが可能となり、送信データがより削減される。
すなわち、本実施の形態では、スナップショット記憶部を保持することより、現在のマスタ記憶部のデータに限らず、さらに過去のデータにまでさかのぼって重複を排除することが可能となる。スナップショット記憶部には、マスタ記憶部からはすでに上書きされ存在しなくなってしまっているデータも存在しており、それによりデータブロック[D]も転送する必要がなくなるため、さらなる転送データ量の削減が可能となる。これにより、ノード間の同期の遅延や失敗を防ぐことができるため、適切にミラーリングを行うことができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2014年10月23日に出願された日本出願特願2014−215994を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1 クラスタシステム
10 ノード
11 アプリケーション処理部
12 クラスタウェア処理部
13 ファイルシステム
14 データ記憶制御部
15 書き込み履歴記憶部
16 マスタ記憶部
17 スナップショット記憶部
18 送受信部
20 ノード
21 アプリケーション処理部
22 クラスタウェア処理部
23 ファイルシステム
24 データ記憶制御部
25 書き込み履歴記憶部
26 マスタ記憶部
27 スナップショット記憶部
28 送受信部
30 マスタファイル
31 ブロック
32 履歴テーブル
40 スナップショットファイル
41 ブロック
50 ネットワーク
100 クラスタシステム
110 クラスタノード
111 同期データ記憶部
112 スナップショット記憶部
113 同期データ更新部
114 転送情報生成部
115 転送情報送信部
120 クラスタノード
121 同期データ記憶部
122 スナップショット記憶部
123 同期データ更新部
124 更新データ生成部
125 転送情報受信部
201 ホスト装置
202 ファイル
203 制御装置
204 記憶装置
205 ファイル
301〜303、311、312 ファイル
304 転送データ

Claims (6)

  1. 第1及び第2のクラスタノードを備えたクラスタシステムであって、
    前記第1のクラスタノードは、
    第1の同期データを記憶する第1の同期データ記憶手段と、
    第1のスナップショットデータを記憶する第1のスナップショット記憶手段と、
    前記第1の同期データを更新データに更新する第1の同期データ更新手段と、
    前記第1のスナップショットデータに基づいて、前記更新データから転送情報を生成する転送情報生成手段と、
    前記生成された転送情報を前記第2のクラスタノードへ送信する転送情報送信手段と、
    を備え、
    前記第2のクラスタノードは、
    第2の同期データを記憶する第2の同期データ記憶手段と、
    第2のスナップショットデータを記憶する第2のスナップショット記憶手段と、
    前記第1のクラスタノードから送信された転送情報を受信する転送情報受信手段と、
    前記第2のスナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成する更新データ生成手段と、
    前記第2の同期データを前記更新データに更新する第2の同期データ更新手段と、
    を備える、クラスタシステム。
  2. 前記転送情報生成手段は、前記第1のスナップショットデータに含まれる前記更新データと同じデータを示すポインタ情報を前記転送情報とする、
    請求項1に記載のクラスタシステム。
  3. 前記転送情報生成手段は、前記第1のスナップショットデータに前記更新データと同じデータが含まれない場合、前記更新データを前記転送情報とする、
    請求項2に記載のクラスタシステム。
  4. 前記第1の同期データ記憶手段は、前記第1の同期データを含む第1のマスタデータを記憶する第1のマスタ記憶手段を備え、
    前記第1のスナップショットデータは、所定のタイミングにおける前記第1のマスタデータであり、
    前記第2の同期データ記憶手段は、前記第2の同期データを含む第2のマスタデータを記憶する第2のマスタ記憶手段を備え、
    前記第2のスナップショットデータは、所定のタイミングにおける前記第2のマスタデータである、
    請求項1乃至3のいずれか一項に記載のクラスタシステム。
  5. 前記転送情報生成手段は、前記第1のスナップショットデータ及び前記第1のマスタデータに基づいて、前記更新データから前記転送情報を生成し、
    前記更新データ生成手段は、前記第2のスナップショットデータ及び前記第2のマスタデータに基づいて、前記受信された転送情報から前記更新データを生成する、
    請求項4に記載のクラスタシステム。
  6. 第1及び第2のクラスタノードを備えたクラスタシステムにおけるクラスタ制御方法であって、
    前記第1のクラスタノードは、
    第1の同期データ記憶手段に第1の同期データを記憶し、
    第1のスナップショット記憶手段に第1のスナップショットデータを記憶し、
    前記第1の同期データを更新データに更新し、
    前記第1のスナップショットデータに基づいて、前記更新データから転送情報を生成し、
    前記生成された転送情報を前記第2のクラスタノードへ送信し、
    前記第2のクラスタノードは、
    第2の同期データ記憶手段に第2の同期データを記憶し、
    第2のスナップショット記憶手段に第2のスナップショットデータを記憶し、
    前記第1のクラスタノードから送信された転送情報を受信し、
    前記第2のスナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成し、
    前記第2の同期データを前記更新データに更新する、
    クラスタ制御方法。
JP2016555061A 2014-10-23 2015-09-30 クラスタシステム及びクラスタ制御方法 Active JP6237925B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014215994 2014-10-23
JP2014215994 2014-10-23
PCT/JP2015/004970 WO2016063461A1 (ja) 2014-10-23 2015-09-30 クラスタシステム、クラスタノード、クラスタ制御方法及びコンピュータ可読媒体

Publications (2)

Publication Number Publication Date
JPWO2016063461A1 JPWO2016063461A1 (ja) 2017-07-13
JP6237925B2 true JP6237925B2 (ja) 2017-11-29

Family

ID=55760522

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016555061A Active JP6237925B2 (ja) 2014-10-23 2015-09-30 クラスタシステム及びクラスタ制御方法

Country Status (2)

Country Link
JP (1) JP6237925B2 (ja)
WO (1) WO2016063461A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10282115B2 (en) 2017-04-13 2019-05-07 International Business Machines Corporation Object synchronization in a clustered system
CN109560951B (zh) * 2017-09-27 2023-04-07 亿阳信通股份有限公司 一种配置方法、告警实时统计方法、服务器及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005292865A (ja) * 2004-03-31 2005-10-20 Hitachi Ltd ストレージシステム及びストレージシステムのバックアップ方法
JP5084551B2 (ja) * 2008-02-26 2012-11-28 Kddi株式会社 重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラム
US8099571B1 (en) * 2008-08-06 2012-01-17 Netapp, Inc. Logical block replication with deduplication

Also Published As

Publication number Publication date
WO2016063461A1 (ja) 2016-04-28
JPWO2016063461A1 (ja) 2017-07-13

Similar Documents

Publication Publication Date Title
US9934242B2 (en) Replication of data between mirrored data sites
JP5192226B2 (ja) 待機系計算機の追加方法、計算機及び計算機システム
US10148751B1 (en) Asymmetric active-active storage for hyper-converged system
US8904231B2 (en) Synchronous local and cross-site failover in clustered storage systems
US20120303912A1 (en) Storage account migration between storage stamps
WO2014059804A1 (zh) 数据同步方法及系统
CN105159795A (zh) 数据同步方法、装置和系统
US11892982B2 (en) Facilitating immediate performance of volume resynchronization with the use of passive cache entries
US11023415B2 (en) Reducing feature dependencies of block storage used to back NAS cluster
CN106873902B (zh) 一种文件存储系统、数据调度方法及数据节点
CN111125021A (zh) 从异步远程系统有效恢复文件系统图像的一致视图的方法和系统
US20140380091A1 (en) Information processing apparatus, computer-readable recording medium having stored program for controlling information processing apparatus, and method for controlling information processing apparatus
JP2006323663A (ja) 情報処理システムとレプリケーション方法並びに差分情報保持装置とプログラム
JP6237925B2 (ja) クラスタシステム及びクラスタ制御方法
JP2012008934A (ja) 分散ファイルシステム及び分散ファイルシステムにおける冗長化方法
US8977897B2 (en) Computer-readable recording medium, data management method, and storage device
US10649862B1 (en) Reducing failback performance duration in data replication systems
JP6287308B2 (ja) レプリケーション制御システム、レプリケーション制御方法、及び、レプリケーション制御プログラム
US9779105B1 (en) Transaction logging using file-system-specific log files
JP2017167602A (ja) ストレージシステム
CN114531394A (zh) 一种数据同步方法及装置
JP5947974B2 (ja) 情報処理装置及び情報処理装置の交換支援システム並びに交換支援方法
JP6555353B2 (ja) クラスタシステム、情報処理装置、クラスタシステムの同期方法、及びプログラム
JP6891603B2 (ja) バックアップシステム、ストレージ装置、データ転送方法及びプログラム
CN111142921A (zh) 软件升级方法及装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170330

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170831

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171016

R150 Certificate of patent or registration of utility model

Ref document number: 6237925

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150