WO2016063461A1 - クラスタシステム、クラスタノード、クラスタ制御方法及びコンピュータ可読媒体 - Google Patents

クラスタシステム、クラスタノード、クラスタ制御方法及びコンピュータ可読媒体 Download PDF

Info

Publication number
WO2016063461A1
WO2016063461A1 PCT/JP2015/004970 JP2015004970W WO2016063461A1 WO 2016063461 A1 WO2016063461 A1 WO 2016063461A1 JP 2015004970 W JP2015004970 W JP 2015004970W WO 2016063461 A1 WO2016063461 A1 WO 2016063461A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
snapshot
cluster
transfer information
synchronization
Prior art date
Application number
PCT/JP2015/004970
Other languages
English (en)
French (fr)
Inventor
和幸 神田
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2016555061A priority Critical patent/JP6237925B2/ja
Publication of WO2016063461A1 publication Critical patent/WO2016063461A1/ja

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

Definitions

  • the present invention relates to a cluster system, a cluster node, a cluster control method, and a cluster control program, and more particularly to a cluster system, a cluster node, a cluster control method, and a cluster control program that perform mirroring.
  • a cluster system that constructs a redundant configuration by connecting a plurality of nodes (computers) is known.
  • nodes computers
  • the HA cluster system is composed of a plurality of nodes. Each node monitors a failure, and when an abnormality occurs in the node, a task (application) started on the node is restarted on another node. Perform switching.
  • HA cluster system As a method of taking over business data, a method using shared storage (shared disk type cluster system) and business data are synchronized between HA cluster system configuration servers, and the same data is held on the local disk of each server.
  • Format data mirror type cluster system
  • Patent Document 1 and Non-Patent Document 1 Since the data mirror type cluster system does not require a shared storage device and can ensure data redundancy, it is possible to configure an HA cluster system with good cost performance.
  • Patent Documents 2 and 3 are known as techniques related to data writing and backup.
  • an object of the present invention is to provide a cluster system, a cluster node, a cluster control method, and a cluster control program capable of appropriately performing mirroring.
  • the cluster system is a cluster system including first and second cluster nodes, and the first cluster node includes a first synchronization data storage unit that stores first synchronization data; Based on a first snapshot storage unit that stores first snapshot data, a first synchronization data update unit that updates the first synchronization data to update data, and the first snapshot data, A transfer information generation unit that generates transfer information from the update data; and a transfer information transmission unit that transmits the generated transfer information to the second cluster node.
  • a second synchronization data storage unit storing second synchronization data, a second snapshot storage unit storing second snapshot data, and the first cluster node
  • a transfer information receiving unit that receives the transfer information transmitted from the node, an update data generating unit that generates the update data from the received transfer information based on the second snapshot data, and the second A second synchronization data update unit that updates the synchronization data to the update data.
  • the cluster node includes a synchronization data storage unit that stores synchronization data, a snapshot storage unit that stores snapshot data, a synchronization data update unit that updates the synchronization data to update data, and the snapshot data And a transfer information generation unit that generates transfer information from the update data, and a transfer information transmission unit that transmits the generated transfer information to another cluster node.
  • the cluster node includes a synchronization data storage unit that stores synchronization data, a snapshot storage unit that stores snapshot data, a transfer information reception unit that receives transfer information transmitted from other cluster nodes, An update data generation unit that generates the update data from the received transfer information based on the snapshot data, and a synchronization data update unit that updates the synchronization data to the update data.
  • a cluster control method is a cluster control method in a cluster system including first and second cluster nodes, and the first cluster node stores a first synchronization in a first synchronization data storage unit. Storing data, storing first snapshot data in a first snapshot storage unit, updating the first synchronization data to update data, and updating the update data based on the first snapshot data Transfer information is generated, and the generated transfer information is transmitted to the second cluster node.
  • the second cluster node stores the second synchronization data in the second synchronization data storage unit, and Second snapshot data is stored in the second snapshot storage unit, transfer information transmitted from the first cluster node is received, and the second snap data is received. Based on Yottodeta to generate the updating data from the received transfer information is for updating the second data in synchronism with the update data.
  • the cluster control program stores synchronization data in a synchronization data storage unit, stores snapshot data in a snapshot storage unit, updates the synchronization data to update data, and based on the snapshot data, Transfer information is generated from the update data, and the generated transfer information is transmitted to another cluster node to cause the cluster node to execute processing.
  • the cluster control program stores synchronization data in a synchronization data storage unit, stores snapshot data in a snapshot storage unit, receives transfer information transmitted from other cluster nodes, and receives the snapshot data.
  • the update data is generated from the received transfer information, and the synchronization data is updated to the update data to cause the cluster node to execute processing.
  • FIG. 1 is a configuration diagram showing a schematic configuration of a cluster system according to an embodiment.
  • 1 is a configuration diagram illustrating a configuration of a cluster system according to Embodiment 1.
  • FIG. 6 is an explanatory diagram for explaining an operation of a cluster node according to Embodiment 1.
  • FIG. 4 is a flowchart showing the operation of the cluster node according to the first embodiment. 4 is a flowchart showing the operation of the cluster node according to the first embodiment. It is explanatory drawing for demonstrating operation
  • FIG. 3 is an explanatory diagram for explaining an operation of the cluster system according to the first embodiment.
  • a cluster system is configured as shown in FIG.
  • the cluster system 100 includes cluster nodes 110 and 120.
  • the cluster node (first cluster node) 110 includes a synchronous data storage unit 111, a snapshot storage unit 112, a synchronous data update unit 113, a transfer information generation unit 114, and a transfer information transmission unit 115.
  • the synchronization data storage unit 111 is a storage unit that stores synchronization data
  • the snapshot storage unit 112 is a storage unit that stores snapshot data.
  • the synchronization data update unit 113 updates the synchronization data in the synchronization data storage unit 111 to update data.
  • the transfer information generation unit 114 generates transfer information from the update data based on the snapshot data in the snapshot storage unit 112.
  • the transfer information transmission unit 115 transmits the generated transfer information to the cluster node 120.
  • the cluster node (second cluster node) 120 includes a synchronous data storage unit 121, a snapshot storage unit 122, a synchronous data update unit 123, an update data generation unit 124, and a transfer information reception unit 125.
  • the synchronization data storage unit 121 is a storage unit that stores synchronization data
  • the snapshot storage unit 122 is a storage unit that stores snapshot data.
  • the transfer information receiving unit 125 receives the transfer information transmitted from the cluster node 110.
  • the update data generation unit 124 generates update data from the received transfer information based on the snapshot data stored in the snapshot storage unit 122.
  • the synchronization data update unit 123 updates the synchronization data in the synchronization data storage unit 121 with the generated update data.
  • Patent Document 1 describes a data mirror type cluster system that accumulates difference data
  • Patent Document 2 describes a storage device that shortens the file restore processing time
  • Patent Document 3 describes that A data backup method using a deduplication technique is described.
  • none of the patent documents describes a cluster system that performs mirroring using data at an “arbitrary past” time point such as a snapshot as in the embodiment.
  • FIG. 2 shows a configuration of the cluster system 1 according to the present embodiment.
  • the cluster system 1 is a data mirror type cluster system, and includes a node 10 and a node 20 that are communicably connected via a network 50 as shown in FIG.
  • the node 10 will be described as an active node and the node 20 as a standby node.
  • a data mirror type cluster is configured in which the node 20 can use the data before the failure to continue the business.
  • the structural example of each block of FIG. 2 here, as long as the operation
  • Each configuration in the nodes 10 and 20 is configured by hardware and / or software, and may be configured by one piece of hardware or software, or may be configured by a plurality of pieces of hardware or software.
  • Each function (each process) of the nodes 10 and 20 may be realized by a computer having a CPU, a memory, and the like.
  • a cluster control program cluster control software for performing cluster control is stored in the storage device, and the functions shown in FIG. 2 are realized by executing the program stored in the storage device with a CPU (computer). Also good.
  • Non-transitory computer readable media include various types of tangible storage media (tangible storage medium). Examples of non-transitory computer-readable media include magnetic recording media (eg flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg magneto-optical discs), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable ROM), flash ROM, RAM (random access memory)) are included.
  • the program may also be supplied to the computer by various types of temporary computer-readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves.
  • the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
  • the node (first cluster node) 10 includes an application processing unit 11, a clusterware processing unit 12, a file system 13, a data storage control unit 14, a write history storage unit 15, a master storage unit 16, a snapshot storage unit 17, and transmission / reception A portion 18 is provided.
  • the application processing unit 11 executes an application that is a business program and performs processing necessary for business.
  • the application processing unit 11 executes the application while the node 10 is in the active system, and stops the application when switching from the active system to the standby system.
  • the clusterware processing unit 12 executes clusterware and performs processing necessary for configuring the HA cluster.
  • the clusterware processing unit 12 monitors the hardware and software of the node 10, and when a failure occurs in the node 10, performs a switching process from the active system to the standby system and switches the execution of the application from the node 10 to the node 20. .
  • the file system 13 allows the application processing unit 11 to access data in each storage unit.
  • the write request from the application processing unit 11 passes from the data storage control unit 14 to the write history storage unit 15 via the file system 13.
  • the data storage control unit 14 controls data stored in each storage unit. As will be described later, when data is written in the write history storage unit 15, the data storage control unit 14 refers to the master storage unit 16 and the snapshot storage unit 17 and transmits transfer data to be transmitted to the node 20. 18 is transmitted. For example, the data storage control unit 14 transfers from the update data based on the synchronous data update unit that updates the synchronous data in the master storage unit 16 via the write history storage unit 15 and the snapshot data in the snapshot storage unit 17. It can also be said to include a transfer data generation unit that generates data.
  • the write history storage unit 15 stores the block write history of the node 10.
  • the master storage unit 16 stores data serving as a master of the node 10.
  • the master storage unit 16 is a synchronization data storage unit that stores synchronization data (master data).
  • the snapshot storage unit 17 stores the replicated data at a specific point in time in the master storage unit 16.
  • the transmission / reception unit 18 transmits / receives data to / from the node 20 via the network 50. As will be described later, the transmission / reception unit 18 transmits transfer data indicating the data written in the write history storage unit 15 to the data storage control unit 24 of the node 20.
  • the node (second cluster node) 20 includes an application processing unit 21, a clusterware processing unit 22, a file system 23, a data storage control unit 24, a write history storage unit 25, a master storage unit 26, a snapshot storage unit 27, and transmission / reception. A portion 28 is provided.
  • Each block of the node 20 is basically the same as the node 10.
  • the application processing unit 21 executes the application, stops the application while the node 20 is the standby system, and starts executing the application when the standby system is switched to the active system.
  • the clusterware processing unit 22 executes the clusterware, and when a failure occurs in the active node 10, the clusterware processing unit 22 performs a switching process from the standby system to the active system and switches the execution of the application from the node 10 to the node 20.
  • the file system 23 enables access from the application processing unit 21 to data in each storage unit.
  • the data storage control unit 24 controls the data stored in each storage unit. As will be described later, when the transmission / reception unit 28 receives transfer data from the node 10, the master storage unit 26 and the snapshot storage unit 27 are referred to and generated. The written data is written into the write history storage unit 25. As a result, the data used for business is synchronized between the node 10 and the node 20.
  • the data storage control unit 24 includes an update data generation unit that generates update data from transfer data received from the node 10 based on the snapshot storage unit 27, and a master storage unit 26 via the write history storage unit 25. It can also be said that it includes a synchronization data update unit that updates the synchronization data.
  • the write history storage unit 25 stores the block write history of the node 20.
  • the master storage unit 26 stores data to be the master of the node 20.
  • the master storage unit 26 is a synchronous data storage unit that stores synchronous data (master data).
  • the snapshot storage unit 27 stores duplicate data at a specific point in time in the master storage unit 26.
  • the transmission / reception unit 28 transmits / receives data to / from the node 10 via the network 50. As will be described later, the transmission / reception unit 28 receives transfer data indicating data written in the write history storage unit 15 of the node 10 from the node 10.
  • FIG. 3 shows an example of the node 10.
  • the master storage unit 16 and the snapshot storage unit 17 have the same file format.
  • the master storage unit 16 writes / reads data to / from the master file 30 in units of blocks 31, and the snapshot storage unit 17 writes / reads data to / from the snapshot files 40 in units of blocks 41.
  • the write history storage unit 15 stores data for each block 31 of the master file 30 in the write history table 32 corresponding to the file format of the master storage unit 16.
  • the data storage control unit 14 receives write data (update data) from the file system 13 and records the received write data in the write history storage unit 15. (S100).
  • the data storage control unit 14 adds write data to the write history table 32 that associates block positions on the master storage unit 16 with data strings.
  • the data storage control unit 14 performs a reflection process on the master storage unit 16 when the size of the added write history table 32 reaches the upper limit or at an arbitrary timing.
  • the data storage control unit 14 first saves the data to be overwritten on the master storage unit 16 to the snapshot storage unit 17 (S101). That is, the data storage control unit 14 reads the data stored in the block position of the write data from the master file 30 in the master storage unit 16 and moves it to the corresponding block position in the snapshot file 40 in the snapshot storage unit 17. Write the read data.
  • the snapshot storage unit 17 may create and store snapshot files 40 for a plurality of generations.
  • the data storage control unit 14 reflects the data of the write history storage unit 15 in the master storage unit 16 (S102). That is, the data storage control unit 14 reads the write data added to the write history storage unit 15 and writes the read data to the corresponding block position in the master file 30 (synchronous data) of the master storage unit 16.
  • the snapshot is created by the same operation on each node constituting the data mirror type cluster. That is, also in the standby node 20, when the data storage control unit 24 acquires the write data from the application processing unit 21 or the active node 10, the data is stored in the write history storage unit 25 as in S100 to S102. Is written, the data in the master storage unit 26 is written to the snapshot in the snapshot storage unit 27, and the data is overwritten in the master storage unit 26.
  • the data storage control unit 14 acquires write data (update data) to be synchronized from the write history storage unit 15 (S110).
  • the write data in the write history storage unit 15 is written in the master storage unit 16 as described with reference to FIG.
  • the data storage control unit 14 refers to the data in the master storage unit 16 and the snapshot storage unit 17 and searches for data that overlaps the write data acquired in S110 (S111).
  • duplicate data (same data) is found in either the master storage unit 16 or the snapshot storage unit 17 in S111
  • the data storage control unit 14 replaces the write data with the master storage unit 16 or the snap data.
  • Data (transfer data) having only the same data holding position information (pointer) indicating the holding position of the shot storage unit 17 is transferred to the data storage control unit 24 of the node 20 (S113). That is, the data storage control unit 14 generates transfer data including pointer information of write data, and transmits the generated transfer data to the node 20.
  • the data storage control unit 24 receives transfer data from the data storage control unit 14 of the node 10 (S120). Subsequently, the data storage control unit 24 determines whether or not the received data received in S120 is new write data or duplicate data (pointer) (S121). Whether the data is new write data or duplicate data may be determined based on the contents of the data, or a flag indicating whether the data is new write data or duplicate data is set in the node 10 and may be determined based on this flag. .
  • the data storage control unit 24 stores the received data as it is in the write history storage unit 25 (S122). That is, the data storage control unit 24 generates write data from the transfer data including the write data, and writes the generated write data to the write history storage unit 25.
  • the data storage control unit 24 searches the master storage unit 26 and the snapshot storage unit 27 based on the pointer information in the received data (S123). Write data is restored according to the result, and the restored complete write data is stored in the write history storage unit 25 (S124). That is, the data storage control unit 24 generates write data from transfer data including pointer information, and writes the generated write data to the write history storage unit 25.
  • the write data in the write history storage unit 25 is written into the master storage unit 26 as described with reference to FIG.
  • FIG. 6 shows the operation of the related deduplication technique described in Patent Document 3.
  • the host device 201 When the file is written for the first time, the host device 201 is trying to accumulate the file 202 (data block [A] [B] [C] [A] [D]) in the storage device 204.
  • the control device 203 that has received the file 202 from the host device 201 recognizes that the data block [A] is redundant (overlapping), and stores the data block [A] [B] [C] [D]. Accumulate in the storage device 204.
  • the data block [A] in the file 202 determined to be redundant is stored as pointer information indicating the address of the first data block [A] stored in the storage device 204.
  • the host device 201 is trying to store the file 205 (data block [A] [B] [C] [A] [E]) in the storage device 204.
  • the control device 203 that has received the file 205 from the host device 201 recognizes that the data block [A] [B] [C] is already stored in the storage device 204, and stores only the data block [E] in the storage device 204. To accumulate.
  • the data blocks [A] [B] [C] [A] of the file 205 are stored as pointer information indicating the addresses of the data blocks [A] [B] [C] already stored in the storage device 204.
  • the data storage control unit 14 reads the file 301 (data block [A] [B] [C] [D] [E]) stored in the write history storage unit 15 (S200).
  • the data storage control unit 14 searches the master storage unit 16 and the snapshot storage unit 17, and the data block [E] is duplicated from the file 302 (data block [E] [F]) in the master storage unit 16. Then, it is recognized that the data block [D] is duplicated from the file 303 (data block [D] [G]) in the snapshot storage unit 17 (S201).
  • the data storage control unit 14 creates transfer data 304 from the search result (S202). At this time, pointer information indicating respective addresses to locations already stored in the master storage unit 16 and the snapshot storage unit 17 corresponding to the redundant data block [D] [E] is stored in the data block [ D] instead of [E] is included in the transfer data 304. Subsequently, the data storage control unit 14 transmits the transfer data 304 to the data storage control unit 24 of the standby node 20 (S203).
  • the data storage control unit 24 receives the transfer data 304 from the node 10, and searches the master storage unit 26 and the snapshot storage unit 27 based on the received transfer data 304 (S204). Based on the pointer information of the transfer data 304, the data storage control unit 24 converts the data of the data block [D] [E] into the file 312 (data block [E] [F]) of the master storage unit 26 and the snapshot storage unit. 27 is obtained from the file 313 (data block [D] [G]) and the pointer information is restored to the data block [D] [E] (S205). Subsequently, the data storage control unit 24 writes the restored file 311 (data blocks [A] [B] [C] [D] [E]) into the writing history storage unit 25 (S206).
  • the deduplication technique of the comparative example shown in FIG. 6 can detect even the redundancy of the data block [E] in the storage device 204, but according to the present embodiment using the snapshot storage unit as shown in FIG. Data blocks [D] existing in the past that have already been overwritten can be eliminated, and transmission data is further reduced.
  • the snapshot storage unit by holding the snapshot storage unit, it is possible to eliminate duplication by going back to past data as well as data of the current master storage unit.
  • the snapshot storage unit there is also data that has already been overwritten from the master storage unit, and there is no need to transfer the data block [D]. Is possible. As a result, synchronization delay or failure between nodes can be prevented, so that mirroring can be performed appropriately.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Abstract

クラスタシステム(100)のクラスタノード(110)は、同期データ記憶部(111)とスナップショット記憶部(112)、同期データを更新データに更新する同期データ更新部(113)、スナップショットデータに基づいて更新データから転送情報を生成する転送情報生成部(114)、転送情報を送信する転送情報送信部(115)を備える。クラスタノード(120)は、同期データ記憶部(121)をスナップショット記憶部(122)、転送情報を受信する転送情報受信部(125)、スナップショットデータに基づいて転送情報から更新データを生成する更新データ生成部(124)、同期データを更新データに更新する同期データ更新部(123)を備える。これにより、適切にミラーリングを行うことが可能なクラスタシステムを提供する。

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 (10)

  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.  同期データを記憶する同期データ記憶手段と、
     スナップショットデータを記憶するスナップショット記憶手段と、
     前記同期データを更新データに更新する同期データ更新手段と、
     前記スナップショットデータに基づいて、前記更新データから転送情報を生成する転送情報生成手段と、
     前記生成された転送情報を他のクラスタノードへ送信する転送情報送信手段と、
     を備える、クラスタノード。
  7.  同期データを記憶する同期データ記憶手段と、
     スナップショットデータを記憶するスナップショット記憶手段と、
     他のクラスタノードから送信された転送情報を受信する転送情報受信手段と、
     前記スナップショットデータに基づいて、前記受信された転送情報から更新データを生成する更新データ生成手段と、
     前記同期データを前記更新データに更新する同期データ更新手段と、
     を備える、クラスタノード。
  8.  第1及び第2のクラスタノードを備えたクラスタシステムにおけるクラスタ制御方法であって、
     前記第1のクラスタノードは、
      第1の同期データ記憶手段に第1の同期データを記憶し、
      第1のスナップショット記憶手段に第1のスナップショットデータを記憶し、
      前記第1の同期データを更新データに更新し、
      前記第1のスナップショットデータに基づいて、前記更新データから転送情報を生成し、
      前記生成された転送情報を前記第2のクラスタノードへ送信し、
     前記第2のクラスタノードは、
      第2の同期データ記憶手段に第2の同期データを記憶し、
      第2のスナップショット記憶手段に第2のスナップショットデータを記憶し、
      前記第1のクラスタノードから送信された転送情報を受信し、
      前記第2のスナップショットデータに基づいて、前記受信された転送情報から前記更新データを生成し、
      前記第2の同期データを前記更新データに更新する、
     クラスタ制御方法。
  9.  同期データ記憶手段に同期データを記憶し、
     スナップショット記憶手段にスナップショットデータを記憶し、
     前記同期データを更新データに更新し、
     前記スナップショットデータに基づいて、前記更新データから転送情報を生成し、
     前記生成された転送情報を他のクラスタノードへ送信する、
     処理をクラスタノードに実行させるためのクラスタ制御プログラムが格納された非一時的なコンピュータ可読媒体。
  10.  同期データ記憶手段に同期データを記憶し、
     スナップショット記憶手段にスナップショットデータを記憶し、
     他のクラスタノードから送信された転送情報を受信し、
     前記スナップショットデータに基づいて、前記受信された転送情報から更新データを生成し、
     前記同期データを前記更新データに更新する、
     処理をクラスタノードに実行させるためのクラスタ制御プログラムが格納された非一時的なコンピュータ可読媒体。
PCT/JP2015/004970 2014-10-23 2015-09-30 クラスタシステム、クラスタノード、クラスタ制御方法及びコンピュータ可読媒体 WO2016063461A1 (ja)

Priority Applications (1)

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

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014215994 2014-10-23
JP2014-215994 2014-10-23

Publications (1)

Publication Number Publication Date
WO2016063461A1 true WO2016063461A1 (ja) 2016-04-28

Family

ID=55760522

Family Applications (1)

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

Country Status (2)

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

Cited By (2)

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

Citations (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 ストレージシステム及びストレージシステムのバックアップ方法
JP2009205201A (ja) * 2008-02-26 2009-09-10 Kddi Corp 重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラム
US8099571B1 (en) * 2008-08-06 2012-01-17 Netapp, Inc. Logical block replication with deduplication

Patent Citations (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 ストレージシステム及びストレージシステムのバックアップ方法
JP2009205201A (ja) * 2008-02-26 2009-09-10 Kddi Corp 重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラム
US8099571B1 (en) * 2008-08-06 2012-01-17 Netapp, Inc. Logical block replication with deduplication

Cited By (5)

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

Also Published As

Publication number Publication date
JPWO2016063461A1 (ja) 2017-07-13
JP6237925B2 (ja) 2017-11-29

Similar Documents

Publication Publication Date Title
US9934242B2 (en) Replication of data between mirrored data sites
US10176064B2 (en) Granular consistency group replication
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
JP2007249776A (ja) データベース複製プログラム、データベース複製装置およびデータベース複製方法
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
US20220091749A1 (en) Resilient implementation of client file operations and replication
CN106873902B (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) クラスタシステム及びクラスタ制御方法
CN109254873B (zh) 数据备份方法、相关装置及系统
JP2012008934A (ja) 分散ファイルシステム及び分散ファイルシステムにおける冗長化方法
US10649862B1 (en) Reducing failback performance duration in data replication systems
JP6287308B2 (ja) レプリケーション制御システム、レプリケーション制御方法、及び、レプリケーション制御プログラム
US20130138999A1 (en) Computer-readable recording medium, data management method, and storage device
US9779105B1 (en) Transaction logging using file-system-specific log files
CN109992447B (zh) 数据复制方法、装置及存储介质
JP2017167602A (ja) ストレージシステム
JP2007219809A (ja) データ記憶システム、データ記憶方法、データ記憶プログラム
CN114531394A (zh) 一种数据同步方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15853112

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016555061

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15853112

Country of ref document: EP

Kind code of ref document: A1