WO2017013791A1 - Data backup system - Google Patents

Data backup system Download PDF

Info

Publication number
WO2017013791A1
WO2017013791A1 PCT/JP2015/070987 JP2015070987W WO2017013791A1 WO 2017013791 A1 WO2017013791 A1 WO 2017013791A1 JP 2015070987 W JP2015070987 W JP 2015070987W WO 2017013791 A1 WO2017013791 A1 WO 2017013791A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
server
application
synchronization
application program
Prior art date
Application number
PCT/JP2015/070987
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2015/070987 priority Critical patent/WO2017013791A1/en
Priority to JP2017506949A priority patent/JPWO2017013791A1/en
Publication of WO2017013791A1 publication Critical patent/WO2017013791A1/en

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/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 synchronization management in backup of application data.
  • DR disaster prevention
  • BCP business continuity plan
  • the data center backs up data to another data center (hereinafter referred to as a remote data center) installed at a remote location.
  • a remote data center another data center
  • data backup data synchronization
  • matching the contents of data in a remote data center by backup is expressed as “synchronize”.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2012-199729
  • Patent Document 2 Japanese Patent Publication No. 2008-524677 disclose a data synchronization method using a data synchronization server between data centers.
  • Patent Document 1 discloses a method in which a plurality of data synchronization servers connected to a network between data centers controls a data transmission rate for each of a plurality of applications as clients (summary).
  • Patent document 2 discloses a method for processing an empty update event in a three-layer synchronization system having a client, a synchronization server, and a data server. The method involves detecting a synchronization request to synchronize the client data store with the data server data store, and updating the data based on a pre-established index before the synchronization request is communicated to the synchronization server. And a step of selectively starting a synchronization event based on a result of the determination step ([0007]).
  • IoT Internet of Things
  • M2M Machine to Machine
  • Servers (or systems) responsible for these services are also required to process messages sent and received by a huge number of communication terminals (for example, smartphones, sensor devices, etc.) and high availability as social infrastructure.
  • the data center or enterprise system responsible for the services as described above performs data backup to the remote data center, and has the problem of complicated synchronization management and failure switching work for each application.
  • Patent Document 1 discloses data synchronization management between data synchronization servers, but does not specifically disclose data synchronization management of other applications, that is, end-to-end synchronization management from the synchronization source to the synchronization destination of the application. .
  • Patent Document 2 discloses a data backup method for preventing a client that is a synchronization source from losing data when a failure occurs.
  • a data synchronization server, a network between data centers, a method for managing synchronization between remote data centers, and a failure It does not disclose how to switch sometimes.
  • the synchronization destination of the remote data center Unable to recover / continue service using application.
  • the data center operator uses the update log indicating the update history of the synchronization source application data and the operation command to check the synchronization difference between the synchronization source application and the synchronization destination application data.
  • This work has become more complicated due to the diversification of applications.
  • failure switching time the time during which the service is stopped (hereinafter referred to as failure switching time) increases and the availability decreases.
  • a typical example of the present invention executes a first application server that executes a first application program, a second application program of the same type as the first application program, and holds backup data of the first application program.
  • a first data synchronization server that holds first management information for managing a synchronization state between the second application server, the first application program, and the second application program, the first application program, and the second application
  • a second data synchronization server that holds second management information for managing a synchronization state with the program, the first data synchronization server from the first application server via the first network
  • the app Update data obtained by a transmission program, and the update data is transferred to the second data synchronization server via a second network, and the second data synchronization server transmits the update data via a third network.
  • the information on the synchronization state between the first application program and the second application program in the second management information is updated
  • a completion notification indicating completion of backup of the update data to the second application server is transmitted to the first data synchronization server via the second network.
  • the first data synchronization server notifies the completion notification.
  • the end-to-end data synchronization state between application programs can be managed.
  • the system configuration example in embodiment is shown.
  • the structural example of a data synchronous server is shown.
  • the example of information which the data storage part of a data synchronous server stores is shown.
  • the structural example of an application server is shown.
  • the structural example of the file interface for a synchronization of an application server is shown.
  • An example of information stored in the disk device of the application server is shown.
  • An example of an application synchronization management table is shown.
  • An example of a failure processing table is shown.
  • An example of a sequence when data synchronization processing is normal is shown.
  • An example of a sequence at the time of failure in data synchronization processing is shown.
  • the example of the sequence of the switching process at the time of a failure is shown.
  • the example of the application registration sequence of a data synchronous server is shown.
  • FIG. 1 is a block diagram showing a computer system configuration of the present embodiment.
  • the computer system according to this embodiment includes a plurality of data centers 109 and 119.
  • the data centers 109 and 119 are installed at remote locations and are connected by a network 108 between data centers.
  • the communication terminal 101 is connected to the data centers 109 and 119 via the service network 102.
  • the data center 109 includes a load balancer 103, a plurality of application servers 104A to 104C, a data synchronization server 106, an operation management server 107, and an internal network connecting them.
  • the data center 119 includes a load balancer 113, a plurality of application servers 114A to 104C, a data synchronization server 116, an operation management server 117, and an internal network connecting them.
  • Application servers 104A to 104C constitute a pair with application servers 114A to 114C, respectively. Each pair is a synchronous pair, and updates in one application server are copied to the other application server. In the following description, it is assumed that there is one application program executed by the application servers 104A to 104C and 114A to 114C.
  • the application server may execute a plurality of application programs.
  • the application servers 114A to 114C of the data center 109 provide services at normal times.
  • the application servers 114A to 114C of the data center 119 are backups for disaster recovery (DR) and business continuity plan (BCP). Updates in the application servers 114A to 114C are backed up and copied to the application servers 114A to 114C.
  • DR disaster recovery
  • BCP business continuity plan
  • the communication terminal 101 indicates a terminal device capable of data communication such as a mobile phone terminal, a tablet, a personal computer, a sensor device, a car, and a meter.
  • the communication terminal 101 is connected to the application servers 104A to 104C via the service network 102 and the load balancer 103.
  • the user executes a program installed in the communication terminal 101, and the communication terminal 101 uses the services provided by the application servers 104A to 104C by performing data communication with the active application servers 104A to 104C.
  • the service network 102 is a network that connects the communication terminal 101 and the data centers 109 and 119, and is, for example, a wireless or wired network and network equipment provided by a communication carrier.
  • a network form such as a smart grid is also applicable to the service network 102.
  • the load balancer 103 performs load distribution processing for distributing data transmitted from the communication terminal 101 to any of the application servers 104A to 104C, and processing for stopping data distribution when a failure of the application servers 104A to 104C is detected. Do.
  • the application servers 104A to 104C are physical servers or virtual servers that provide services to the communication terminal 101.
  • the application servers 104A to 104C hold predetermined data for realizing services.
  • the application program holds a data store for storing data such as a relational database (RDB) and a key-value store (KVS) in the program, uses the data store as middleware, or , Itself is a data store such as RDB or KVS.
  • RDB relational database
  • KVS key-value store
  • the program that holds the data store inside is, for example, a user information management server control program such as a mailbox or an online storage system.
  • the target data of the data synchronization process of this embodiment is not limited as long as it is data stored in an application.
  • the data synchronization server 106 acquires data updated by any one of the application servers 104A to 104C, for example, the application server 104A, and transmits the data synchronization server via the inter-data center network 108. Data is transmitted to 116.
  • the application server 114 ⁇ / b> A corresponding to the synchronization destination acquires update data from the data synchronization server 116.
  • a process of copying one data of the application servers 104A to 104C to a corresponding one of the application servers 114A to 114C of the remote data center 119 is referred to as a data synchronization process. Copying data from one device to another is called data synchronization. If any one of the application servers 104A to 104C matches all data of the corresponding application server among the application servers 114A to 114C, it is said that those application servers are synchronized.
  • the data center 109 includes a plurality of data synchronization servers 106.
  • the data stores of the plurality of data synchronization servers 106 are configured by in-memory type distributed KVS. By copying the same data and holding it in the memory of a plurality of data synchronization servers 106, a storage area that can be accessed at high speed is realized.
  • the data synchronization server 106 includes an in-memory distributed KVS storage unit.
  • the number of data synchronization servers 106 existing in the data center 109 may be one.
  • the data center 119 includes a data synchronization server 116. The explanation is applied to the number of data synchronization servers 116 and the data store configuration thereof in the same manner as the data synchronization server 106.
  • the inter-data center network 108 is a network that connects the data centers 109 and 119, and is, for example, a wireless or wired network and network equipment provided by a communication carrier.
  • Application servers 114A to 114C are standby servers 104A to 104C. When a failure occurs in any of the application servers 104A to 104C, the corresponding standby server starts providing a service to the communication terminal 101.
  • One data center may include a standby application server and a standby application server of different application server pairs.
  • the load balancer 113 performs the same process as the load balancer 103.
  • the system configuration to which the data synchronization of this embodiment can be applied is not limited to the configuration in FIG. 1, but can be applied to systems having other configurations.
  • an in-company system may be applied to the data center, and the data synchronization of this embodiment can be applied to a system including three or more data centers.
  • FIG. 2A shows a hardware configuration example of an information processing apparatus that implements the data synchronization server 106.
  • the configuration of the data synchronization server 116 is the same.
  • An information processing apparatus that realizes a data synchronization server includes a processor 202, a volatile main memory 206, a disk device 209 that is a nonvolatile auxiliary storage device, and an input / output for transmitting / receiving data to / from the data center network 108.
  • the circuit interface 203 includes an internal communication line (bus) connecting them.
  • the main memory 206 stores a data synchronization server program 204 and a data store program 205, which are executed by the processor 202.
  • the data synchronization server program 204 and the data store program 205 may be stored in advance in the disk device 209 including the main memory 207 or a non-temporary storage medium.
  • the programs 204 and 205 are introduced into the main memory 207 or the disk device 209 via a removable non-transitory storage medium or communication medium (that is, a network or a digital signal or a carrier wave that propagates through the medium) (not shown). Also good.
  • the disk device 209 further stores data, logs, setting files, and the like output from the data synchronization server program 204 or the data store program 205.
  • the content described below is realized as a function of the data synchronization server 106 when the data synchronization server program 204 or the data store program 205 is executed by the processor 202.
  • the data store program 205 holds data in the data storage unit 208.
  • the data store program 205 is an in-memory distributed KVS, and the data storage unit 208 is a storage area that can be accessed at a high speed and data durability is guaranteed.
  • the data store program 205 is not limited to the storage area of the main memory 206, but is stored in the data storage unit 208 in a nonvolatile memory such as an SSD (Solid State Drive) or an external storage via a SAN (Storage Area Network).
  • a device such as NAS (Network Attached Storage), or the like can be applied.
  • FIG. 2B shows data stored in the data storage unit 208.
  • the data storage unit 208 stores an application synchronization management table 231, application synchronization data 232, and failure processing table 233.
  • the application synchronization management table 231 stores information for managing an end-to-end synchronization state between the application servers 104A to 104C and the application servers 114A to 114C of the remote data center 119.
  • the application synchronization data 232 stores data (hereinafter referred to as update data) transmitted (synchronized) from the application servers 104A to 104C to the application servers 114A to 114C of the remote data center 119.
  • the failure processing table 233 stores information on the location where a failure has occurred and processing according to the failure status.
  • the location of the failure includes, for example, the application servers 104A to 114C, the application servers 114A to 114C, the remote data center data synchronization server 116, the inter-data center network 108, and the like.
  • FIG. 3A shows a hardware configuration example of an information processing apparatus that realizes the application servers 104A to 104C.
  • the configuration of the application servers 114A to 114C is the same.
  • An information processing apparatus that implements an application server includes a processor 302, a volatile main memory 307, a disk device 309 that is a nonvolatile auxiliary storage device, and an input / output for transmitting and receiving data to and from the network in the data center 109.
  • the circuit interface 303 includes an internal communication line (bus) that connects them.
  • the main memory 307 stores an application program 304, a synchronization file interface (file IF) 305, and a data synchronization server connection program 306, which are executed by the processor 302.
  • the application program 304 and the data synchronization server connection program 306 may be stored in advance in the main memory 307 or the disk device 309 including a non-temporary storage medium.
  • the programs 304 and 306 are introduced into the main memory 307 or the disk device 309 via a removable non-transitory storage medium or communication medium (that is, a network or a digital signal or a carrier wave that propagates through the medium) (not shown). Also good.
  • a removable non-transitory storage medium or communication medium that is, a network or a digital signal or a carrier wave that propagates through the medium
  • the synchronization file interface 305 is an interface for outputting a file for data synchronization from the application program 304.
  • a general file interface is provided by an OS (Operating System) and stores data in the main memory 307 or the disk device 309.
  • the synchronization file interface 305 of this example is connected to the data synchronization server connection program 306.
  • the synchronization file interface 305 eliminates the need for access to the disk device 309 for storing update data and additional processing for synchronization processing within the application for synchronization processing, such as application server I / O and CPU. Resource consumption can be reduced. As a result, the performance degradation of the application server and the influence on the service provided to the communication terminal can be reduced.
  • FUSE Fesystem in Userspace
  • FUSE is a function that can create a unique file system without modifying the OS.
  • the application program 304 can access the synchronization file interface 305 like a general file system.
  • the access contents (data) are passed to the data synchronization server connection program 306 via FUSE.
  • applications such as RDB have a function of outputting update data to a file interface.
  • the application program 304 outputs an update data file to the synchronization file interface 305.
  • the synchronization file interface 305 enables the data synchronization server connection program 306 to acquire update data of the application program 304 without modifying the application program 304.
  • the application program 304 When a file system based on FUSE is provided, the application program 304 stores an update data file in a specific directory. The OS transfers the file stored in the file system to the data synchronization server connection program 306.
  • the data synchronization server connection program 306 acquires update data via the synchronization file interface 305.
  • the data synchronization server connection program 306 transmits update data and additional information related to the update data to the data synchronization server 106.
  • the additional information includes, for example, an application identifier and Data_ID described later.
  • the data synchronization server connection program 306 communicates with the data synchronization server 106 for synchronization management or survival monitoring.
  • FIG. 3B shows a configuration example of the synchronization file interface 305.
  • the synchronization file interface 305 stores a transaction log 321 and an error log 322.
  • the synchronization file interface 305 is merely an interface for data transfer, and these data do not have an entity (empty file).
  • the transaction log 321 stores update data of the application program 304.
  • the transaction log 321 is an empty file, and the substance of the update data is transferred to the data synchronization server connection program 306.
  • a general application such as RDB has a function of outputting update data as a transaction log. Data can be synchronized between application servers by causing the transaction log to be taken into the RDB of the remote data center.
  • the data synchronization server 106 acquires update data that is the contents of the transaction log 321, and the data synchronization server 116 to which the update data is transferred sends the update data to the corresponding application server in the data center 119.
  • Data synchronization processing is realized by reading.
  • the error log 322 is used by the data synchronization server connection program 306 to notify an error of the application program 304 or an error in communication with the data synchronization server 106.
  • the error log 322 stores a file indicating error information output by the data synchronization server connection program 306.
  • the error log 322 is an empty file, and the file output from the data synchronization server connection program 306 is transferred to a transmission program (not shown).
  • the transmission program transfers the file to the operation management server 107, and the display device of the operation management server 107 displays the error information. As a result, the error is notified to the operator.
  • the error information may be notified to the operator by the application server. As a result, the latest error is immediately notified to the operator.
  • FIG. 3C shows data stored in the disk device 309.
  • the disk device 309 stores a save log 331, an error log 332, and an application setting file 333.
  • the save log 331, the error log 332, and the application setting file 333 may be stored in the main memory 307.
  • the save log 331 indicates that the update data and the additional information cannot be transmitted to the data synchronization server 106 within a predetermined time and the data synchronization server connection program 306 determines that a temporary failure has occurred. And a file for outputting additional information. With the save log 331, update data at the time of a temporary communication failure can be transmitted after recovery.
  • the error log 332 stores error information output by the application program 304.
  • the application setting file 323 stores setting information that the application program 304 follows.
  • the operation management server 107 stores an application setting file 323.
  • the application setting file 323 is referred to by the application program 304 and includes information such as a transaction log update interval, a transaction log file size, a transaction log output destination, and a file name.
  • FIG. 4A shows an example of the configuration of the application synchronization management table 231 held by the data synchronization servers 106 and 116.
  • the application synchronization management table 231 is used to manage the synchronization state between data synchronization servers and the synchronization state between application servers.
  • the application server 104 is one of the application servers 104A to 104C
  • the application server 114 is one of the application servers 114A to 114C, and forms a pair with the application server 104.
  • the application server 104 is an active application server that provides services
  • the application server 114 is a standby application server.
  • Each entry of the application synchronization management table 231 includes a management ID 401, application information 402, a data synchronization server synchronization state 403, an application synchronization state 404, operation information 405, and option information 406.
  • Management ID 401 is an identifier for managing each entry in the application synchronization management table 231.
  • One entry of management ID 401 stores registration information of one application program 304.
  • Application information 402 indicates information of an application program 304 that is a target of data synchronization processing. For example, information such as an application identifier, RDB, KVS, an application type such as an original user application, a version, and an application-specific data synchronization method is stored.
  • the application information 402 may store information on an application server that executes an application program.
  • the data synchronization server synchronization state 403 indicates the synchronization state of data held between the data synchronization server 106 and the data synchronization server 116.
  • the data synchronization server synchronization state 403 Indicates “synchronization OK”.
  • the data synchronization server synchronization state 403 is , “Synchronous NG”.
  • the synchronization state 403 between the data synchronization servers is “synchronized”. Indicates.
  • the data synchronization server synchronization state 403 further indicates Com_ID and Data_ID.
  • Com_ID is an ID that counts communication transactions for data synchronization between the data synchronization servers 106 and 116.
  • Data_ID is an ID of data transferred between the data synchronization servers 106 and 116.
  • the update data file is transferred from the application server 104 to the data synchronization server 106.
  • Data_ID indicating a version is assigned to the update data file.
  • Com_ID is assigned to the transfer (transaction) of the data synchronization servers 106 and 116 of the update data file.
  • the data synchronization server 106 transmits Data_ID and Com_ID together with the update data file to the data synchronization server 116.
  • the synchronization state 403 between data synchronization servers indicates the Com_ID and Data_ID of the last update data file that has been synchronized last, that is, that has been normally transferred between the data synchronization servers 106 and 116. Each ID includes information on the synchronized time.
  • the data synchronization server synchronization state 403 may include checksum information for confirming whether the data contents are correct. In addition to the information that the synchronization state 403 between the data synchronization servers is “synchronizing”, the Com_ID and Data_ID of the update data being synchronized may be indicated.
  • Application synchronization state 404 indicates an end-to-end synchronization state between the application servers 104 and 114.
  • the application synchronization state 404 indicates “synchronization OK”, and further indicates Data_ID of the last update data that has been synchronized.
  • the two application servers 104 and 114 match, that is, when all update data of the application in the application server 104 is reflected in the application server 114, the two application servers 104 and 114 In, the application is synchronized.
  • the application synchronization state 404 indicates “during remote synchronization”.
  • the application synchronization state 404 indicates the Data_ID currently being processed and the final synchronization Data_ID for which the most recent synchronization has been completed.
  • the application synchronization state 404 When the end-to-end synchronization processing is stopped, the application synchronization state 404 indicates “synchronization NG”. The application synchronization state 404 further indicates the detailed error factor and the final synchronization Data_ID.
  • the data synchronization server synchronization state 403 allows the operator to quickly identify the failure location and the data synchronized server when a failure occurs.
  • the data synchronization server synchronization state 403 may be omitted.
  • the operation information 405 indicates the operation status of the application server of the data center (DC) 109, 119.
  • the operation information 405 indicates the identifier of the data center to which the application server belongs.
  • the operation information 405 When the application server is in an active state where a service is provided to the communication terminal 101, the operation information 405 indicates “(A)”. When the application server is in a standby state operating as a data backup destination of the active application server, the operation information 405 indicates “(S)”. When the operation status of the application server cannot be confirmed or is stopped, the operation information 405 indicates “( ⁇ )”.
  • Option information 406 indicates additional information related to the synchronization processing of the application server.
  • priority indicates the priority between applications of the synchronization processing by the data synchronization server. Synchronization processing of an application with a high priority is executed before an application with a low priority.
  • Multiplicity indicates the number of data centers that execute synchronization (backup).
  • Load balancer closed (DC2)” indicates a state in which the load balancer of the data center DC2 closes the service for the application server that executes the application and stops the service.
  • the application synchronization management table 231 stores information for associating the application server with the application program.
  • FIG. 4B shows an example of the failure time processing table 233 of the data synchronization servers 106 and 116.
  • the data synchronization servers 106 and 116 hold one failure processing table 233 for each application server in the same data center that is the target of data synchronization processing.
  • the data synchronization servers 106 and 116 execute the synchronization monitoring in FIG. 5 and the failure handling processing and switching processing shown in FIGS.
  • the failure time processing table 233 can realize failure time processing according to the location where the failure occurred.
  • the failure processing table 233 includes a failure point 451, a synchronization monitoring method 452, temporary failure processing information 453, failure processing information 454, and option information 455.
  • the failure point 451 indicates the location where the failure has occurred.
  • the location where the failure occurs is, for example, the application server 104 (local) in the same data center 109 other than the data synchronization server 106, the application server 114 in the remote data center 119, the data synchronization server 116, and the inter-data center network 108.
  • the synchronization monitoring method 452 indicates a method for the data synchronization server 106 to monitor the synchronization state and the survival state of the failure point 451. For example, when the target is the application server 104, the synchronization monitoring method 452 indicates file monitoring via the synchronization file interface 305 by the data synchronization server connection program 306 and synchronization monitoring with the data synchronization server connection program 306. The synchronization monitoring method 452 depends on the application program 304 or application information 402 of the application server 104.
  • Temporary failure processing information 453 indicates time-out information for the data synchronization server 106 to detect a temporary failure at the failure point 453 and processing content information after the temporary failure.
  • the failure processing information 454 indicates information for detecting a permanent failure that needs to be subjected to a switching process and the like, and information on processing contents after the failure.
  • the option information 455 indicates additional information related to failure processing, for example, information such as past failure history.
  • initial settings corresponding to the application information 402 are determined in advance and are generated when the data synchronization server 106 registers an application.
  • the operator can change the failure processing table 233 from the operation management server 107.
  • the data synchronization server 106 may determine the communication status by synchronization monitoring communication or the like, and dynamically change settings such as timeout for detecting the failure in the temporary failure processing information 453 and the failure processing information 454.
  • FIG. 5 shows an example of a sequence of normal data synchronization processing.
  • the application server 104 is one of the application servers 104A to 104C, and the application server 114 is an application server that forms a pair with the application server 104 in the application servers 114A to 114C.
  • the application server 104 is active and the application server 114 is on standby.
  • the processing of the data synchronization servers 106 and 116 is executed by the data synchronization server program 204, and the processing of the application servers 104 and 114 is executed by the data synchronization server connection program 306.
  • the above points are the same in other sequence diagrams.
  • Steps 501 to 503 are a sequence for checking the synchronization state between the servers, and are periodically executed.
  • the synchronization status check between servers is executed by the method shown in the failure time processing table 233.
  • Steps indicated by dotted lines as in steps 501 and 503 may include processing via another program, and these steps depend on the application server 104 (application program 304).
  • the data synchronization server 106 executes synchronization monitoring for periodically monitoring the synchronization state and the survival state (the presence / absence of failure) of the application server 104 (step 501).
  • the data synchronization server connection program 306 in the application server 104 monitors error information that the application program 304 outputs to the error log 332 via the synchronization file interface 305.
  • the data synchronization server connection program 306 transmits the update contents of the error log 332 output file to the data synchronization server 106.
  • the data synchronization server 106 may periodically transmit a predetermined command to the application server 104 and refer to a response returned from the data synchronization server connection client program 306.
  • the synchronization monitoring communication in step 502 is for checking the synchronization state between the data synchronization server 106 and the data synchronization server 116 and the presence or absence of a failure of the partner server.
  • the data synchronization server 106 includes the application identifier and the latest Data_ID and Com_ID of the update data received from the application server 104 in the packet.
  • the data synchronization server 116 includes the application identifier and the latest Data_ID and Com_ID of the update data received from the data synchronization server 106 in the packet.
  • Step 503 is similar to step 501.
  • step 511 the data updated by the active application server 104 is transferred to the standby application server 114.
  • steps 511 to 523 the data synchronization server 106 and the data synchronization server 116 update the data synchronization server synchronization state 403 and the application synchronization state 404 of the application synchronization management table 231.
  • the application server 104 transmits update data and additional information by the application program 304 to the data synchronization server 106 (step 511).
  • the additional information is included in the update data.
  • the additional information attached to the update data is data for managing the update data by the data synchronization server 106, and includes the Data_ID indicating the version of the update data, the transmission time, and the value of the management ID 401.
  • the application server 104 may include Com_ID in the additional information included in the update data.
  • step 511 the application program 304 in the application server 104 outputs update data to the transaction log 321.
  • the data synchronization server connection program 306 receives the update data via the synchronization file interface 305 and transmits the update data to the data synchronization server 106.
  • the data synchronization server 106 stores the update data in the data storage unit 208 (step 512), and transmits a receipt response indicating that it has been normally received to the application server 104 (step 513).
  • the receipt response includes the application identifier and Data_ID included in the additional information.
  • the data synchronization server 106 updates the corresponding application information to “in synchronization” in the inter-data synchronization server synchronization state 403 of the application synchronization management table 231.
  • the data synchronization server 106 transmits the update data to the data synchronization server 116 (step 514).
  • the additional information of the update data includes an application identifier, Data_ID, and Com_ID.
  • the data synchronization server 106 When Com_ID is not included in the additional information from the application server 104, the data synchronization server 106 generates Com_ID.
  • the data synchronization server 116 stores the update data received in step 514 in the data storage unit 208 (step 515).
  • the data synchronization server 116 transmits a receipt response indicating that the data has been normally received to the data synchronization server 106, and updates the synchronization state to “synchronization OK” in the synchronization state 403 between the data synchronization servers in the application synchronization management table 231. Further, the values of Com_ID and Data_ID are updated (step 516).
  • the receipt response includes an application identifier, Data_ID, and Com_ID.
  • the data synchronization server 106 determines that synchronization between the data synchronization server 106 and the data synchronization server 116 is established, and updates the application synchronization management table 231 (step 525). Specifically, in the data synchronization server synchronization state 403, the data synchronization server 106 updates the synchronization state to “synchronization OK” and updates the values of Com_ID and Data_ID. Further, in the application synchronization state 404, the data synchronization server 106 updates the synchronization state to “during remote synchronization” and adds the value of Data_ID being synchronized.
  • the data synchronization server 116 performs a synchronization process for updating the data of the application server 114 using the update data received in step 514 (step 517).
  • the data synchronization server 116 updates the synchronization state to “during remote synchronization” and adds the value of Data_ID being synchronized.
  • the data synchronization server 116 transmits the update data to the application server 114.
  • the data synchronization server 116 converts the update data into a protocol that can be received by the application program 304 and transmits it.
  • the data synchronization server 116 places the update data file in the synchronization file interface 305 of the application server 114.
  • the data synchronization server 116 refers to the receipt response from the application server 114 and confirms whether the synchronization processing (data update processing) of the application server 114 has been normally completed (step 518).
  • the receipt response includes the application identifier and Data_ID, and is transmitted by the data synchronization server connection program 306, for example.
  • the data synchronization server 116 When the data synchronization server 116 confirms normal data update in the application server 114, the data synchronization server 116 transmits a synchronization completion notification indicating the result to the data synchronization server 106 (step 519).
  • the synchronization completion notification includes an application identifier, Data_ID, and Com_ID.
  • the data synchronization server 116 executes a deletion process for deleting the update data (step 520). Step 518 is similar to step 517.
  • the data synchronization server 106 determines that all the data of the application server 114 from the application server 104 is synchronized end to end.
  • the data synchronization server 106 updates the synchronization state to “synchronization OK” in the application synchronization state 404 of the application synchronization management table 231, leaves Data_ID during remote synchronization, and deletes the last synchronization Data_ID (hereinafter, all synchronization confirmation processing) (Step 521).
  • the data synchronization server 106 transmits a synchronization completion response including the application identifier, Data_ID, and Com_ID to the data synchronization server 116 (step 522), and executes the deletion process of the update data stored in step 512 (step 522). Step 524).
  • the data synchronization server 116 executes all synchronization confirmation processing and updates the application synchronization management table 231 (step 523).
  • the data synchronization server 116 may execute a full synchronization confirmation process before the data synchronization server 106.
  • the data synchronization server 106 uses the application synchronization management table 231, and the data synchronization server 116 (106) of the synchronization source and synchronization destination application servers 104 and 114 and the remote data center 119 (109). By coordinating with, the end-to-end data synchronization state between the application programs across the data centers 109 and 119 can be managed.
  • FIG. 6 shows an example of a sequence at the time of a temporary failure in the data synchronization processing. Temporary faults are supposed to be removed in a certain amount of time, unlike permanent faults. The case of a permanent failure will be described later with reference to FIG.
  • the update of the application synchronization management table 231 by the data synchronization servers 106 and 116 is the same as that shown in FIG.
  • Steps 601 to 604 are an example of a sequence when a network failure occurs between the application server 104 and the data synchronization server 106.
  • Steps 614 to 616 are an example of a sequence at the time of failure of the data synchronization server 116 or the data center network 108.
  • Steps 617 to 620 are an example of a sequence at the time of failure of the network in the application server 114 or the data center 119.
  • the data synchronization servers 106 and 116 refer to the primary failure processing information 903 on the failure processing table 233 to determine a response method at the time of failure.
  • the application server 104 tries to transmit update data to the data synchronization server 106, but a situation occurs in which the update data is not received by the data synchronization server 106 due to a temporary failure of the network (step 601). .
  • the data synchronization server connection program 306 in the application server 104 tries to retransmit the update data, but cannot transmit within the predetermined time, and determines that there is a temporary failure.
  • the data synchronization server connection program 306 outputs the update data as the save log 331 to the disk device 309 (step 602).
  • the data synchronization server 106 and the application server 104 restart the synchronization monitoring and confirm the mutual synchronization state (step 603).
  • the latest Data_ID of the application server 104 is different from the latest Data_ID of the data synchronization server 106
  • the data synchronization server 106 was saved in the save log 331 in the application server 104 as shown in the failure processing table 233. Requests that update data be sent.
  • the application server 104 transmits the update data saved in the save log 331 to the data synchronization server 106 (step 604). If the latest Data_ID does not match, the application server 104 may transmit the data of the save log 331 regardless of the request from the data synchronization server 106.
  • Steps 611 to 613 are the same sequence as steps 511 to 513, and update data is transmitted from the application server 104 to the data synchronization server 106.
  • the data synchronization server 106 tries to transmit the update data received in step 611 to the data synchronization server 116.
  • the update data is data due to a temporary failure of the data synchronization server 116 or the inter-data center network 108. It is assumed that a situation that is not received by the synchronization server 116 occurs (step 614A).
  • the data synchronization server 106 resends the update data when a predetermined time has elapsed without receiving the receipt response (step 614B). If the retransmission is successful in step 614B, the data synchronization server 116 stores the update data (step 615) and transmits a receipt response to the data synchronization server 106 (step 616), as in steps 515 to 516.
  • step 617A the data synchronization server 116 executes the synchronization process to the application server 114 in the same manner as in step 517 (step 617A).
  • step 617A fails due to a temporary failure of the application server 114 or the network in the data center 119
  • the data synchronization server 116 detects the state of being out of synchronization (synchronization NG) in the synchronization confirmation process, and details information on the synchronization NG Is acquired (step 618A).
  • the data synchronization server 116 when the data synchronization server 116 cannot receive a normal receipt response, the data synchronization server 116 transmits a packet for confirming the failure to the application server 114.
  • the data synchronization server 116 can know the failure position and the failure content by referring to the error response.
  • the error response is received from the application program 304, another program of the application server 114, or a communication device on the network.
  • the data synchronization server 116 analyzes the information acquired in step 618 and changes the parameters for the synchronization processing (step 619).
  • the data synchronization server 116 reduces the size of data to be transmitted at a time, for example, based on the result of step 618.
  • the update data is divided into data of a reduced size and transmitted.
  • the data synchronization server 116 retries the synchronization process for the application server 114 with the changed parameters (step 617B). If step 617B is successful, the data synchronization server 116 confirms the synchronization status (synchronization OK) with reference to the receipt response (step 618B), and sends a synchronization completion notification to the data synchronization server 106 (step 618B). 620).
  • the data synchronization server 106 resends the update data to the data synchronization server 116 if the synchronization completion notification cannot be received for a predetermined time. This is because even if the data synchronization server 106 and the data synchronization server 116 are synchronized, the data synchronization server 116 or the data center 119 may be down immediately after that.
  • the data synchronization server 106 may transmit update data to a data center different from the data center 119 (a data center acting on behalf of the data center 119), and may continue the data synchronization processing at another data center.
  • the data synchronization servers 106 and 116 use the application synchronization management table 231 to synchronize data between application programs at high speed according to the failure location and the failure status. Recovery time can be shortened.
  • FIG. 7 shows an example of a switching process sequence of the application server 104 due to a failure.
  • an active application server that provides a service to the communication terminal 101 when a permanent failure occurs is switched from the application server 104 to the standby application server 114 of the remote data center.
  • the data synchronization server 106 performs synchronization monitoring in the same manner as in step 501, and monitors the synchronization state with the application server 104 and the survival state of the application server 104 (step 701).
  • the data synchronization server 106 detects the failure (step 702) and notifies the operation management server 107 of the abnormality (step 703).
  • the data synchronization server connection program 306 detects an error in the application program 304 with reference to an error log 332 that stores error information of the application program 304.
  • the data synchronization server connection program 306 notifies the operation management server 107 of the detected error via the error log 322 (step 704).
  • the operation management server 107 displays the content of the abnormality on the display device after step 703 or 704 (step 705).
  • the data synchronization server connection program 306 notifies the operation management server 107 via the error log 322 when a failure of the data synchronization server 106 is detected.
  • the sequence after step 706 is a sequence when the operator executes the application server switching process based on the result of step 705.
  • the operator inputs a synchronization status confirmation command for confirming the synchronization status of the application server 104 and the application server 114 to the operation management server 107 (step 706).
  • the operation management server 107 transmits a request for checking the synchronization state for checking the synchronization state between the application server 104 and the application server 114 to the data synchronization server 106 (step 710).
  • the data synchronization server 106 refers to the application synchronization management table 231 and transmits the synchronization information of the target application to the operation management server 107 (step 712). Specifically, the data synchronization server 106 transmits information on the corresponding application in the inter-data synchronization server synchronization state 403 and the application synchronization state 404.
  • the operation management server 107 transmits a synchronization status confirmation request to the data synchronization server 116 (step 711), and receives application synchronization status information (step 713).
  • the application synchronization management table 231 the operation management server 107 can quickly acquire information on the synchronization state between the application servers 104 and 114.
  • the operation management server 107 displays the synchronization information of the application servers 104 and 114 acquired in steps 712 and 713 on the display device (step 714). If it is confirmed from the result of step 714 that the data of the application server 104 and the application server 114 can be synchronized, the operator inputs a command for starting the switching process of the application server 104 (step 715). When the synchronization information received from the data synchronization servers 106 and 116 does not include “synchronizing” and “synchronizing NG” and matches, the data of the application server 104 and the application server 114 can be synchronized.
  • step 714 indicates that data synchronization of the application server 114 is not possible due to a failure, the operator performs an operation for recovery.
  • the operation management server 107 transmits a switching request for switching the application server 104 to the data synchronization server 106 (step 721). After step 721, the data synchronization server 106 updates the application synchronization status 404 and the operation information 405 in the application synchronization management table 231.
  • the data synchronization server 106 blocks the port of the load balancer 103 corresponding to the application server 104 to be switched, and adds the port blocking information to the option information 406 of the application synchronization management table 231 (Step 723).
  • a response is transmitted to the operation management server 107 (step 725).
  • the operation management server 107 transmits a switching request to the data synchronization server 116, similarly to step 721 (step 722).
  • the data synchronization server 116 updates the application synchronization status 404 and the operation information 405 in the application synchronization management table 231 and releases the block of the load balancer 113 corresponding to the application server 114 to be switched (step 724).
  • a normal response is transmitted to the operation management server 107.
  • the data synchronization servers 106 and 116 control the load balancers 103 and 113 so that the switching process can be performed quickly.
  • the data synchronization server 106 and the data synchronization server 116 may execute the switching process without the operator's intervention.
  • the data synchronization servers 106 and 116 execute a failure handling process indicated by the failure handling information 904 in the failure handling table 233. Thereby, an operator's operation is unnecessary, and a quick switching process can be realized.
  • step 706 and steps 710 to 715 can be omitted.
  • the data synchronization server 106 and the data synchronization server 116 execute synchronization monitoring (step 502) instead of steps 710 to 713, and exchange information on the application synchronization state 404 in the application synchronization management table 231.
  • the data synchronization servers 106 and 116 execute a switching process.
  • the application server 104 executes a plurality of application programs, it is a condition that the synchronization state information of all the application programs matches.
  • the data synchronization server 106 executes the above processing of the operation management server 107. That is, the data synchronization server 106 determines whether the synchronization state information does not include “synchronizing” or “synchronized NG” and further matches. If the condition is satisfied, Steps 722 and 723 are executed. The data synchronization server 116 executes Steps 724 and 726 in response to the switching request from the data synchronization server 106. The roles of the data synchronization servers 106 and 116 may be reversed.
  • FIG. 8 shows an example of an application registration sequence in the data synchronization server 106.
  • the operator inputs information on the application server 104 to be registered, the type of application, and information such as which data center application server 104 is to be active or standby (step 801).
  • the operation management server 107 transmits a registration request to the active data synchronization server 106 based on the input information (step 802).
  • the data synchronization server 106 adds an entry to the application synchronization management table 231 and transmits a normal response indicating that the registration is successful to the operation management server 107 (step 803).
  • the operation management server 107 further transmits a registration request to the data synchronization server 116 on the standby side (step 804). Similar to step 903, the data synchronization server 116 updates the application synchronization management table 231 and transmits a normal response indicating that the registration is successful to the operation management server 107 (step 805).
  • the data synchronization server 106 and the data synchronization server 116 start communication for monitoring the synchronization of registered applications (step 806). If another application has already been registered in the data synchronization server 106 and synchronization monitoring is being performed, in step 806, the packet for synchronization monitoring is newly registered in addition to the existing application information. Contains application information.
  • step 801 the operator uses the operation management server 107 to update the application setting file 323 of the newly registered application program 304 and set the output destination of the update log in the synchronization file interface 305 (step 801). 810).
  • the data synchronization server connection program 306 of the application server 104 is installed and operated before step 810.
  • the application program 304 can output update data directly to the data storage unit 208 of the data synchronization server 106 that can be accessed at high speed without going through the disk 309, so that it is possible to suppress degradation in processing performance due to data synchronization processing.
  • the data synchronization server 106 starts synchronization monitoring of the newly registered application of the application server 104 (step 811). Further, the data synchronization server 116 also starts synchronization monitoring of the newly registered application in the application server 114 (step 812).
  • this invention is not limited to the above-mentioned Example, Various modifications are included.
  • the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described.
  • a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment.
  • each of the above-described configurations, functions, processing units, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.
  • Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor.
  • Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card or an SD card.
  • the control lines and information lines are those that are considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. In practice, it may be considered that almost all the components are connected to each other.

Landscapes

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

Abstract

A first data synchronization server transfers update data acquired from a first application server to a second data synchronization server. After having transferred the update data to a second application server, the second data synchronization server updates synchronization state information between a first application program and a second application program in second management information. The second data synchronization server transmits to the first data synchronization server a completion notification indicating the completion of backing up of the update data to the second application server. The first data synchronization server updates synchronization state information between the first application program and the second application program in first management information in response to the completion notification.

Description

データバックアップシステムData backup system
 本発明は、アプリケーションデータのバックアップにおける同期管理に関する。 The present invention relates to synchronization management in backup of application data.
 近年、企業のデータセンタ又はクラウドシステムにおいて、災害等による被害を最小限に抑えるための予防措置、被害からの回復措置であるディザスターリカバリ(DR)、災害等が発生しても事業を継続する事業継続計画(BCP)が求められている。 In recent years, in corporate data centers or cloud systems, we continue to operate even if disasters occur, such as disaster prevention (DR), a preventive measure to minimize damage due to disasters, and recovery from damages. A business continuity plan (BCP) is required.
 DR、BCPのために、データセンタは、データを遠隔地に設置されたもう一か所のデータセンタ(以下、リモートデータセンタ)にデータバックアップを行っている。その中でも、分散データセンタ間でデータ同期サーバを利用した、データバックアップ(データ同期)のニーズが高まっている。本開示では、リモートデータセンタのデータの内容を、バックアップにより一致させることを「同期する」と表現する。 For DR and BCP, the data center backs up data to another data center (hereinafter referred to as a remote data center) installed at a remote location. In particular, there is an increasing need for data backup (data synchronization) using a data synchronization server between distributed data centers. In the present disclosure, matching the contents of data in a remote data center by backup is expressed as “synchronize”.
 例えば、特許文献1(特開2012-199729号)及び特許文献2(特表2008-524677号)は、データセンタ間でデータ同期サーバを利用したデータ同期方法を開示している。 For example, Patent Document 1 (Japanese Patent Application Laid-Open No. 2012-199729) and Patent Document 2 (Japanese Patent Publication No. 2008-524677) disclose a data synchronization method using a data synchronization server between data centers.
 具体的には、特許文献1は、データセンタ間のネットワークに接続された複数のデータ同期サーバが、クライアントである複数アプリケーション毎のデータの送信レートを制御する方法を開示する(要約)。特許文献2は、クライアントと、同期サーバと、データサーバとを有する3層同期システム内で空更新イベントを処理するための方法を開示する。当該方法は、クライアントのデータストアをデータサーバのデータストアと同期させるための同期要求を検出するステップと、同期要求が同期サーバに伝達される前に、事前確立指標に基づいて、データ更新が必要であるかどうかを判定するステップと、判定ステップの結果に基づいて同期イベントを選択的に開始するステップとを含む(〔0007〕)。 Specifically, Patent Document 1 discloses a method in which a plurality of data synchronization servers connected to a network between data centers controls a data transmission rate for each of a plurality of applications as clients (summary). Patent document 2 discloses a method for processing an empty update event in a three-layer synchronization system having a client, a synchronization server, and a data server. The method involves detecting a synchronization request to synchronize the client data store with the data server data store, and updating the data based on a pre-established index before the synchronization request is communicated to the synchronization server. And a step of selectively starting a synchronization event based on a result of the determination step ([0007]).
 これらの方法は、クライアントであるアプリケーションやデータセンタが障害に陥った場合に、リモートデータセンタで保持しているデータを利用することで、サービスを回復することやサービスを継続することを目的としている。 These methods are intended to restore services or continue services by using data held in the remote data center when a client application or data center fails. .
 さらに、近年、通信、電力、交通といった社会インフラ分野でのIoT(Internet of Things)/M2M(Machine to Machine)が普及し、企業システムやデータセンタが提供するサービスが多様化している。これらサービスを担うサーバ(またはシステム)には、膨大な通信端末(例えば、スマートフォン、センサデバイス等)が送受信するメッセージの処理性能と、社会インフラとしての高可用性も求められている。 Furthermore, in recent years, IoT (Internet of Things) / M2M (Machine to Machine) in the social infrastructure fields such as communication, electric power, and transportation has become widespread, and services provided by corporate systems and data centers have been diversified. Servers (or systems) responsible for these services are also required to process messages sent and received by a huge number of communication terminals (for example, smartphones, sensor devices, etc.) and high availability as social infrastructure.
特開2012-199729号公報JP 2012-199729 A 特表2008-524677号公報Special table 2008-524777 gazette
 上記のようなサービスを担うデータセンタまたは企業システムは、リモートデータセンタへデータバックアップを行っており、アプリケーション毎の複雑な同期管理及び障害切替え作業の複雑化の課題を持っていた。 The data center or enterprise system responsible for the services as described above performs data backup to the remote data center, and has the problem of complicated synchronization management and failure switching work for each application.
 特許文献1は、データ同期サーバ間のデータ同期管理を開示するが、それ以外のアプリケーションのデータ同期管理、即ちアプリケーションの同期元から同期先までのエンドツーエンド同期管理について具体的に開示していない。 Patent Document 1 discloses data synchronization management between data synchronization servers, but does not specifically disclose data synchronization management of other applications, that is, end-to-end synchronization management from the synchronization source to the synchronization destination of the application. .
 特許文献2は、障害発生時に同期元であるクライアントがデータを紛失しないためのデーバックアップ方法を開示するが、データ同期サーバ、データセンタ間のネットワーク、リモートデータセンタ間の同期を管理する方法及び障害時に切替えを行う方法を開示していない。 Patent Document 2 discloses a data backup method for preventing a client that is a synchronization source from losing data when a failure occurs. However, a data synchronization server, a network between data centers, a method for managing synchronization between remote data centers, and a failure It does not disclose how to switch sometimes.
 同期元で障害が発生した場合、アプリケーションの同期元と同期先のデータが同期できていなければ(または差異があってもサービス的に問題ないと判定するまでは)、リモートデータセンタの同期先のアプリケーションを利用してサービスの回復/継続することができない。 If a failure occurs at the synchronization source, and the synchronization data of the application is not synchronized (or until it is determined that there is no service problem even if there is a difference), the synchronization destination of the remote data center Unable to recover / continue service using application.
 そのため、データセンタの運用者は、同期元のアプリケーションのデータの更新履歴を示す更新ログや、運用コマンドを利用して、同期元と同期先のアプリケーションのデータの同期の差異を確認する。この作業は、アプリケーションの多様化により、より複雑化している。また、同期確認作業の時間が大きくなるほど、サービスの停止している時間(以下、障害切替時間)が大きくなり、可用性が低下する。 Therefore, the data center operator uses the update log indicating the update history of the synchronization source application data and the operation command to check the synchronization difference between the synchronization source application and the synchronization destination application data. This work has become more complicated due to the diversification of applications. In addition, as the time for the synchronization confirmation work increases, the time during which the service is stopped (hereinafter referred to as failure switching time) increases and the availability decreases.
 本発明の代表的な一例は、第1アプリケーションプログラムを実行する、第1アプリケーションサーバと、前記第1アプリケーションプログラムと同種の第2アプリケーションプログラムを実行し、前記第1アプリケーションプログラムのバックアップデータを保持する、第2アプリケーションサーバと、前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第1管理情報を保持する、第1データ同期サーバと、前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第2管理情報を保持する、第2データ同期サーバと、を含み、前記第1データ同期サーバは、第1ネットワークを介して、前記第1アプリケーションサーバから前記第1アプリケーションプログラムによる更新データを取得し、前記更新データを、第2ネットワークを介して前記第2データ同期サーバに転送し、前記第2データ同期サーバは、第3ネットワークを介して、前記更新データを前記第2アプリケーションサーバに転送し、前記更新データを前記第2アプリケーションサーバに転送した後に、前記第2管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新し、前記更新データを前記第2アプリケーションサーバに転送した後に、前記第2ネットワークを介して前記第1データ同期サーバに、前記更新データの前記第2アプリケーションサーバへのバックアップの完了を示す完了通知を送信し、前記第1データ同期サーバは、前記完了通知に応答して、前記第1管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新する、データバックアップシステムである。 A typical example of the present invention executes a first application server that executes a first application program, a second application program of the same type as the first application program, and holds backup data of the first application program. A first data synchronization server that holds first management information for managing a synchronization state between the second application server, the first application program, and the second application program, the first application program, and the second application A second data synchronization server that holds second management information for managing a synchronization state with the program, the first data synchronization server from the first application server via the first network The app Update data obtained by a transmission program, and the update data is transferred to the second data synchronization server via a second network, and the second data synchronization server transmits the update data via a third network. After transferring to the second application server and transferring the update data to the second application server, the information on the synchronization state between the first application program and the second application program in the second management information is updated, After transferring the update data to the second application server, a completion notification indicating completion of backup of the update data to the second application server is transmitted to the first data synchronization server via the second network. The first data synchronization server notifies the completion notification. In response, it updates the information of the synchronous state between the first application program and the second application program in the first management information, a data backup system.
 本発明の一態様によれば、アプリケーションプログラム間のEnd to Endのデータ同期状態を管理できる。 According to one aspect of the present invention, the end-to-end data synchronization state between application programs can be managed.
実施形態におけるシステム構成例を示す。The system configuration example in embodiment is shown. データ同期サーバの構成例を示す。The structural example of a data synchronous server is shown. データ同期サーバのデータ記憶部が格納する情報例を示す。The example of information which the data storage part of a data synchronous server stores is shown. アプリケーションサーバの構成例を示す。The structural example of an application server is shown. アプリケーションサーバの同期用ファイルインタフェースの構成例を示す。The structural example of the file interface for a synchronization of an application server is shown. アプリケーションサーバのディスク装置が格納する情報例を示す。An example of information stored in the disk device of the application server is shown. アプリケーション同期管理テーブルの例を示す。An example of an application synchronization management table is shown. 障害時処理テーブルの例を示す。An example of a failure processing table is shown. データ同期処理の正常時のシーケンスの例を示す。An example of a sequence when data synchronization processing is normal is shown. データ同期処理の障害時のシーケンスの例を示す。An example of a sequence at the time of failure in data synchronization processing is shown. 障害時の切替え処理のシーケンスの例を示す。The example of the sequence of the switching process at the time of a failure is shown. データ同期サーバのアプリケーション登録のシーケンスの例を示す。The example of the application registration sequence of a data synchronous server is shown.
 以下、添付図面を参照して本発明の実施形態を説明する。本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。各図において共通の構成については同一の参照符号が付されている。図1は、本実施形態の計算機システム構成を示すブロック図である。本実施の形態の計算機システムは、複数のデータセンタ109、119を含む。データセンタ109、119は、遠隔拠点に設置され、データセンタ間ネットワーク108で接続されている。通信端末101は、サービス用ネットワーク102を介して、データセンタ109、119に接続する。 Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. It should be noted that this embodiment is merely an example for realizing the present invention, and does not limit the technical scope of the present invention. In each figure, the same reference numerals are given to common configurations. FIG. 1 is a block diagram showing a computer system configuration of the present embodiment. The computer system according to this embodiment includes a plurality of data centers 109 and 119. The data centers 109 and 119 are installed at remote locations and are connected by a network 108 between data centers. The communication terminal 101 is connected to the data centers 109 and 119 via the service network 102.
 データセンタ109は、ロードバランサ103、複数のアプリケーションサーバ104A~104C、データ同期サーバ106、運用管理サーバ107、及びそれらを接続する内部ネットワークを備える。データセンタ119は、ロードバランサ113、複数のアプリケーションサーバ114A~104C、データ同期サーバ116、運用管理サーバ117、及びそれらを接続する内部ネットワークを備える。 The data center 109 includes a load balancer 103, a plurality of application servers 104A to 104C, a data synchronization server 106, an operation management server 107, and an internal network connecting them. The data center 119 includes a load balancer 113, a plurality of application servers 114A to 104C, a data synchronization server 116, an operation management server 117, and an internal network connecting them.
 アプリケーションサーバ104A~104Cは、それぞれ、アプリケーションサーバ114A~114Cとペアを構成する。各ペアは、同期ペアであり、一方のアプリケーションサーバにおける更新は、他方のアプリケーションサーバにコピーされる。以下の説明において、アプリケーションサーバ104A~104C、114A~114Cが実行するアプリケーションプログラムは、一つであるとする。アプリケーションサーバは、複数のアプリケーションプログラムを実行してもよい。 Application servers 104A to 104C constitute a pair with application servers 114A to 114C, respectively. Each pair is a synchronous pair, and updates in one application server are copied to the other application server. In the following description, it is assumed that there is one application program executed by the application servers 104A to 104C and 114A to 114C. The application server may execute a plurality of application programs.
 以下に説明する例においては、データセンタ109のアプリケーションサーバ114A~114Cは、通常時にサービスを提供する。データセンタ119のアプリケーションサーバ114A~114Cは、ディザスターリカバリ(DR)、事業継続計画(BCP)のための、バックアップである。アプリケーションサーバ114A~114Cにおける更新が、アプリケーションサーバ114A~114Cにバックアップコピーされる。 In the example described below, the application servers 114A to 114C of the data center 109 provide services at normal times. The application servers 114A to 114C of the data center 119 are backups for disaster recovery (DR) and business continuity plan (BCP). Updates in the application servers 114A to 114C are backed up and copied to the application servers 114A to 114C.
 通信端末101は、携帯電話端末やタブレット、パーソナルコンピュータ、センサデバイス、車、メータなどのデータ通信可能な端末装置を示す。通信端末101は、サービス用ネットワーク102及びロードバランサ103を介して、アプリケーションサーバ104A~104Cと接続する。 The communication terminal 101 indicates a terminal device capable of data communication such as a mobile phone terminal, a tablet, a personal computer, a sensor device, a car, and a meter. The communication terminal 101 is connected to the application servers 104A to 104C via the service network 102 and the load balancer 103.
 たとえば、ユーザは通信端末101にインストールされたプログラムを実行し、通信端末101は、アクティブなアプリケーションサーバ104A~104Cとデータ通信を行うことにより、アプリケーションサーバ104A~104Cの提供するサービスを利用する。 For example, the user executes a program installed in the communication terminal 101, and the communication terminal 101 uses the services provided by the application servers 104A to 104C by performing data communication with the active application servers 104A to 104C.
 サービス用ネットワーク102は、通信端末101とデータセンタ109、119とを接続するネットワークであり、例えば、通信キャリアが提供する無線または有線のネットワーク及びネットワーク設備である。サービス用ネットワーク102にはスマートグリッドのようなネットワーク形態も適用可能である。 The service network 102 is a network that connects the communication terminal 101 and the data centers 109 and 119, and is, for example, a wireless or wired network and network equipment provided by a communication carrier. A network form such as a smart grid is also applicable to the service network 102.
 ロードバランサ103は、通信端末101から送信されたデータをいずれかのアプリケーションサーバ104A~104Cへ振分ける負荷分散処理や、アプリケーションサーバ104A~104Cの障害を検知した場合にデータの振分けを停止する処理を行う。 The load balancer 103 performs load distribution processing for distributing data transmitted from the communication terminal 101 to any of the application servers 104A to 104C, and processing for stopping data distribution when a failure of the application servers 104A to 104C is detected. Do.
 アプリケーションサーバ104A~104Cは、通信端末101へサービスを提供する物理サーバ又は仮想サーバである。アプリケーションサーバ104A~104Cは、サービスを実現するための所定のデータを保持している。 The application servers 104A to 104C are physical servers or virtual servers that provide services to the communication terminal 101. The application servers 104A to 104C hold predetermined data for realizing services.
 例えば、アプリケーションサーバ104A~104Cにおいて、アプリケーションプログラムは、プログラム内部にリレーショナルデータベース(RDB)やKey-Value Store(KVS)等のデータを格納するデータストアを保持する、データストアをミドルウェアとして利用する、又は、それ自体がRDBやKVS等のデータストアである。 For example, in the application servers 104A to 104C, the application program holds a data store for storing data such as a relational database (RDB) and a key-value store (KVS) in the program, uses the data store as middleware, or , Itself is a data store such as RDB or KVS.
 内部にデータストアを保持するプログラムは、たとえば、メールボックス、オンラインストレージシステム等の、ユーザ情報の管理サーバの制御プログラムである。本実施形態のデータ同期処理の対象データは、アプリケーションに格納されているデータであれば、その種類は問われない。 The program that holds the data store inside is, for example, a user information management server control program such as a mailbox or an online storage system. The target data of the data synchronization process of this embodiment is not limited as long as it is data stored in an application.
 アプリケーションサーバ間のデータバックアップコピーにおいて、データ同期サーバ106は、アプリケーションサーバ104A~104Cの任意の一つ、例えばアプリケーションサーバ104Aが更新したデータを取得し、データセンタ間ネットワーク108を介して、データ同期サーバ116へデータを送信する。同期先の対応するアプリケーションサーバ114Aは、データ同期サーバ116から更新データを取得する。 In the data backup copy between application servers, the data synchronization server 106 acquires data updated by any one of the application servers 104A to 104C, for example, the application server 104A, and transmits the data synchronization server via the inter-data center network 108. Data is transmitted to 116. The application server 114 </ b> A corresponding to the synchronization destination acquires update data from the data synchronization server 116.
 本開示において、アプリケーションサーバ104A~104Cの一つのデータを、リモートデータセンタ119のアプリケーションサーバ114A~114Cの対応する一つへコピーする処理を、データ同期処理と呼ぶ。一つの装置から他の装置にデータをコピーすることを、データを同期する、と呼ぶ。アプリケーションサーバ104A~104Cの任意の一つと、アプリケーションサーバ114A~114Cのうちの対応するアプリケーションサーバの全データが一致する場合、それらのアプリケーションサーバは同期している、と呼ばれる。 In the present disclosure, a process of copying one data of the application servers 104A to 104C to a corresponding one of the application servers 114A to 114C of the remote data center 119 is referred to as a data synchronization process. Copying data from one device to another is called data synchronization. If any one of the application servers 104A to 104C matches all data of the corresponding application server among the application servers 114A to 114C, it is said that those application servers are synchronized.
 図1の例において、データセンタ109は、複数のデータ同期サーバ106を含む。これにより、データ同期サーバ106自体の障害に対する可用性を高める。さらに、複数のデータ同期サーバ106のデータストアは、インメモリ型分散KVSで構成されている。同一のデータを複製し、複数のデータ同期サーバ106のメモリ上で保持することで、高速アクセス可能な記憶領域を実現する。 1, the data center 109 includes a plurality of data synchronization servers 106. Thereby, the availability with respect to the failure of the data synchronization server 106 itself is increased. Furthermore, the data stores of the plurality of data synchronization servers 106 are configured by in-memory type distributed KVS. By copying the same data and holding it in the memory of a plurality of data synchronization servers 106, a storage area that can be accessed at high speed is realized.
 ただし、データ同期サーバ106が、インメモリ型分散KVSの記憶部を備えることは必須構成ではない。また、データセンタ109に存在するデータ同期サーバ106の数は一つでもよい。データセンタ119は、データセンタ109と同様に、データ同期サーバ116を含む。データ同期サーバ116の数及びそのデータストア構成については、データ同期サーバ106と同様に説明が適用される。 However, it is not essential that the data synchronization server 106 includes an in-memory distributed KVS storage unit. Further, the number of data synchronization servers 106 existing in the data center 109 may be one. Similar to the data center 109, the data center 119 includes a data synchronization server 116. The explanation is applied to the number of data synchronization servers 116 and the data store configuration thereof in the same manner as the data synchronization server 106.
 データセンタ間ネットワーク108は、データセンタ109と119との間を接続するネットワークであり、例えば、通信キャリアが提供する無線または有線のネットワーク及びネットワーク設備である。 The inter-data center network 108 is a network that connects the data centers 109 and 119, and is, for example, a wireless or wired network and network equipment provided by a communication carrier.
 アプリケーションサーバ114A~114Cは、104A~104Cのスタンバイサーバであり、アプリケーションサーバ104A~104Cのいずれかで障害が発生すると、対応するスタンバイサーバが通信端末101にサービスの提供を開始する。なお、一つのデータセンタが、異なるアプリケーションサーバペアのスタンバイアプリケーションンサーバとスタンバイアプリケーションサーバを含んでもよい。ロードバランサ113は、ロードバランサ103と同様の処理を行う。 Application servers 114A to 114C are standby servers 104A to 104C. When a failure occurs in any of the application servers 104A to 104C, the corresponding standby server starts providing a service to the communication terminal 101. One data center may include a standby application server and a standby application server of different application server pairs. The load balancer 113 performs the same process as the load balancer 103.
 本実施形態のデータ同期を適用可能なシステム構成は、図1の構成に限らず、他の構成のシステムにも適用可能である。たとえばデータセンタに企業内システムが適用されてもよく、本実施形態のデータ同期を、3拠点以上のデータセンタを含むシステムに適用可能である。 The system configuration to which the data synchronization of this embodiment can be applied is not limited to the configuration in FIG. 1, but can be applied to systems having other configurations. For example, an in-company system may be applied to the data center, and the data synchronization of this embodiment can be applied to a system including three or more data centers.
 図2Aは、データ同期サーバ106を実現する情報処理装置のハードウェア構成例を示す。データ同期サーバ116の構成も同様である。データ同期サーバを実現する情報処理装置は、プロセッサ202と、揮発性の主メモリ206と、不揮発性の補助記憶装置であるディスク装置209と、データセンタ間ネットワーク108にデータを送受信するための入出力回路インタフェース203と、これらを接続する内部通信線(バス)と、を含んで構成される。 FIG. 2A shows a hardware configuration example of an information processing apparatus that implements the data synchronization server 106. The configuration of the data synchronization server 116 is the same. An information processing apparatus that realizes a data synchronization server includes a processor 202, a volatile main memory 206, a disk device 209 that is a nonvolatile auxiliary storage device, and an input / output for transmitting / receiving data to / from the data center network 108. The circuit interface 203 includes an internal communication line (bus) connecting them.
 主メモリ206は、データ同期サーバプログラム204と、データストアプログラム205を格納し、これらがプロセッサ202により実行される。データ同期サーバプログラム204、データストアプログラム205は、予め、主メモリ207または非一時的記憶媒体を含むディスク装置209に格納されていてもよい。 The main memory 206 stores a data synchronization server program 204 and a data store program 205, which are executed by the processor 202. The data synchronization server program 204 and the data store program 205 may be stored in advance in the disk device 209 including the main memory 207 or a non-temporary storage medium.
 上記プログラム204、205は、図示していない着脱可能な非一時的記憶媒体または通信媒体(すなわちネットワークまたはそれを伝播するデジタル信号や搬送波)を介して、主メモリ207またはディスク装置209に導入されてもよい。ディスク装置209は、さらにデータ同期サーバプログラム204またはデータストアプログラム205が出力したデータ、ログ、設定ファイル等を格納する。 The programs 204 and 205 are introduced into the main memory 207 or the disk device 209 via a removable non-transitory storage medium or communication medium (that is, a network or a digital signal or a carrier wave that propagates through the medium) (not shown). Also good. The disk device 209 further stores data, logs, setting files, and the like output from the data synchronization server program 204 or the data store program 205.
 以下説明する内容は、データ同期サーバプログラム204、またはデータストアプログラム205がプロセッサ202により実行されることにより、データ同期サーバ106の機能として実現される。 The content described below is realized as a function of the data synchronization server 106 when the data synchronization server program 204 or the data store program 205 is executed by the processor 202.
 データストアプログラム205は、データ記憶部208にデータを保持する。本実施例では、データストアプログラム205はインメモリ型分散KVSであり、データ記憶部208は高速アクセス可能でかつデータ永続性が保証される記憶領域である。 The data store program 205 holds data in the data storage unit 208. In this embodiment, the data store program 205 is an in-memory distributed KVS, and the data storage unit 208 is a storage area that can be accessed at a high speed and data durability is guaranteed.
 なお、データストアプログラム205は、主メモリ206の記憶領域に限定されることなく、データ記憶部208に、SSD(Solid State Drive)等の不揮発性メモリ、SAN(Storage Area Network)を介した外部記憶装置、NAS(Network Attached Storage)等を適用することが可能である。 The data store program 205 is not limited to the storage area of the main memory 206, but is stored in the data storage unit 208 in a nonvolatile memory such as an SSD (Solid State Drive) or an external storage via a SAN (Storage Area Network). A device, NAS (Network Attached Storage), or the like can be applied.
 図2Bは、データ記憶部208が格納するデータを示す。データ記憶部208は、アプリケーション同期管理テーブル231、アプリケーション同期データ232、障害時処理テーブル233を格納する。 FIG. 2B shows data stored in the data storage unit 208. The data storage unit 208 stores an application synchronization management table 231, application synchronization data 232, and failure processing table 233.
 アプリケーション同期管理テーブル231は、アプリケーションサーバ104A~104Cとリモートデータセンタ119のアプリケーションサーバ114A~114Cの間のエンドツーエンドの同期状態を管理するための情報を格納する。アプリケーション同期データ232は、アプリケーションサーバ104A~104Cからリモートデータセンタ119のアプリケーションサーバ114A~114Cへ送信(同期)するデータ(以下、更新データ)を格納する。 The application synchronization management table 231 stores information for managing an end-to-end synchronization state between the application servers 104A to 104C and the application servers 114A to 114C of the remote data center 119. The application synchronization data 232 stores data (hereinafter referred to as update data) transmitted (synchronized) from the application servers 104A to 104C to the application servers 114A to 114C of the remote data center 119.
 障害時処理テーブル233には、障害の発生箇所と、その障害状況に応じた処理の情報を格納する。障害発生個所は、たとえば、アプリケーションサーバ104A~114C、アプリケーションサーバ114A~114C、リモートデータセンタのデータ同期サーバ116、データセンタ間ネットワーク108等を含む。 The failure processing table 233 stores information on the location where a failure has occurred and processing according to the failure status. The location of the failure includes, for example, the application servers 104A to 114C, the application servers 114A to 114C, the remote data center data synchronization server 116, the inter-data center network 108, and the like.
 図3Aは、アプリケーションサーバ104A~104Cを実現する情報処理装置のハードウェア構成例を示す。アプリケーションサーバ114A~114Cの構成も同様である。アプリケーションサーバを実現する情報処理装置は、プロセッサ302と、揮発性の主メモリ307と、不揮発性の補助記憶装置であるディスク装置309と、データセンタ109内のネットワークにデータを送受信するための入出力回路インタフェース303と、これらを接続する内部通信線(バス)と、を含んで構成される。 FIG. 3A shows a hardware configuration example of an information processing apparatus that realizes the application servers 104A to 104C. The configuration of the application servers 114A to 114C is the same. An information processing apparatus that implements an application server includes a processor 302, a volatile main memory 307, a disk device 309 that is a nonvolatile auxiliary storage device, and an input / output for transmitting and receiving data to and from the network in the data center 109. The circuit interface 303 includes an internal communication line (bus) that connects them.
 主メモリ307は、アプリケーションプログラム304と、同期用ファイルインタフェース(ファイルIF)305と、データ同期サーバ接続用プログラム306と格納し、これらがプロセッサ302により実行される。アプリケーションプログラム304、データ同期サーバ接続用プログラム306は、予め、主メモリ307または非一時的記憶媒体を含むディスク装置309に格納されていてもよい。 The main memory 307 stores an application program 304, a synchronization file interface (file IF) 305, and a data synchronization server connection program 306, which are executed by the processor 302. The application program 304 and the data synchronization server connection program 306 may be stored in advance in the main memory 307 or the disk device 309 including a non-temporary storage medium.
 上記プログラム304、306は、図示していない着脱可能な非一時的記憶媒体または通信媒体(すなわちネットワークまたはそれを伝播するデジタル信号や搬送波)を介して、主メモリ307またはディスク装置309に導入されてもよい。 The programs 304 and 306 are introduced into the main memory 307 or the disk device 309 via a removable non-transitory storage medium or communication medium (that is, a network or a digital signal or a carrier wave that propagates through the medium) (not shown). Also good.
 同期用ファイルインタフェース305は、アプリケーションプログラム304からデータ同期するためのファイルを出力するインタフェースである。一般的なファイルインタフェースは、OS(Operating System)により提供され、主メモリ307またはディスク装置309にデータを記憶する。本例の同期用ファイルインタフェース305は、データ同期サーバ接続用プログラム306と接続されている。 The synchronization file interface 305 is an interface for outputting a file for data synchronization from the application program 304. A general file interface is provided by an OS (Operating System) and stores data in the main memory 307 or the disk device 309. The synchronization file interface 305 of this example is connected to the data synchronization server connection program 306.
 同期用ファイルインタフェース305は、同期処理のために、更新データを格納するディスク装置309へのアクセスや、アプリケーション内での同期処理のための追加処理を不要とし、アプリケーションサーバのI/O、CPUといったリソースの消費を低減できる。その結果、アプリケーションサーバの性能低下及び通信端末へ提供しているサービスへの影響を、低減できる。 The synchronization file interface 305 eliminates the need for access to the disk device 309 for storing update data and additional processing for synchronization processing within the application for synchronization processing, such as application server I / O and CPU. Resource consumption can be reduced. As a result, the performance degradation of the application server and the influence on the service provided to the communication terminal can be reduced.
 同期用ファイルインタフェース305を実現する手段として、FUSE(Filesystem in Userspace)がある。FUSEは、OSを改造せずに独自のファイルシステムを作成することができる機能である。本実施例では、FUSEを利用することで、アプリケーションプログラム304は、同期用ファイルインタフェース305に対し一般的なファイルシステムのようにアクセスできる。アクセス内容(データ)は、FUSEを介してデータ同期サーバ接続用プログラム306に渡される。 As a means for realizing the synchronization file interface 305, there is FUSE (Filesystem in Userspace). FUSE is a function that can create a unique file system without modifying the OS. In this embodiment, by using FUSE, the application program 304 can access the synchronization file interface 305 like a general file system. The access contents (data) are passed to the data synchronization server connection program 306 via FUSE.
 一般的にRDB等のアプリケーションは、更新データをファイルインタフェースに出力する機能を備えている。アプリケーションプログラム304は、同期用ファイルインタフェース305に、更新データのファイルを出力する。同期用ファイルインタフェース305により、アプリケーションプログラム304に改造を加えずに、データ同期サーバ接続用プログラム306がアプリケーションプログラム304の更新データを取得することが可能となる。 Generally, applications such as RDB have a function of outputting update data to a file interface. The application program 304 outputs an update data file to the synchronization file interface 305. The synchronization file interface 305 enables the data synchronization server connection program 306 to acquire update data of the application program 304 without modifying the application program 304.
 FUSEによるファイルシステムが提供されている場合、アプリケーションプログラム304は、特定ディレクトリに更新データのファイルを格納する。OSは、ファイルシステムへ格納されたファイルを、データ同期サーバ接続用プログラム306に転送する。 When a file system based on FUSE is provided, the application program 304 stores an update data file in a specific directory. The OS transfers the file stored in the file system to the data synchronization server connection program 306.
 データ同期サーバ接続用プログラム306は、同期用ファイルインタフェース305を介して更新データを取得する。データ同期サーバ接続用プログラム306は、更新データと更新データに関する付加情報を、データ同期サーバ106へ送信する。付加情報は、たとえば、アプリケーション識別子及び後述するData_IDを含む。データ同期サーバ接続用プログラム306は、データ同期サーバ106と同期管理または生存監視のための通信を行う。 The data synchronization server connection program 306 acquires update data via the synchronization file interface 305. The data synchronization server connection program 306 transmits update data and additional information related to the update data to the data synchronization server 106. The additional information includes, for example, an application identifier and Data_ID described later. The data synchronization server connection program 306 communicates with the data synchronization server 106 for synchronization management or survival monitoring.
 図3Bは、同期用ファイルインタフェース305の構成例を示す。同期用ファイルインタフェース305には、トランザクションログ321、及びエラーログ322が格納される。ただし、前述の通り、同期用ファイルインタフェース305は、データの受け渡しのめのインタフェースにすぎないため、これらのデータは実体を持たない(空ファイル)。 FIG. 3B shows a configuration example of the synchronization file interface 305. The synchronization file interface 305 stores a transaction log 321 and an error log 322. However, as described above, the synchronization file interface 305 is merely an interface for data transfer, and these data do not have an entity (empty file).
 トランザクションログ321は、アプリケーションプログラム304の更新データを格納する。トランザクションログ321は空ファイルであり、更新データの実体は、データ同期サーバ接続用プログラム306に転送される。前述の通り、一般的なRDB等のアプリケーションは、更新データをトランザクションログとして出力する機能を備えている。リモートデータセンタのRDBにトランザクションログを取り込ませることにより、アプリケーションサーバ間でデータを同期させることができる。 The transaction log 321 stores update data of the application program 304. The transaction log 321 is an empty file, and the substance of the update data is transferred to the data synchronization server connection program 306. As described above, a general application such as RDB has a function of outputting update data as a transaction log. Data can be synchronized between application servers by causing the transaction log to be taken into the RDB of the remote data center.
 本例においては、データ同期サーバ106がトランザクションログ321の内容である更新データを取得し、当該更新データを転送されたデータ同期サーバ116が、当該更新データを、データセンタ119における対応するアプリケーションサーバへ読み込ませることにより、データ同期処理を実現する。 In this example, the data synchronization server 106 acquires update data that is the contents of the transaction log 321, and the data synchronization server 116 to which the update data is transferred sends the update data to the corresponding application server in the data center 119. Data synchronization processing is realized by reading.
 エラーログ322は、データ同期サーバ接続用プログラム306が、アプリケーションプログラム304のエラー又はデータ同期サーバ106との通信におけるエラーを通知するために使用される。エラーログ322は、データ同期サーバ接続用プログラム306が出力したエラー情報を示すファイルを格納する。エラーログ322は空ファイルであり、データ同期サーバ接続用プログラム306が出力したファイルは、不図示の送信プログラムに渡される。 The error log 322 is used by the data synchronization server connection program 306 to notify an error of the application program 304 or an error in communication with the data synchronization server 106. The error log 322 stores a file indicating error information output by the data synchronization server connection program 306. The error log 322 is an empty file, and the file output from the data synchronization server connection program 306 is transferred to a transmission program (not shown).
 送信プログラムは、そのファイルを運用管理サーバ107に転送し、運用管理サーバ107の表示装置が、エラー情報を表示する。これにより、エラーが運用者に通知される。エラー情報は、アプリケーションサーバにより運用者に通知されてもよい。これにより、最新のエラーが運用者に即時に通知される。 The transmission program transfers the file to the operation management server 107, and the display device of the operation management server 107 displays the error information. As a result, the error is notified to the operator. The error information may be notified to the operator by the application server. As a result, the latest error is immediately notified to the operator.
 図3Cは、ディスク装置309が格納するデータを示す。ディスク装置309は、退避ログ331、エラーログ332、及びアプリケーション設定ファイル333を格納する。なお、退避ログ331、エラーログ332、及びアプリケーション設定ファイル333は、主メモリ307に格納されてもよい。 FIG. 3C shows data stored in the disk device 309. The disk device 309 stores a save log 331, an error log 332, and an application setting file 333. Note that the save log 331, the error log 332, and the application setting file 333 may be stored in the main memory 307.
 退避ログ331は、データ同期サーバ接続用プログラム306が、更新データ及び付加情報をデータ同期サーバ106へ所定時間内で送信できず、一時的な障害が発生していると判定した場合に、更新データ及び付加情報を出力するファイルである。退避ログ331により、一時的な通信障害時の更新データを、回復後に送信できる。 The save log 331 indicates that the update data and the additional information cannot be transmitted to the data synchronization server 106 within a predetermined time and the data synchronization server connection program 306 determines that a temporary failure has occurred. And a file for outputting additional information. With the save log 331, update data at the time of a temporary communication failure can be transmitted after recovery.
 エラーログ332は、アプリケーションプログラム304が出力するエラー情報を格納する。アプリケーション設定ファイル323は、アプリケーションプログラム304が従う設定情報を格納する。運用管理サーバ107は、アプリケーション設定ファイル323を格納する。アプリケーション設定ファイル323は、アプリケーションプログラム304により参照され、トランザクションログの更新間隔、トランザクションログのファイルサイズ、トランザクションログの出力先及びファイル名等の情報を含む。 The error log 332 stores error information output by the application program 304. The application setting file 323 stores setting information that the application program 304 follows. The operation management server 107 stores an application setting file 323. The application setting file 323 is referred to by the application program 304 and includes information such as a transaction log update interval, a transaction log file size, a transaction log output destination, and a file name.
 図4Aは、データ同期サーバ106、116が保持するアプリケーション同期管理テーブル231の構成の例を示す。アプリケーション同期管理テーブル231は、データ同期サーバ間の同期状態及びアプリケーションサーバ間の同期状態を管理するために使用される。 FIG. 4A shows an example of the configuration of the application synchronization management table 231 held by the data synchronization servers 106 and 116. The application synchronization management table 231 is used to manage the synchronization state between data synchronization servers and the synchronization state between application servers.
 以下において、アプリケーションサーバ104は、アプリケーションサーバ104A~104Cの内の一つであり、アプリケーションサーバ114は、アプリケーションサーバ114A~114Cの内の一つであり、アプリケーションサーバ104とペアを構成する。アプリケーションサーバ104がサービスを提供するアクティブなアプリケーションサーバであり、アプリケーションサーバ114は、スタンバイアプリケーションサーバでるとする。 In the following, the application server 104 is one of the application servers 104A to 104C, and the application server 114 is one of the application servers 114A to 114C, and forms a pair with the application server 104. Assume that the application server 104 is an active application server that provides services, and the application server 114 is a standby application server.
 アプリケーション同期管理テーブル231の各エントリは、管理ID401、アプリケーション情報402、データ同期サーバ間同期状態403、アプリケーション同期状態404、稼働情報405、及び、オプション情報406を含んで構成される。 Each entry of the application synchronization management table 231 includes a management ID 401, application information 402, a data synchronization server synchronization state 403, an application synchronization state 404, operation information 405, and option information 406.
 管理ID401は、アプリケーション同期管理テーブル231の各エントリを管理するための識別子である。管理ID401の一つのエントリが、一つアプリケーションプログラム304の登録情報を格納する。 Management ID 401 is an identifier for managing each entry in the application synchronization management table 231. One entry of management ID 401 stores registration information of one application program 304.
 アプリケーション情報402は、データ同期処理の対象であるアプリケーションプログラム304の情報を示す。たとえば、アプリケーションの識別子、RDB、KVS、オリジナルのユーザアプリケーション等のアプリケーションの種別、バージョン、アプリケーション固有のデータ同期方式等の情報が格納される。アプリケーション情報402は、アプリケーションプログラムを実行するアプリケーションサーバの情報を格納してもよい。 Application information 402 indicates information of an application program 304 that is a target of data synchronization processing. For example, information such as an application identifier, RDB, KVS, an application type such as an original user application, a version, and an application-specific data synchronization method is stored. The application information 402 may store information on an application server that executes an application program.
 データ同期サーバ間同期状態403は、データ同期サーバ106とデータ同期サーバ116との間の保持するデータの同期状態を示す。データ同期サーバ106、116間で、データが同期している場合、つまり、データ同期サーバ106が送信した直前のデータをデータ同期サーバ116が正常に受信している場合、データ同期サーバ間同期状態403は、「同期OK」を示す。 The data synchronization server synchronization state 403 indicates the synchronization state of data held between the data synchronization server 106 and the data synchronization server 116. When data is synchronized between the data synchronization servers 106 and 116, that is, when the data synchronization server 116 has successfully received the data immediately before it was transmitted by the data synchronization server 106, the data synchronization server synchronization state 403 Indicates “synchronization OK”.
 データ同期サーバ106、116間で、データが同期していない場合、つまり、データ同期サーバ106が送信したデータを、データ同期サーバ116が正常に受信できなかった場合、データ同期サーバ間同期状態403は、「同期NG」を示す。 When the data is not synchronized between the data synchronization servers 106 and 116, that is, when the data synchronization server 116 has not been able to normally receive the data transmitted by the data synchronization server 106, the data synchronization server synchronization state 403 is , “Synchronous NG”.
 データ同期サーバ106が、アプリケーションサーバ104が更新データを受信し、当該更新データの転送後にデータ同期サーバ116から正常な受信応答を受信する前において、データ同期サーバ間同期状態403は、「同期中」を示す。 Before the data synchronization server 106 receives the update data from the application server 104 and receives a normal reception response from the data synchronization server 116 after the update data is transferred, the synchronization state 403 between the data synchronization servers is “synchronized”. Indicates.
 データ同期サーバ間同期状態403は、さらに、Com_IDとData_IDとを示す。Com_IDは、データ同期サーバ106、116間における、データ同期のための通信のトランザクションをカウントするIDである。Data_IDは、データ同期サーバ106、116間で転送されるデータのIDである。 The data synchronization server synchronization state 403 further indicates Com_ID and Data_ID. Com_ID is an ID that counts communication transactions for data synchronization between the data synchronization servers 106 and 116. Data_ID is an ID of data transferred between the data synchronization servers 106 and 116.
 アプリケーションサーバ104から更新データファイルがデータ同期サーバ106に転送される。当該更新データファイルには、バージョンを示すData_IDが付与される。更新データファイルのデータ同期サーバ106、116の転送(トランザクション)に、Com_IDが付与される。データ同期サーバ106は、更新データファイルと共に、Data_ID及びCom_IDをデータ同期サーバ116に送信する。 The update data file is transferred from the application server 104 to the data synchronization server 106. Data_ID indicating a version is assigned to the update data file. Com_ID is assigned to the transfer (transaction) of the data synchronization servers 106 and 116 of the update data file. The data synchronization server 106 transmits Data_ID and Com_ID together with the update data file to the data synchronization server 116.
 データ同期サーバ間同期状態403は、最後に同期した、つまり、データ同期サーバ106、116間で正常に転送された最後の更新データファイルのCom_ID及びData_IDを示す。各IDは同期した時刻の情報を含む。データ同期サーバ間同期状態403は、データの中身が正しいかどうか確認するためのチェックサム情報を含んでもよい。データ同期サーバ間同期状態403が「同期中」との情報に加え、同期中の更新データのCom_ID及びData_IDを示してもよい。 The synchronization state 403 between data synchronization servers indicates the Com_ID and Data_ID of the last update data file that has been synchronized last, that is, that has been normally transferred between the data synchronization servers 106 and 116. Each ID includes information on the synchronized time. The data synchronization server synchronization state 403 may include checksum information for confirming whether the data contents are correct. In addition to the information that the synchronization state 403 between the data synchronization servers is “synchronizing”, the Com_ID and Data_ID of the update data being synchronized may be indicated.
 アプリケーション同期状態404は、アプリケーションサーバ104、114間のエンドツーエンドの同期状態を示す。アプリケーションサーバ104、114のアプリケーションデータが同期している場合、アプリケーション同期状態404は「同期OK」を示し、さらに、同期完了している最後の更新データのData_IDを示す。 Application synchronization state 404 indicates an end-to-end synchronization state between the application servers 104 and 114. When the application data of the application servers 104 and 114 are synchronized, the application synchronization state 404 indicates “synchronization OK”, and further indicates Data_ID of the last update data that has been synchronized.
 二つのアプリケーションサーバ104、114におけるアプリケーションのデータが、一致している場合、つまり、アプリケーションサーバ104におけるアプリケーションの全更新データが、アプリケーションサーバ114に反映されている場合、二つのアプリケーションサーバ104、114間において、アプリケーションは同期している。 When the application data in the two application servers 104 and 114 match, that is, when all update data of the application in the application server 104 is reflected in the application server 114, the two application servers 104 and 114 In, the application is synchronized.
 データ同期サーバ106、116間でデータは同期されているが、データ同期サーバ116とアプリケーションサーバ114との間で同期処理中である場合、アプリケーション同期状態404は、「リモート同期中」を示す。アプリケーション同期状態404は、現在処理中のData_ID及び直近の同期が完了している最終同期Data_IDを示す。 When data is synchronized between the data synchronization servers 106 and 116, but the synchronization process is being performed between the data synchronization server 116 and the application server 114, the application synchronization state 404 indicates “during remote synchronization”. The application synchronization state 404 indicates the Data_ID currently being processed and the final synchronization Data_ID for which the most recent synchronization has been completed.
 エンドツーエンドの同期処理が停止している場合、アプリケーション同期状態404は、「同期NG」を示す。アプリケーション同期状態404は、さらに、その詳細なエラー要因と、最終同期Data_IDとを示す。 When the end-to-end synchronization processing is stopped, the application synchronization state 404 indicates “synchronization NG”. The application synchronization state 404 further indicates the detailed error factor and the final synchronization Data_ID.
 アプリケーション同期状態404に加え、データ同期サーバ間同期状態403により、障害発生時に、運用者は障害箇所とデータ同期済みサーバとを迅速に特定することができる。なお、データ同期サーバ間同期状態403を省略してもよい。 In addition to the application synchronization state 404, the data synchronization server synchronization state 403 allows the operator to quickly identify the failure location and the data synchronized server when a failure occurs. The data synchronization server synchronization state 403 may be omitted.
 稼働情報405は、データセンタ(DC)109、119のアプリケーションサーバの稼働状況を示す。本例においては、稼働情報405は、アプリケーションサーバが属するデータセンタの識別子を示す。 The operation information 405 indicates the operation status of the application server of the data center (DC) 109, 119. In this example, the operation information 405 indicates the identifier of the data center to which the application server belongs.
 アプリケーションサーバが通信端末101へサービスを行っているアクティブ状態である場合、稼働情報405は「(A)」を示す。アプリケーションサーバが、アクティブアプリケーションサーバのデータバックアップ先として稼働しているスタンバイ状態である場合、稼働情報405は「(S)」を示す。アプリケーションサーバの稼働状況が確認できない、または停止している場合、稼働情報405は「(-)」を示す。 When the application server is in an active state where a service is provided to the communication terminal 101, the operation information 405 indicates “(A)”. When the application server is in a standby state operating as a data backup destination of the active application server, the operation information 405 indicates “(S)”. When the operation status of the application server cannot be confirmed or is stopped, the operation information 405 indicates “(−)”.
 オプション情報406は、アプリケーションサーバの同期処理に関する追加情報を示す。たとえば、「優先度」は、データ同期サーバによる同期処理の、アプリケーション間の優先度を示す。優先度が高いアプリケーションの同期処理が、低いアプリケーションよりも先に実行される。「多重度」は、同期(バックアップ)を実行するデータセンタの数を示す。「ロードバランサ閉(DC2)」は、データセンタDC2のロードバランサが、当該アプリケーションを実行するアプリケーションサーバ用のポートが閉塞し、サービスを停止している状態を示す。 Option information 406 indicates additional information related to the synchronization processing of the application server. For example, “priority” indicates the priority between applications of the synchronization processing by the data synchronization server. Synchronization processing of an application with a high priority is executed before an application with a low priority. “Multiplicity” indicates the number of data centers that execute synchronization (backup). “Load balancer closed (DC2)” indicates a state in which the load balancer of the data center DC2 closes the service for the application server that executes the application and stops the service.
 一つのアプリケーションサーバが複数のアプリケーションプログラムを実行する場合、アプリケーション同期管理テーブル231は、アプリケーションサーバとアプリケーションプログラムを関連付ける情報を格納する。 When one application server executes a plurality of application programs, the application synchronization management table 231 stores information for associating the application server with the application program.
 図4Bは、データ同期サーバ106、116の障害時処理テーブル233の一例を示す。データ同期サーバ106、116は、データ同期処理の対象である同一データセンタ内のアプリケーションサーバ毎に、1つの障害時処理テーブル233を保持する。データ同期サーバ106、116は、障害発生時に障害時処理テーブル233を参照することにより、図5における同期監視及び図6、7で示す障害対応処理及び切替処理を実行する。障害時処理テーブル233により障害発生箇所に応じた障害時処理を実現できる。 FIG. 4B shows an example of the failure time processing table 233 of the data synchronization servers 106 and 116. The data synchronization servers 106 and 116 hold one failure processing table 233 for each application server in the same data center that is the target of data synchronization processing. The data synchronization servers 106 and 116 execute the synchronization monitoring in FIG. 5 and the failure handling processing and switching processing shown in FIGS. The failure time processing table 233 can realize failure time processing according to the location where the failure occurred.
 以下においては、データ同期サーバ106の障害時処理テーブル233の例を説明する。障害時処理テーブル233は、障害ポイント451、同期監視方法452、一時障害時処理情報453、障害時処理情報454、及びオプション情報455を含んで構成される。 Hereinafter, an example of the failure processing table 233 of the data synchronization server 106 will be described. The failure processing table 233 includes a failure point 451, a synchronization monitoring method 452, temporary failure processing information 453, failure processing information 454, and option information 455.
 障害ポイント451は、障害の発生箇所を示す。障害の発生箇所は、例えば、データ同期サーバ106以外の、同一データセンタ109内のアプリケーションサーバ104(ローカル)、リモートデータセンタ119のアプリケーションサーバ114、データ同期サーバ116、データセンタ間ネットワーク108である。 The failure point 451 indicates the location where the failure has occurred. The location where the failure occurs is, for example, the application server 104 (local) in the same data center 109 other than the data synchronization server 106, the application server 114 in the remote data center 119, the data synchronization server 116, and the inter-data center network 108.
 同期監視方法452は、データ同期サーバ106が障害ポイント451の同期状態及び生存状態を監視するための方法を示す。同期監視方法452は、たとえば、対象がアプリケーションサーバ104の場合、データ同期サーバ接続用プログラム306による同期用ファイルインタフェース305を介したファイル監視、およびデータ同期サーバ接続用プログラム306との同期監視を示す。同期監視方法452は、アプリケーションサーバ104のアプリケーションプログラム304、またはアプリケーション情報402に依存する。 The synchronization monitoring method 452 indicates a method for the data synchronization server 106 to monitor the synchronization state and the survival state of the failure point 451. For example, when the target is the application server 104, the synchronization monitoring method 452 indicates file monitoring via the synchronization file interface 305 by the data synchronization server connection program 306 and synchronization monitoring with the data synchronization server connection program 306. The synchronization monitoring method 452 depends on the application program 304 or application information 402 of the application server 104.
 一時障害時処理情報453は、データ同期サーバ106が障害ポイント453での一時的な障害を検知するためのタイムアウトの情報と、一時障害後の処理内容の情報を示す。障害時処理情報454は、切替処理等を行う必要のある永久的な障害を検知するための情報と、障害後の処理内容の情報を示す。オプション情報455は、障害時処理に関する追加の情報を示し、たとえば過去の障害履歴等の情報を示す。 Temporary failure processing information 453 indicates time-out information for the data synchronization server 106 to detect a temporary failure at the failure point 453 and processing content information after the temporary failure. The failure processing information 454 indicates information for detecting a permanent failure that needs to be subjected to a switching process and the like, and information on processing contents after the failure. The option information 455 indicates additional information related to failure processing, for example, information such as past failure history.
 以上の障害時処理テーブル233において、アプリケーション情報402に対応した初期設定が予め決定されており、データ同期サーバ106によるアプリケーション登録時に生成される。運用者は、運用管理サーバ107から障害時処理テーブル233を変更できる。データ同期サーバ106は、同期監視通信等により、通信状況を判定し、一時障害時処理情報453、障害時処理情報454の障害検知するためのタイムアウト等の設定を動的に変更してもよい。 In the failure processing table 233 described above, initial settings corresponding to the application information 402 are determined in advance and are generated when the data synchronization server 106 registers an application. The operator can change the failure processing table 233 from the operation management server 107. The data synchronization server 106 may determine the communication status by synchronization monitoring communication or the like, and dynamically change settings such as timeout for detecting the failure in the temporary failure processing information 453 and the failure processing information 454.
 図5は、正常時のデータ同期処理のシーケンスの一例を示す。アプリケーションサーバ104は、アプリケーションサーバ104A~104Cのいずれかであり、アプリケーションサーバ114は、アプリケーションサーバ114A~114Cにおいて、アプリケーションサーバ104とペアを構成するアプリケーションサーバである。以下において、アプリケーションサーバ104がアクティブであり、アプリケーションサーバ114がスタンバイであるとする。 FIG. 5 shows an example of a sequence of normal data synchronization processing. The application server 104 is one of the application servers 104A to 104C, and the application server 114 is an application server that forms a pair with the application server 104 in the application servers 114A to 114C. In the following, it is assumed that the application server 104 is active and the application server 114 is on standby.
 なお、特に指摘がない場合、データ同期サーバ106、116の処理はデータ同期サーバプログラム204により実行され、アプリケーションサーバ104、114の処理は、データ同期サーバ接続用プログラム306によって実行される。以上の点は、他のシーケンス図において同様である。 Note that unless otherwise indicated, the processing of the data synchronization servers 106 and 116 is executed by the data synchronization server program 204, and the processing of the application servers 104 and 114 is executed by the data synchronization server connection program 306. The above points are the same in other sequence diagrams.
 ステップ501からステップ503は、各サーバ間の同期状態をチェックするためのシーケンスであり、定期的に実行される。サーバ間の同期状態のチェックは、障害時処理テーブル233に示す方法により実行される。ステップ501、503のように点線で示されるステップは、別プログラムを介した処理を含む場合があり、これらのステップはアプリケーションサーバ104(アプリケーションプログラム304)に依存する。 Steps 501 to 503 are a sequence for checking the synchronization state between the servers, and are periodically executed. The synchronization status check between servers is executed by the method shown in the failure time processing table 233. Steps indicated by dotted lines as in steps 501 and 503 may include processing via another program, and these steps depend on the application server 104 (application program 304).
 データ同期サーバ106は、アプリケーションサーバ104の同期状態及び生存状態(故障の有無)を定期的に監視する同期監視を実行する(ステップ501)。例えば、アプリケーションサーバ104内のデータ同期サーバ接続用プログラム306が、同期用ファイルインタフェース305を介して、アプリケーションプログラム304がエラーログ332に出力するエラー情報を監視する。 The data synchronization server 106 executes synchronization monitoring for periodically monitoring the synchronization state and the survival state (the presence / absence of failure) of the application server 104 (step 501). For example, the data synchronization server connection program 306 in the application server 104 monitors error information that the application program 304 outputs to the error log 332 via the synchronization file interface 305.
 データ同期サーバ接続用プログラム306は、データ同期サーバ106に、エラーログ332出力ファイルの更新内容を送信する。他の方法として、データ同期サーバ106が、定期的にアプリケーションサーバ104に所定のコマンドを送信し、データ同期サーバ接続用クライアントプログラム306から返された応答を参照することによって実現してもよい。 The data synchronization server connection program 306 transmits the update contents of the error log 332 output file to the data synchronization server 106. As another method, the data synchronization server 106 may periodically transmit a predetermined command to the application server 104 and refer to a response returned from the data synchronization server connection client program 306.
 ステップ502の同期監視通信は、データ同期サーバ106とデータ同期サーバ116間の同期状態及び相手サーバの障害の有無をチェックするためのものである。ステップ502の同期監視通信において、データ同期サーバ106は、アプリケーション識別子と、アプリケーションサーバ104からの受信済み更新データの最新のData_ID及びCom_IDとを、パケットに含める。データ同期サーバ116は、アプリケーション識別子と、データ同期サーバ106からの受信済み更新データの最新のData_ID及びCom_IDとを、パケットに含める。 The synchronization monitoring communication in step 502 is for checking the synchronization state between the data synchronization server 106 and the data synchronization server 116 and the presence or absence of a failure of the partner server. In the synchronization monitoring communication in step 502, the data synchronization server 106 includes the application identifier and the latest Data_ID and Com_ID of the update data received from the application server 104 in the packet. The data synchronization server 116 includes the application identifier and the latest Data_ID and Com_ID of the update data received from the data synchronization server 106 in the packet.
 データ同期サーバ106、116間の最新のData_ID及びCom_IDが一致しない場合、データ同期サーバ106は、未転送の更新データをデータ同期サーバ116に送信する。ステップ503は、ステップ501と同様である。 If the latest Data_ID and Com_ID between the data synchronization servers 106 and 116 do not match, the data synchronization server 106 transmits untransferred update data to the data synchronization server 116. Step 503 is similar to step 501.
 ステップ511以降のシーケンスは、アクティブであるアプリケーションサーバ104で更新されたデータを、スタンバイのアプリケーションサーバ114へ転送する。ステップ511からステップ523ステップにおいて、データ同期サーバ106及びデータ同期サーバ116は、アプリケーション同期管理テーブル231のデータ同期サーバ間同期状態403及びアプリケーション同期状態404を更新する。 In the sequence after step 511, the data updated by the active application server 104 is transferred to the standby application server 114. In steps 511 to 523, the data synchronization server 106 and the data synchronization server 116 update the data synchronization server synchronization state 403 and the application synchronization state 404 of the application synchronization management table 231.
 最初に、アプリケーションサーバ104は、アプリケーションプログラム304による更新データ及び付加情報をデータ同期サーバ106へ送信する(ステップ511)。図5において、付加情報は更新データに含まれているものとする。更新データに付随する付加情報は、更新データをデータ同期サーバ106で管理するためのデータであり、更新データのバージョンを示すData_ID、送信時刻、管理ID401の値を含んで構成される。アプリケーションサーバ104は、更新データに含まれる付加情報に、Com_IDを含めてもよい。 First, the application server 104 transmits update data and additional information by the application program 304 to the data synchronization server 106 (step 511). In FIG. 5, it is assumed that the additional information is included in the update data. The additional information attached to the update data is data for managing the update data by the data synchronization server 106, and includes the Data_ID indicating the version of the update data, the transmission time, and the value of the management ID 401. The application server 104 may include Com_ID in the additional information included in the update data.
 ステップ511では、アプリケーションサーバ104内のアプリケーションプログラム304は、トランザクションログ321へ更新データを出力する。データ同期サーバ接続用プログラム306は、更新データを、同期用ファイルインタフェース305を介して受信し、更新データをデータ同期サーバ106へ送信する。 In step 511, the application program 304 in the application server 104 outputs update data to the transaction log 321. The data synchronization server connection program 306 receives the update data via the synchronization file interface 305 and transmits the update data to the data synchronization server 106.
 次に、データ同期サーバ106は、更新データをデータ記憶部208へ格納し(ステップ512)、正常に受信したことを示す受領応答をアプリケーションサーバ104へ送信する(ステップ513)。受領応答は、付加情報に含まれるアプリケーション識別子及びData_IDを含む。データ同期サーバ106は、アプリケーション同期管理テーブル231のデータ同期サーバ間同期状態403において、該当するアプリケーションの情報を「同期中」に更新する。ステップ513の後、データ同期サーバ106は、更新データをデータ同期サーバ116へ送信する(ステップ514)。 Next, the data synchronization server 106 stores the update data in the data storage unit 208 (step 512), and transmits a receipt response indicating that it has been normally received to the application server 104 (step 513). The receipt response includes the application identifier and Data_ID included in the additional information. The data synchronization server 106 updates the corresponding application information to “in synchronization” in the inter-data synchronization server synchronization state 403 of the application synchronization management table 231. After step 513, the data synchronization server 106 transmits the update data to the data synchronization server 116 (step 514).
 更新データの付加情報は、アプリケーション識別子、Data_ID、及びCom_IDを含む。アプリケーションサーバ104から付加情報にCom_IDが含まれていない場合、データ同期サーバ106は、Com_IDを生成する。 The additional information of the update data includes an application identifier, Data_ID, and Com_ID. When Com_ID is not included in the additional information from the application server 104, the data synchronization server 106 generates Com_ID.
 データ同期サーバ116は、ステップ514で受信した更新データを、データ記憶部208へ格納する(ステップ515)。データ同期サーバ116は、正常に受信したことを示す受領応答をデータ同期サーバ106へ送信し、アプリケーション同期管理テーブル231のデータ同期サーバ間同期状態403において、同期状態を「同期OK」に更新し、さらに、Com_IDとData_IDの値を更新する(ステップ516)。受領応答は、アプリケーション識別子、Data_ID及びCom_IDを含む。 The data synchronization server 116 stores the update data received in step 514 in the data storage unit 208 (step 515). The data synchronization server 116 transmits a receipt response indicating that the data has been normally received to the data synchronization server 106, and updates the synchronization state to “synchronization OK” in the synchronization state 403 between the data synchronization servers in the application synchronization management table 231. Further, the values of Com_ID and Data_ID are updated (step 516). The receipt response includes an application identifier, Data_ID, and Com_ID.
 データ同期サーバ106は、受領応答を受信すると、データ同期サーバ106とデータ同期サーバ116間の同期が成立していると判定し、アプリケーション同期管理テーブル231を更新する(ステップ525)。具体的には、データ同期サーバ106は、データ同期サーバ間同期状態403において、同期状態を「同期OK」に更新し、Com_IDとData_IDの値を更新する。データ同期サーバ106は、さらに、アプリケーション同期状態404において、同期状態を「リモート同期中」に更新し、同期中のData_IDの値を追加する。 When receiving the receipt response, the data synchronization server 106 determines that synchronization between the data synchronization server 106 and the data synchronization server 116 is established, and updates the application synchronization management table 231 (step 525). Specifically, in the data synchronization server synchronization state 403, the data synchronization server 106 updates the synchronization state to “synchronization OK” and updates the values of Com_ID and Data_ID. Further, in the application synchronization state 404, the data synchronization server 106 updates the synchronization state to “during remote synchronization” and adds the value of Data_ID being synchronized.
 データ同期サーバ116は、ステップ514で受信した更新データを用いて、アプリケーションサーバ114のデータを更新する同期処理を行う(ステップ517)。データ同期サーバ116は、アプリケーション同期状態404において、同期状態を「リモート同期中」に更新し、同期中のData_IDの値を追加する。 The data synchronization server 116 performs a synchronization process for updating the data of the application server 114 using the update data received in step 514 (step 517). In the application synchronization state 404, the data synchronization server 116 updates the synchronization state to “during remote synchronization” and adds the value of Data_ID being synchronized.
 データ同期サーバ116は、更新データをアプリケーションサーバ114に送信する。例えば、データ同期サーバ116は、更新データをアプリケーションプログラム304が受信できるプロトコルに変換して送信する。または、データ同期サーバ116は、アプリケーションサーバ114の同期用ファイルインタフェース305に更新データのファイルを配置する。 The data synchronization server 116 transmits the update data to the application server 114. For example, the data synchronization server 116 converts the update data into a protocol that can be received by the application program 304 and transmits it. Alternatively, the data synchronization server 116 places the update data file in the synchronization file interface 305 of the application server 114.
 データ同期サーバ116は、アプリケーションサーバ114から受領応答を参照して、アプリケーションサーバ114の同期処理(データの更新処理)が正常に完了したかを確認する(ステップ518)。受領応答には、アプリケーション識別子及びData_IDが含まれ、例えば、データ同期サーバ接続用プログラム306により送信される。 The data synchronization server 116 refers to the receipt response from the application server 114 and confirms whether the synchronization processing (data update processing) of the application server 114 has been normally completed (step 518). The receipt response includes the application identifier and Data_ID, and is transmitted by the data synchronization server connection program 306, for example.
 データ同期サーバ116は、アプリケーションサーバ114おける正常なデータ更新を確認すると、その結果を示す同期完了通知を、データ同期サーバ106へ送信する(ステップ519)。同期完了通知は、アプリケーション識別子、Data_ID及びCom_IDを含む。その後、データ同期サーバ116は、更新データを削除する削除処理を実行する(ステップ520)。ステップ518は、ステップ517と同様である。 When the data synchronization server 116 confirms normal data update in the application server 114, the data synchronization server 116 transmits a synchronization completion notification indicating the result to the data synchronization server 106 (step 519). The synchronization completion notification includes an application identifier, Data_ID, and Com_ID. Thereafter, the data synchronization server 116 executes a deletion process for deleting the update data (step 520). Step 518 is similar to step 517.
 データ同期サーバ106は、同期完了通知を受信すると、アプリケーションサーバ104からアプリケーションサーバ114のデータがエンドツーエンドで全て同期されたと判定する。データ同期サーバ106は、アプリケーション同期管理テーブル231のアプリケーション同期状態404において、同期状態を「同期OK」に更新し、リモート同期中のData_IDを残し、最終同期Data_IDを削除する(以下、全同期確認処理と呼ぶ)(ステップ521)。 When receiving the synchronization completion notification, the data synchronization server 106 determines that all the data of the application server 114 from the application server 104 is synchronized end to end. The data synchronization server 106 updates the synchronization state to “synchronization OK” in the application synchronization state 404 of the application synchronization management table 231, leaves Data_ID during remote synchronization, and deletes the last synchronization Data_ID (hereinafter, all synchronization confirmation processing) (Step 521).
 ステップ521の後、データ同期サーバ106は、データ同期サーバ116へ、アプリケーション識別子、Data_ID及びCom_IDを含む同期完了応答を送信し(ステップ522)、ステップ512で格納した更新データの削除処理を実行する(ステップ524)。ステップ522後、データ同期サーバ116は全同期確認処理を実行し、アプリケーション同期管理テーブル231を更新する(ステップ523)。データ同期サーバ116は、データ同期サーバ106の前に、全同期確認処理を実行してもよい。 After step 521, the data synchronization server 106 transmits a synchronization completion response including the application identifier, Data_ID, and Com_ID to the data synchronization server 116 (step 522), and executes the deletion process of the update data stored in step 512 (step 522). Step 524). After step 522, the data synchronization server 116 executes all synchronization confirmation processing and updates the application synchronization management table 231 (step 523). The data synchronization server 116 may execute a full synchronization confirmation process before the data synchronization server 106.
 上述のように、データ同期サーバ106(116)は、アプリケーション同期管理テーブル231を用いて、同期元及び同期先のアプリケーションサーバ104、114並びにリモートデータセンタ119(109)のデータ同期サーバ116(106)と連携することにより、データセンタ109、119を跨いだアプリケーションプログラム間のEnd to Endのデータ同期状態を管理できる。 As described above, the data synchronization server 106 (116) uses the application synchronization management table 231, and the data synchronization server 116 (106) of the synchronization source and synchronization destination application servers 104 and 114 and the remote data center 119 (109). By coordinating with, the end-to-end data synchronization state between the application programs across the data centers 109 and 119 can be managed.
 図6は、データ同期処理における一時的な障害時のシーケンスの一例を示す。一時的な障害は、永久的な障害と異なり、ある程度の時間で除去されることが想定されている。なお、永久的な障害のケースは図7を参照して後述する。データ同期サーバ106、116によるアプリケーション同期管理テーブル231の更新は図5と同様であり、詳細な説明を省略する。 FIG. 6 shows an example of a sequence at the time of a temporary failure in the data synchronization processing. Temporary faults are supposed to be removed in a certain amount of time, unlike permanent faults. The case of a permanent failure will be described later with reference to FIG. The update of the application synchronization management table 231 by the data synchronization servers 106 and 116 is the same as that shown in FIG.
 ステップ601~604は、アプリケーションサーバ104とデータ同期サーバ106との間のネットワークの障害時のシーケンスの一例である。ステップ614~616は、データ同期サーバ116、またはデータセンタ間ネットワーク108の障害時のシーケンスの一例である。ステップ617~620は、アプリケーションサーバ114、またはデータセンタ119内のネットワークの障害時のシーケンスの一例である。 Steps 601 to 604 are an example of a sequence when a network failure occurs between the application server 104 and the data synchronization server 106. Steps 614 to 616 are an example of a sequence at the time of failure of the data synchronization server 116 or the data center network 108. Steps 617 to 620 are an example of a sequence at the time of failure of the network in the application server 114 or the data center 119.
 以上の障害時シーケンスにおいて、データ同期サーバ106、116は、障害時処理テーブル233の一次障害時処理情報903を参照して障害時の対応方法を決定する。 In the above failure sequence, the data synchronization servers 106 and 116 refer to the primary failure processing information 903 on the failure processing table 233 to determine a response method at the time of failure.
 最初に、アプリケーションサーバ104は、更新データをデータ同期サーバ106へ送信しようとするが、ネットワークの一時的な障害により、更新データがデータ同期サーバ106に受信されない状況が発生したとする(ステップ601)。 First, the application server 104 tries to transmit update data to the data synchronization server 106, but a situation occurs in which the update data is not received by the data synchronization server 106 due to a temporary failure of the network (step 601). .
 このとき、アプリケーションサーバ104内のデータ同期サーバ接続用プログラム306は、更新データの再送しようとするが、所定時間内に送信できず、一時的な障害があったと判定する。データ同期サーバ接続用プログラム306は、更新データを、退避ログ331として、ディスク装置309へ出力する(ステップ602)。 At this time, the data synchronization server connection program 306 in the application server 104 tries to retransmit the update data, but cannot transmit within the predetermined time, and determines that there is a temporary failure. The data synchronization server connection program 306 outputs the update data as the save log 331 to the disk device 309 (step 602).
 ネットワーク障害からの回復の後、データ同期サーバ106とアプリケーションサーバ104とは、同期監視を再開し、互いの同期状態を確認する(ステップ603)。アプリケーションサーバ104の最新のData_IDとデータ同期サーバ106の最新のData_IDとが異なる場合、障害時処理テーブル233が示すように、データ同期サーバ106は、アプリケーションサーバ104に、退避ログ331に退避していた更新データを送信することを要求する。 After the recovery from the network failure, the data synchronization server 106 and the application server 104 restart the synchronization monitoring and confirm the mutual synchronization state (step 603). When the latest Data_ID of the application server 104 is different from the latest Data_ID of the data synchronization server 106, the data synchronization server 106 was saved in the save log 331 in the application server 104 as shown in the failure processing table 233. Requests that update data be sent.
 アプリケーションサーバ104は、退避ログ331に退避していた更新データをデータ同期サーバ106へ送信する(ステップ604)。アプリケーションサーバ104は、最新のData_IDが一致しない場合、データ同期サーバ106からの要求に拠らず、退避ログ331のデータを送信してもよい。 The application server 104 transmits the update data saved in the save log 331 to the data synchronization server 106 (step 604). If the latest Data_ID does not match, the application server 104 may transmit the data of the save log 331 regardless of the request from the data synchronization server 106.
 ステップ611~613は、ステップ511~513と同様のシーケンスであり、アプリケーションサーバ104からデータ同期サーバ106へ更新データが送信される。次に、データ同期サーバ106は、ステップ611で受信した更新データをデータ同期サーバ116へ送信しようとするが、データ同期サーバ116、またはデータセンタ間ネットワーク108の一時的な障害により、更新データがデータ同期サーバ116に受信されない状況が発生したとする(ステップ614A)。 Steps 611 to 613 are the same sequence as steps 511 to 513, and update data is transmitted from the application server 104 to the data synchronization server 106. Next, the data synchronization server 106 tries to transmit the update data received in step 611 to the data synchronization server 116. However, the update data is data due to a temporary failure of the data synchronization server 116 or the inter-data center network 108. It is assumed that a situation that is not received by the synchronization server 116 occurs (step 614A).
 データ同期サーバ106は、受領応答を受信せずに所定時間経過した場合、更新データを再送する(ステップ614B)。ステップ614Bで再送に成功した場合、データ同期サーバ116は、ステップ515~516と同様に、更新データを格納し(ステップ615)、受領応答をデータ同期サーバ106へ送信する(ステップ616)。 The data synchronization server 106 resends the update data when a predetermined time has elapsed without receiving the receipt response (step 614B). If the retransmission is successful in step 614B, the data synchronization server 116 stores the update data (step 615) and transmits a receipt response to the data synchronization server 106 (step 616), as in steps 515 to 516.
 次に、データ同期サーバ116は、ステップ517と同様に、アプリケーションサーバ114への同期処理を実行する(ステップ617A)。ステップ617Aがアプリケーションサーバ114またはデータセンタ119内のネットワークの一時障害により失敗した場合、データ同期サーバ116は、同期確認処理で同期できていない状態(同期NG)の検知と、同期NGの詳細の情報を取得する(ステップ618A)。 Next, the data synchronization server 116 executes the synchronization process to the application server 114 in the same manner as in step 517 (step 617A). When step 617A fails due to a temporary failure of the application server 114 or the network in the data center 119, the data synchronization server 116 detects the state of being out of synchronization (synchronization NG) in the synchronization confirmation process, and details information on the synchronization NG Is acquired (step 618A).
 たとえば、データ同期サーバ116は、正常な受領応答を受信できない場合、障害を確認するためのパケットをアプリケーションサーバ114に向けて送信する。データ同期サーバ116は、エラー応答を参照することで、障害位置や障害内容を知ることができる。エラー応答は、アプリケーションプログラム304、アプリケーションサーバ114の他プログラム、またはネットワーク上の通信装置から受信する。 For example, when the data synchronization server 116 cannot receive a normal receipt response, the data synchronization server 116 transmits a packet for confirming the failure to the application server 114. The data synchronization server 116 can know the failure position and the failure content by referring to the error response. The error response is received from the application program 304, another program of the application server 114, or a communication device on the network.
 次に、データ同期サーバ116は、ステップ618で取得した情報を分析し、同期処理のためのパラメータを変更する(ステップ619)。ステップ619では、データ同期サーバ116は、たとえば、ステップ618の結果により、一回に送信するデータのサイズを小さくする。更新データは、小さくされたサイズのデータに分割されて送信される。 Next, the data synchronization server 116 analyzes the information acquired in step 618 and changes the parameters for the synchronization processing (step 619). In step 619, the data synchronization server 116 reduces the size of data to be transmitted at a time, for example, based on the result of step 618. The update data is divided into data of a reduced size and transmitted.
 ステップ619の後、データ同期サーバ116は、変更したパラメータにおいて、アプリケーションサーバ114に対する同期処理をリトライする(ステップ617B)。ステップ617Bが成功すれば、データ同期サーバ116は、同期できている状態(同期OK)を、受領応答を参照して確認し(ステップ618B)、同期完了通知をデータ同期サーバ106へ送信する(ステップ620)。 After step 619, the data synchronization server 116 retries the synchronization process for the application server 114 with the changed parameters (step 617B). If step 617B is successful, the data synchronization server 116 confirms the synchronization status (synchronization OK) with reference to the receipt response (step 618B), and sends a synchronization completion notification to the data synchronization server 106 (step 618B). 620).
 データ同期サーバ106は、同期完了通知を所定時間受信できなければ、更新データをデータ同期サーバ116へ再送する。これは、データ同期サーバ106とデータ同期サーバ116が同期できていても、その直後にデータ同期サーバ116またはデータセンタ119がダウンしていた場合があり得るからである。 The data synchronization server 106 resends the update data to the data synchronization server 116 if the synchronization completion notification cannot be received for a predetermined time. This is because even if the data synchronization server 106 and the data synchronization server 116 are synchronized, the data synchronization server 116 or the data center 119 may be down immediately after that.
 データ同期サーバ106は、ステップ614Cにおいて、データセンタ119と異なるデータセンタ(データセンタ119の代行のデータセンタ)に更新データを送信し、他のデータセンタでデータ同期処理を継続してもよい。 In step 614C, the data synchronization server 106 may transmit update data to a data center different from the data center 119 (a data center acting on behalf of the data center 119), and may continue the data synchronization processing at another data center.
 上述のように、データ同期サーバ106、116は、一時的障害発生時、アプリケーション同期管理テーブル231を利用して、障害箇所と障害状況に応じて、アプリケーションプログラム間のデータを高速に同期させてサービスの復旧時間を短縮できる。 As described above, when a temporary failure occurs, the data synchronization servers 106 and 116 use the application synchronization management table 231 to synchronize data between application programs at high speed according to the failure location and the failure status. Recovery time can be shortened.
 図7は、障害によるアプリケーションサーバ104の切替処理のシーケンスの一例を示す。切替処理は、永久的な障害が発生し、通信端末101へサービスを提供しているアクティブなアプリケーションサーバを、アプリケーションサーバ104からリモートデータセンタのスタンバイのアプリケーションサーバ114へ切り替える。 FIG. 7 shows an example of a switching process sequence of the application server 104 due to a failure. In the switching process, an active application server that provides a service to the communication terminal 101 when a permanent failure occurs is switched from the application server 104 to the standby application server 114 of the remote data center.
 データ同期サーバ106は、ステップ501と同様に同期監視を行い、アプリケーションサーバ104との間の同期状態及びアプリケーションサーバ104の生存状態を監視する(ステップ701)。アプリケーションサーバ104がサーバ障害等によりサービスできなくなった場合、ステップ701により、データ同期サーバ106が障害を検知し(ステップ702)、運用管理サーバ107へ異常を通知する(ステップ703)。 The data synchronization server 106 performs synchronization monitoring in the same manner as in step 501, and monitors the synchronization state with the application server 104 and the survival state of the application server 104 (step 701). When the application server 104 becomes unable to service due to a server failure or the like, in step 701, the data synchronization server 106 detects the failure (step 702) and notifies the operation management server 107 of the abnormality (step 703).
 アプリケーションプログラム304のエラーの場合、データ同期サーバ接続用プログラム306が、アプリケーションプログラム304のエラー情報を格納するエラーログ332を参照して、アプリケーションプログラム304のエラーを検知する。データ同期サーバ接続用プログラム306は、エラーログ322を介して、運用管理サーバ107へ検知したエラーを通知する(ステップ704)。運用管理サーバ107は、ステップ703またはステップ704後、表示装置において異常の内容を表示する(ステップ705)。また、データ同期サーバ接続用プログラム306は、データ同期サーバ106の障害を検知した場合、エラーログ322を介して、運用管理サーバ107へ通知する。 In the case of an error in the application program 304, the data synchronization server connection program 306 detects an error in the application program 304 with reference to an error log 332 that stores error information of the application program 304. The data synchronization server connection program 306 notifies the operation management server 107 of the detected error via the error log 322 (step 704). The operation management server 107 displays the content of the abnormality on the display device after step 703 or 704 (step 705). The data synchronization server connection program 306 notifies the operation management server 107 via the error log 322 when a failure of the data synchronization server 106 is detected.
 ステップ706以降のシーケンスは、運用者がステップ705の結果から、アプリケーションサーバの切替処理を実行する場合のシーケンスである。運用者は、運用管理サーバ107に、アプリケーションサーバ104とアプリケーションサーバ114の同期状態を確認するための、同期状態確認用コマンドを入力する(ステップ706)。 The sequence after step 706 is a sequence when the operator executes the application server switching process based on the result of step 705. The operator inputs a synchronization status confirmation command for confirming the synchronization status of the application server 104 and the application server 114 to the operation management server 107 (step 706).
 運用管理サーバ107は、ステップ706後、アプリケーションサーバ104とアプリケーションサーバ114の同期状態を確認する同期状態確認の要求を、データ同期サーバ106へ送信する(ステップ710)。データ同期サーバ106は、アプリケーション同期管理テーブル231を参照し、対象のアプリケーションの同期情報を運用管理サーバ107へ送信する(ステップ712)。具体的には、データ同期サーバ106は、データ同期サーバ間同期状態403及びアプリケーション同期状態404の対応アプリケーションの情報を送信する。 After step 706, the operation management server 107 transmits a request for checking the synchronization state for checking the synchronization state between the application server 104 and the application server 114 to the data synchronization server 106 (step 710). The data synchronization server 106 refers to the application synchronization management table 231 and transmits the synchronization information of the target application to the operation management server 107 (step 712). Specifically, the data synchronization server 106 transmits information on the corresponding application in the inter-data synchronization server synchronization state 403 and the application synchronization state 404.
 運用管理サーバ107は、ステップ710A、712と同様に、同期状態確認の要求をデータ同期サーバ116へ送信し(ステップ711)、アプリケーションの同期状態の情報を受信する(ステップ713)。アプリケーション同期管理テーブル231により、運用管理サーバ107は、迅速にアプリケーションサーバ104、114間の同期状態の情報を取得することができる。 As in steps 710A and 712, the operation management server 107 transmits a synchronization status confirmation request to the data synchronization server 116 (step 711), and receives application synchronization status information (step 713). With the application synchronization management table 231, the operation management server 107 can quickly acquire information on the synchronization state between the application servers 104 and 114.
 運用管理サーバ107は、ステップ712、713で取得した、アプリケーションサーバ104、114の同期情報を、表示装置において表示する(ステップ714)。運用者は、ステップ714の結果から、アプリケーションサーバ104とアプリケーションサーバ114のデータが同期できていることを確認できた場合、アプリケーションサーバ104の切替処理を開始するコマンドを入力する(ステップ715)。データ同期サーバ106、116から受信した同期情報が「同期中」、「同期NG」を含まず、一致する場合、アプリケーションサーバ104とアプリケーションサーバ114のデータが同期できている。 The operation management server 107 displays the synchronization information of the application servers 104 and 114 acquired in steps 712 and 713 on the display device (step 714). If it is confirmed from the result of step 714 that the data of the application server 104 and the application server 114 can be synchronized, the operator inputs a command for starting the switching process of the application server 104 (step 715). When the synchronization information received from the data synchronization servers 106 and 116 does not include “synchronizing” and “synchronizing NG” and matches, the data of the application server 104 and the application server 114 can be synchronized.
 アプリケーションサーバ114に未転送の更新データが、データ同期サーバ106又は116に存在する場合、運用者は、データ同期のために規定時間を待って、同期状態確認の要求をデータ同期サーバ106、116に再送する。ステップ714が障害によりアプリケーションサーバ114のデータ同期が不可能であることを示す場合、運用者は、回復のためのオペレーションを実行する。 When update data that has not been transferred to the application server 114 exists in the data synchronization server 106 or 116, the operator waits for a specified time for data synchronization, and sends a request for synchronization status confirmation to the data synchronization servers 106 and 116. resend. If step 714 indicates that data synchronization of the application server 114 is not possible due to a failure, the operator performs an operation for recovery.
 運用管理サーバ107は、アプリケーションサーバ104を切替するための、切替要求をデータ同期サーバ106へ送信する(ステップ721)。データ同期サーバ106は、ステップ721の後、アプリケーション同期管理テーブル231のアプリケーション同期状態404及び稼働情報405を更新する。 The operation management server 107 transmits a switching request for switching the application server 104 to the data synchronization server 106 (step 721). After step 721, the data synchronization server 106 updates the application synchronization status 404 and the operation information 405 in the application synchronization management table 231.
 次に、データ同期サーバ106は、切替対象のアプリケーションサーバ104に対応するロードバランサ103のポートを閉塞し、アプリケーション同期管理テーブル231のオプション情報406にポート閉塞の情報を追加し(ステップ723)、正常応答を運用管理サーバ107へ送信する(ステップ725)。 Next, the data synchronization server 106 blocks the port of the load balancer 103 corresponding to the application server 104 to be switched, and adds the port blocking information to the option information 406 of the application synchronization management table 231 (Step 723). A response is transmitted to the operation management server 107 (step 725).
 また、運用管理サーバ107は、ステップ715後に、ステップ721と同様に、データ同期サーバ116へ切替要求を送信する(ステップ722)。データ同期サーバ116は、ステップ722後、アプリケーション同期管理テーブル231のアプリケーション同期状態404、稼働情報405を更新し、切替対象のアプリケーションサーバ114に対応するロードバランサ113のポートの閉塞解除し(ステップ724)、正常応答を運用管理サーバ107へ送信する。データ同期サーバ106、116が、ロードバランサ103、113を制御することで、迅速に切替処理を行うことができる。 Further, after step 715, the operation management server 107 transmits a switching request to the data synchronization server 116, similarly to step 721 (step 722). After step 722, the data synchronization server 116 updates the application synchronization status 404 and the operation information 405 in the application synchronization management table 231 and releases the block of the load balancer 113 corresponding to the application server 114 to be switched (step 724). A normal response is transmitted to the operation management server 107. The data synchronization servers 106 and 116 control the load balancers 103 and 113 so that the switching process can be performed quickly.
 図7のシーケンスは、運用者の介入を前提しているが、データ同期サーバ106及びデータ同期サーバ116は、運用者の介入なしで、切替処理を実行してもよい。データ同期サーバ106、116は、障害時処理テーブル233の障害時処理情報904が示す障害時の対応処理を実行する。これにより、運用者の操作を不要とし、さらに、迅速な切替処理を実現できる。 7 assumes the operator's intervention, the data synchronization server 106 and the data synchronization server 116 may execute the switching process without the operator's intervention. The data synchronization servers 106 and 116 execute a failure handling process indicated by the failure handling information 904 in the failure handling table 233. Thereby, an operator's operation is unnecessary, and a quick switching process can be realized.
 データ同期サーバ106、116が、運用管理サーバ107からの指示なしで切替処理を実行する場合、ステップ706、ステップ710~715を省略することができる。データ同期サーバ106とデータ同期サーバ116とは、ステップ710~713の代わりに同期監視(ステップ502)を実行し、アプリケーション同期管理テーブル231のアプリケーション同期状態404の情報を交換する。 When the data synchronization servers 106 and 116 execute the switching process without an instruction from the operation management server 107, step 706 and steps 710 to 715 can be omitted. The data synchronization server 106 and the data synchronization server 116 execute synchronization monitoring (step 502) instead of steps 710 to 713, and exchange information on the application synchronization state 404 in the application synchronization management table 231.
 障害発生したアプリケーションプログラム304(アプリケーションサーバ104)の同期状態の情報が、同期完了を示し、データ同期サーバ106、116間において一致している場合、データ同期サーバ106、116は、切替処理を実行する。アプリケーションサーバ104が複数のアプリケーションプログラムを実行する場合、全てのアプリケーションプログラムの同期状態の情報が一致していることが条件である。 When the synchronization status information of the application program 304 (application server 104) in which the failure has occurred indicates that synchronization is complete and the data synchronization servers 106 and 116 match, the data synchronization servers 106 and 116 execute a switching process. . When the application server 104 executes a plurality of application programs, it is a condition that the synchronization state information of all the application programs matches.
 例えば、データ同期サーバ106は、運用管理サーバ107の上記処理を実行する。つまり、データ同期サーバ106は、同期状態の情報が「同期中」、「同期NG」を含まず、さらに、一致するか判定する。当該条件を満たす場合、ステップ722及びステップ723を実行する。データ同期サーバ116は、データ同期サーバ106からの切替要求に応答して、ステップ724及び726を実行する。データ同期サーバ106、116の役割は逆でもよい。 For example, the data synchronization server 106 executes the above processing of the operation management server 107. That is, the data synchronization server 106 determines whether the synchronization state information does not include “synchronizing” or “synchronized NG” and further matches. If the condition is satisfied, Steps 722 and 723 are executed. The data synchronization server 116 executes Steps 724 and 726 in response to the switching request from the data synchronization server 106. The roles of the data synchronization servers 106 and 116 may be reversed.
 図8は、データ同期サーバ106におけるアプリケーション登録のシーケンスの一例を示す。運用者は、運用管理サーバ107に、登録したいアプリケーションサーバ104の情報、アプリケーションの種別、どのデータセンタのアプリケーションサーバ104をアクティブにするか、スタンバイにするか等の情報を入力する(ステップ801)。運用管理サーバ107は、入力された情報を元に登録要求をアクティブ側のデータ同期サーバ106へ送信する(ステップ802)。 FIG. 8 shows an example of an application registration sequence in the data synchronization server 106. The operator inputs information on the application server 104 to be registered, the type of application, and information such as which data center application server 104 is to be active or standby (step 801). The operation management server 107 transmits a registration request to the active data synchronization server 106 based on the input information (step 802).
 データ同期サーバ106は、アプリケーション同期管理テーブル231にエントリを追加し、運用管理サーバ107へ登録が成功したことを示す正常応答を送信する(ステップ803)。 The data synchronization server 106 adds an entry to the application synchronization management table 231 and transmits a normal response indicating that the registration is successful to the operation management server 107 (step 803).
 運用管理サーバ107は、さらに、スタンバイ側のデータ同期サーバ116へ、登録要求を送信する(ステップ804)。データ同期サーバ116は、ステップ903と同様に、アプリケーション同期管理テーブル231を更新し、運用管理サーバ107へ登録が成功したことを示す正常応答を返す送信する(ステップ805)。 The operation management server 107 further transmits a registration request to the data synchronization server 116 on the standby side (step 804). Similar to step 903, the data synchronization server 116 updates the application synchronization management table 231 and transmits a normal response indicating that the registration is successful to the operation management server 107 (step 805).
 データ同期サーバ106とデータ同期サーバ116は、登録されたアプリケーションの同期監視のための通信を開始する(ステップ806)。既に他のアプリケーションがデータ同期サーバ106に登録されていて、同期監視が行われている場合は、ステップ806において、同期監視のためのパケットに、既存のアプリケーションの情報に加え、新規に登録されたアプリケーションの情報が含まれる。 The data synchronization server 106 and the data synchronization server 116 start communication for monitoring the synchronization of registered applications (step 806). If another application has already been registered in the data synchronization server 106 and synchronization monitoring is being performed, in step 806, the packet for synchronization monitoring is newly registered in addition to the existing application information. Contains application information.
 ステップ801の後、運用者は、運用管理サーバ107を使用して、新規に登録するアプリケーションプログラム304のアプリケーション設定ファイル323を更新し、更新ログの出力先を同期用ファイルインタフェース305に設定する(ステップ810)。アプリケーションサーバ104のデータ同期サーバ接続用プログラム306は、ステップ810以前にインストールされ稼働している。 After step 801, the operator uses the operation management server 107 to update the application setting file 323 of the newly registered application program 304 and set the output destination of the update log in the synchronization file interface 305 (step 801). 810). The data synchronization server connection program 306 of the application server 104 is installed and operated before step 810.
 既に他のアプリケーションがデータ同期サーバ106で登録され、データ同期処理が行われている場合、運用者は、ステップ801及び810の簡単な作業だけで、新たなアプリケーションのデータ同期処理を実現することができる。アプリケーションプログラム304は、ディスク309を介さず、高速アクセス可能なデータ同期サーバ106のデータ記憶部208へ直接更新データを出力できるため、データ同期処理による処理性能低下を抑制できる。 When another application has already been registered in the data synchronization server 106 and data synchronization processing has been performed, the operator can realize data synchronization processing of a new application by simply performing steps 801 and 810. it can. The application program 304 can output update data directly to the data storage unit 208 of the data synchronization server 106 that can be accessed at high speed without going through the disk 309, so that it is possible to suppress degradation in processing performance due to data synchronization processing.
 ステップ810後、データ同期サーバ106は、アプリケーションサーバ104の新たに登録されたアプリケーションの同期監視を開始する(ステップ811)。また、データ同期サーバ116も、アプリケーションサーバ114の新たに登録されたアプリケーションの同期監視を開始する(ステップ812)。 After step 810, the data synchronization server 106 starts synchronization monitoring of the newly registered application of the application server 104 (step 811). Further, the data synchronization server 116 also starts synchronization monitoring of the newly registered application in the application server 114 (step 812).
 なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 In addition, this invention is not limited to the above-mentioned Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
 また、上記の各構成・機能・処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード等の記録媒体に置くことができる。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆どすべての構成が相互に接続されていると考えてもよい。 In addition, each of the above-described configurations, functions, processing units, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card or an SD card. In addition, the control lines and information lines are those that are considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. In practice, it may be considered that almost all the components are connected to each other.

Claims (11)

  1.  第1アプリケーションプログラムを実行する、第1アプリケーションサーバと、
     前記第1アプリケーションプログラムと同種の第2アプリケーションプログラムを実行し、前記第1アプリケーションプログラムのバックアップデータを保持する、第2アプリケーションサーバと、
     前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第1管理情報を保持する、第1データ同期サーバと、
     前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第2管理情報を保持する、第2データ同期サーバと、
     を含み、
     前記第1データ同期サーバは、
     第1ネットワークを介して、前記第1アプリケーションサーバから前記第1アプリケーションプログラムによる更新データを取得し、
     前記更新データを、第2ネットワークを介して前記第2データ同期サーバに転送し、
     前記第2データ同期サーバは、
     第3ネットワークを介して、前記更新データを前記第2アプリケーションサーバに転送し、
     前記更新データを前記第2アプリケーションサーバに転送した後に、前記第2管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新し、
     前記更新データを前記第2アプリケーションサーバに転送した後に、前記第2ネットワークを介して前記第1データ同期サーバに、前記更新データの前記第2アプリケーションサーバへのバックアップの完了を示す完了通知を送信し、
     前記第1データ同期サーバは、前記完了通知に応答して、前記第1管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新する、データバックアップシステム。
    A first application server for executing a first application program;
    A second application server that executes a second application program of the same type as the first application program and holds backup data of the first application program;
    A first data synchronization server that holds first management information for managing a synchronization state between the first application program and the second application program;
    A second data synchronization server that holds second management information for managing a synchronization state between the first application program and the second application program;
    Including
    The first data synchronization server includes:
    Via the first network, obtaining update data by the first application program from the first application server,
    Transferring the update data to the second data synchronization server via a second network;
    The second data synchronization server is
    Transferring the update data to the second application server via a third network;
    After transferring the update data to the second application server, update information on the synchronization state between the first application program and the second application program in the second management information,
    After transferring the update data to the second application server, a completion notification indicating completion of backup of the update data to the second application server is transmitted to the first data synchronization server via the second network. ,
    The data backup system, wherein the first data synchronization server updates information on a synchronization state between the first application program and the second application program in the first management information in response to the completion notification.
  2.  請求項1に記載のデータバックアップシステムであって、
     前記第1管理情報及び前記第2管理情報は、前記第1データ同期サーバと前記第2データ同期サーバとの間における同期状態を管理する、データバックアップシステム。
    The data backup system according to claim 1,
    The first management information and the second management information are data backup systems for managing a synchronization state between the first data synchronization server and the second data synchronization server.
  3.  請求項1に記載のデータバックアップシステムであって、
     前記第1アプリケーションサーバは、第1データ同期サーバ接続用プログラムを実行し、
     前記第1アプリケーションサーバは、
     前記第1アプリケーションプログラムが出力した更新データをファイルインタフェース介して前記データ同期サーバ接続用プログラムに渡し、
     前記データ同期サーバ接続用プログラムを実行することによって、前記更新データを前記第1データ同期サーバへ送信する、データバックアップシステム。
    The data backup system according to claim 1,
    The first application server executes a first data synchronization server connection program,
    The first application server is
    The update data output by the first application program is passed to the data synchronization server connection program via a file interface,
    A data backup system that transmits the update data to the first data synchronization server by executing the data synchronization server connection program.
  4.  請求項3に記載のデータバックアップシステムであって、
     前記第1アプリケーションサーバは、異常を検知すると、前記ファイルインタフェースを介して管理サーバに通知する、データバックアップシステム。
    The data backup system according to claim 3,
    When the first application server detects an abnormality, the data backup system notifies the management server via the file interface.
  5.  請求項1に記載のデータバックアップシステムであって、
     前記第1アプリケーションサーバは、障害により前記更新データの前記第1データ同期サーバへの送信を失敗した場合、前記更新データを退避ログとして保持し、
     前記障害からの回復後、前記第1データ同期サーバは、前記退避ログを前記アプリケーションサーバから受信する、データバックアップシステム。
    The data backup system according to claim 1,
    When the first application server fails to transmit the update data to the first data synchronization server due to a failure, the first application server holds the update data as a save log,
    The data backup system, wherein after the recovery from the failure, the first data synchronization server receives the save log from the application server.
  6.  請求項1に記載のデータバックアップシステムであって、
     前記第1データ同期サーバは、インメモリ分散記憶システムに含まれ、
     前記インメモリ分散記憶システムは、前記更新データを複数データ同期サーバのメモリ上で保持する、データバックアップシステム。
    The data backup system according to claim 1,
    The first data synchronization server is included in an in-memory distributed storage system;
    The in-memory distributed storage system is a data backup system that holds the update data on a memory of a plurality of data synchronization servers.
  7.  請求項1に記載のデータバックアップシステムであって、
     前記第1データ同期サーバは、
     障害の発生箇所に応じた処理の情報を格納する障害時処理テーブルを保持し、
     障害発生時に障害時処理テーブルが示す障害時処理を実行する、データバックアップシステム。
    The data backup system according to claim 1,
    The first data synchronization server includes:
    Holds a failure processing table that stores processing information according to the location of the failure,
    A data backup system that executes failure processing indicated by the failure processing table when a failure occurs.
  8.  請求項1に記載のデータバックアップシステムであって、
     前記第1アプリケーションプログラムにおいて障害が発生し、前記第1管理情報と前記第2管理情報が、前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとが同期していることを示す場合、前記第1データ同期サーバ及び前記第2データ同期サーバは、サービスを提供するアクティブアプリケーションサーバを、前記第1アプリケーションサーバから前記第2アプリケーションサーバに切り替える切替処理、を実行する、データバックアップシステム。
    The data backup system according to claim 1,
    When a failure occurs in the first application program, and the first management information and the second management information indicate that the first application program and the second application program are synchronized, the first data The data backup system, wherein the synchronization server and the second data synchronization server execute a switching process for switching an active application server that provides a service from the first application server to the second application server.
  9.  請求項8に記載のデータバックアップシステムであって、
     前記第1アプリケーションサーバは、第1ロードバランサを介して、サービスを提供するためのサービスネットワークに接続し、
     前記第2アプリケーションサーバは、第2ロードバランサを介して、前記サービスネットワークに接続し、
     前記第1データ同期サーバは、前記切替処理において、前記第1ロードバランサの前記第1アプリケーションサーバのポートを閉塞し、
     前記第2データ同期サーバは、前記切替処理において、前記第2ロードバランサの前記第2アプリケーションサーバのポートを閉塞解除する、データバックアップシステム。
    The data backup system according to claim 8, wherein
    The first application server is connected to a service network for providing a service via a first load balancer;
    The second application server is connected to the service network via a second load balancer;
    The first data synchronization server closes the port of the first application server of the first load balancer in the switching process,
    The data backup system, wherein the second data synchronization server releases the block of the port of the second application server of the second load balancer in the switching process.
  10.  データバックアップシステムを制御する方法であって、
     前記データバックアップシステムは、
     第1アプリケーションプログラムを実行する、第1アプリケーションサーバと、
     前記第1アプリケーションプログラムと同種の第2アプリケーションプログラムを実行し、前記第1アプリケーションプログラムのバックアップデータを保持する、第2アプリケーションサーバと、
     前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第1管理情報を保持する、第1データ同期サーバと、
     前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第2管理情報を保持する、第2データ同期サーバと、
     を含み、
     前記方法は、
     前記第1データ同期サーバが、第1ネットワークを介して、前記第1アプリケーションサーバから前記第1アプリケーションプログラムによる更新データを取得し、
     前記第1データ同期サーバが、前記更新データを、第2ネットワークを介して前記第2データ同期サーバに転送し、
     前記第2データ同期サーバが、第3ネットワークを介して、前記更新データを前記第2アプリケーションサーバに転送し、
     前記第2データ同期サーバが、前記更新データを前記第2アプリケーションサーバに転送した後に、前記第1管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新し、
     前記第2データ同期サーバが、前記更新データを前記第2アプリケーションサーバに転送した後に、前記第2ネットワークを介して前記第1データ同期サーバに、前記更新データの前記第2アプリケーションサーバへのバックアップの完了を示す完了通知を送信し、
     前記第1データ同期サーバが、前記完了通知に応答して、前記第1管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新する、ことを含む方法。
    A method for controlling a data backup system, comprising:
    The data backup system includes:
    A first application server for executing a first application program;
    A second application server that executes a second application program of the same type as the first application program and holds backup data of the first application program;
    A first data synchronization server that holds first management information for managing a synchronization state between the first application program and the second application program;
    A second data synchronization server that holds second management information for managing a synchronization state between the first application program and the second application program;
    Including
    The method
    The first data synchronization server acquires update data by the first application program from the first application server via a first network;
    The first data synchronization server transfers the update data to the second data synchronization server via a second network;
    The second data synchronization server transfers the update data to the second application server via a third network;
    After the second data synchronization server transfers the update data to the second application server, the synchronization information between the first application program and the second application program in the first management information is updated,
    After the second data synchronization server transfers the update data to the second application server, the update data is backed up to the second application server to the first data synchronization server via the second network. Send a completion notification to indicate completion,
    The method, wherein the first data synchronization server updates information on a synchronization state between the first application program and the second application program in the first management information in response to the completion notification.
  11.  データバックシステムにおいて使用されるデータ同期サーバであって、
     前記データバックアップシステムは、
     第1アプリケーションプログラムを実行する、第1アプリケーションサーバと、
     前記第1アプリケーションプログラムと同種の第2アプリケーションプログラムを実行し、前記第1アプリケーションプログラムのバックアップデータを保持する、第2アプリケーションサーバと、
     を含み、
     前記データ同期サーバは、
     プログラムを格納するメモリと、
     前記プログラムを実行するプロセッサと、を含み、
     前記メモリは、
     前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態を管理する第1管理情報を格納し、
     前記プロセッサは、
     第1ネットワークを介して、前記第1アプリケーションサーバから前記第1アプリケーションプログラムによる更新データを取得し、
     前記更新データを、第2ネットワークを介して第2データ同期サーバに転送し、
     前記更新データの前記第2アプリケーションサーバへのバックアップの完了を示す完了通知を前記第2データ同期サーバから受信すると、前記完了通知に応答して、前記第1管理情報における前記第1アプリケーションプログラムと前記第2アプリケーションプログラムとの同期状態の情報を更新する、データ同期サーバ。
    A data synchronization server used in a data back system,
    The data backup system includes:
    A first application server for executing a first application program;
    A second application server that executes a second application program of the same type as the first application program and holds backup data of the first application program;
    Including
    The data synchronization server is
    Memory for storing the program;
    A processor for executing the program,
    The memory is
    Storing first management information for managing a synchronization state between the first application program and the second application program;
    The processor is
    Via the first network, obtaining update data by the first application program from the first application server,
    Transferring the update data to the second data synchronization server via the second network;
    When a completion notification indicating completion of backup of the update data to the second application server is received from the second data synchronization server, in response to the completion notification, the first application program in the first management information and the A data synchronization server that updates information on a synchronization state with the second application program.
PCT/JP2015/070987 2015-07-23 2015-07-23 Data backup system WO2017013791A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2015/070987 WO2017013791A1 (en) 2015-07-23 2015-07-23 Data backup system
JP2017506949A JPWO2017013791A1 (en) 2015-07-23 2015-07-23 Data backup system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/070987 WO2017013791A1 (en) 2015-07-23 2015-07-23 Data backup system

Publications (1)

Publication Number Publication Date
WO2017013791A1 true WO2017013791A1 (en) 2017-01-26

Family

ID=57834231

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/070987 WO2017013791A1 (en) 2015-07-23 2015-07-23 Data backup system

Country Status (2)

Country Link
JP (1) JPWO2017013791A1 (en)
WO (1) WO2017013791A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165700A (en) * 1991-12-13 1993-07-02 Yokogawa Electric Corp File server
JP2001209561A (en) * 2000-01-27 2001-08-03 Mitsubishi Electric Corp System and method for abnormal termination
JP2004157795A (en) * 2002-11-07 2004-06-03 Hitachi Ltd Dual system computer and its shared data matching method
JP2004348359A (en) * 2003-05-21 2004-12-09 Nec Corp Fault information acquiring method, fault information acquiring system, and fault information acquiring program
JP2006285631A (en) * 2005-03-31 2006-10-19 Yokogawa Electric Corp Duplex system
JP2009217765A (en) * 2008-03-13 2009-09-24 Hitachi Ltd Synchronous transmitting method to multiple destination, its implementation system and processing program
WO2010109767A1 (en) * 2009-03-26 2010-09-30 株式会社日立製作所 Data synchronization system, data synchronization method, and synchronization control server
JP2012098780A (en) * 2010-10-29 2012-05-24 Canon Software Inc Print management system, print management apparatus, image forming apparatus, charging processing method and program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165700A (en) * 1991-12-13 1993-07-02 Yokogawa Electric Corp File server
JP2001209561A (en) * 2000-01-27 2001-08-03 Mitsubishi Electric Corp System and method for abnormal termination
JP2004157795A (en) * 2002-11-07 2004-06-03 Hitachi Ltd Dual system computer and its shared data matching method
JP2004348359A (en) * 2003-05-21 2004-12-09 Nec Corp Fault information acquiring method, fault information acquiring system, and fault information acquiring program
JP2006285631A (en) * 2005-03-31 2006-10-19 Yokogawa Electric Corp Duplex system
JP2009217765A (en) * 2008-03-13 2009-09-24 Hitachi Ltd Synchronous transmitting method to multiple destination, its implementation system and processing program
WO2010109767A1 (en) * 2009-03-26 2010-09-30 株式会社日立製作所 Data synchronization system, data synchronization method, and synchronization control server
JP2012098780A (en) * 2010-10-29 2012-05-24 Canon Software Inc Print management system, print management apparatus, image forming apparatus, charging processing method and program

Also Published As

Publication number Publication date
JPWO2017013791A1 (en) 2017-07-20

Similar Documents

Publication Publication Date Title
US10489254B2 (en) Storage cluster failure detection
US7676616B2 (en) Method, apparatus and program storage device for providing asynchronous status messaging in a data storage system
US9477738B2 (en) Initialization protocol for a peer-to-peer replication environment
US7694177B2 (en) Method and system for resynchronizing data between a primary and mirror data storage system
WO2016202051A1 (en) Method and device for managing active and backup nodes in communication system and high-availability cluster
CN111190747A (en) Message loss detection method and device for message queue
US8533525B2 (en) Data management apparatus, monitoring apparatus, replica apparatus, cluster system, control method and computer-readable medium
US11169835B1 (en) VM data migration between storage devices
WO2018121456A1 (en) Data storage method, server and storage system
US9569629B2 (en) Communication between key manager and storage subsystem kernel via management console
EP3200079A1 (en) Snapshot processing method and related device
US8676751B2 (en) High availability database systems and methods
KR20150111608A (en) Method for duplication of virtualization server and Virtualization control apparatus thereof
US9600487B1 (en) Self healing and restartable multi-steam data backup
WO2018157605A1 (en) Message transmission method and device in cluster file system
US20130205108A1 (en) Managing reservation-control in a storage system
EP3352415A1 (en) Smb service failure handling method, and storage device
JP2005301436A (en) Cluster system and failure recovery method for it
TWM432075U (en) Monitoring device and monitoring system applicable to cloud algorithm
US10896103B2 (en) Information processing system
WO2017013791A1 (en) Data backup system
KR101766446B1 (en) Duplex system and methods for synchronizing data and restoring data
US9535806B1 (en) User-defined storage system failure detection and failover management
JP2015114952A (en) Network system, monitoring control unit, and software verification method
CN109445984B (en) Service recovery method, device, arbitration server and storage system

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2017506949

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 15898950

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15898950

Country of ref document: EP

Kind code of ref document: A1