CN106603635A - 一种平台数据异地备份方法 - Google Patents
一种平台数据异地备份方法 Download PDFInfo
- Publication number
- CN106603635A CN106603635A CN201611076159.7A CN201611076159A CN106603635A CN 106603635 A CN106603635 A CN 106603635A CN 201611076159 A CN201611076159 A CN 201611076159A CN 106603635 A CN106603635 A CN 106603635A
- Authority
- CN
- China
- Prior art keywords
- data
- backup
- site
- file
- platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000005540 biological transmission Effects 0.000 claims description 61
- 238000012217 deletion Methods 0.000 claims description 7
- 230000037430 deletion Effects 0.000 claims description 7
- 238000003780 insertion Methods 0.000 claims description 7
- 230000037431 insertion Effects 0.000 claims description 7
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 4
- 230000008859 change Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000010076 replication Effects 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003818 cinder Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种平台数据异地备份方法,能够实现平台中数据的异地备份。所述方法包括:主站点中利用数据库触发器获取数据操作类型及操作的数据;将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务;所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点,以便异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息,其中,所述数据备份信息为异地备份站点本地数据与主站点平台中数据的对应信息。本发明适用于云计算平台数据备份技术领域。
Description
技术领域
本发明涉及数据备份技术领域,特别是指一种平台数据异地备份方法。
背景技术
近年来,OpenStack作为最流行的开源云计算平台,被广泛的应用于私有云和公有云的建设。然而OpenStack至今没有提供一个数据异地备份的解决方案。我们在得益于它带来的服务的同时,也承担着数据(尤其是关键数据)和服务丢失的风险。一旦发生如火灾、地震之类的灾害,将可能遭受巨大的损失。
目前企业、组织或个人使用OpenStack的方式大致可以分为两种:一是利用OpenStack提供的虚拟机(作为服务器)、数据库等来运行相应的软件和服务;另一种则是利用OpenStack提供的云存储能力来存储和备份关键的文件或数据。对于前者,从用户层面来说,需要保护的是整个服务器、数据库系统等;从OpenStack层面来说,要想保证数据备份,除了保护服务器和数据库,还需要备份与之相关的网络拓扑结构、安全组信息、关联的存储块存储设备信息等。对于后者,从用户层面来说,需要保护存储的文件和数据;从OpenStack层面看,除了文件和数据,还需要保护好与之关联的用户及用户描述等信息。
在现有技术中,提供数据异地备份服务的云平台极少。基于Dynamo存储系统的Amazon S3存储服务提供跨区域复制(Cross-Region Replication,简称CRR)功能,可以自动的在多个AWS区域之间复制数据。Windows Azure Storage也在自己的存储层次上加入了异步复制机制,将数据复制到所有服务器以保证其数据的安全。OpenStack官方提供了一套高可用方案,几乎覆盖了整个平台所有的服务,但是这只是本地备份,无法保证在出现区域性故障导致整个高可用集群都崩溃时,系统的可靠性。至于数据的异地备份,OpenStack则没有相关的方案。
发明内容
本发明要解决的技术问题是提供一种平台数据异地备份方法,以解决现有技术所存在的没有实现OpenStack平台中数据异地备份的问题。
为解决上述技术问题,本发明实施例提供一种平台数据异地备份方法,包括:
主站点中利用数据库触发器获取数据操作类型及操作的数据;
将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务;
所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点,以便异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息;
其中,所述数据备份信息为异地备份站点本地数据与主站点平台中数据的对应信息。
进一步地,所述将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务包括:
按照预先定义的触发消息数据格式,将获取到的所述数据操作类型及操作的数据转换为字符串消息,发送到消息队列;
触发事件监听服务从所述消息队列中监听从所述数据库触发器发送过来的触发事件通知,获取与异地备份相关的消息。
进一步地,所述预先定义的触发消息数据格式包括:消息发布者标识、数据操作类型和数据内容;其中,
所述消息发布者标识为平台中服务的名称,用于判断待备份的数据所在的数据表;所述消息发布者标识包括:glance、swift、nova、cinder中的一种;
所述数据操作类型包括:插入、更新、删除中的一种;
所述数据内容包括:数据唯一标识及其它用于指明数据的字段信息。
进一步地,所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点包括:
按照预先定义的触发消息数据格式对获取的所述与异地备份相关的消息进行解析;
根据解析结果得到数据操作类型及数据唯一标识;
与数据库建立连接,根据所述数据唯一标识获取整条数据记录;
根据整条数据记录中的数据内容判断所述数据实际存储类型,获取数据存储位置;
若所述数据存储为系统文件,则根据系统文件路径直接读取所述数据,按照预先定义的传输消息数据格式封装数据传输消息,发送所述数据传输消息到异地备份站点后,与异地备份站点建立数据传输通道发送所述数据。
进一步地,所述方法还包括:
若所述数据存储在平台文件存储系统中,则从所述平台文件存储系统中读取所述数据到主站点本地文件系统,按照预先定义的传输消息数据格式封装数据传输消息,发送所述数据传输消息到异地备份站点后,与异地备份站点建立数据传输通道发送所述数据。
进一步地,所述预先定义的传输消息数据格式包括:文件名、文件大小、文件类型和文件在数据库中的信息;其中,
所述文件名为主站点中待传输的数据文件的文件名;
所述文件大小为主站点中待传输的数据文件大小;
所述文件类型为数据文件所在的平台中服务的名称,用于判断将数据文件记录在哪个数据库,所述文件类型包括:glance、swift、nova、cinder中的一种;
所述文件在数据库中的信息包括:数据唯一标识、数据文件所属用户标识信息。
进一步地,所述发送所述数据传输消息到异地备份站点包括:
所述主站点异步备份服务与所述异地备份站点备份服务建立连接,建立连接后,向所述异地备份站点发送所述数据传输消息。
进一步地,所述异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息包括:
接收主站点发送的所述数据传输消息;
按照预先定义的传输消息数据格式对接收到的所述数据传输消息进行解析;
根据解析结果得到数据唯一标识、文件名和文件大小;
打开与主站点的数据传输通道,按照所述文件大小接收数据并按照文件名存储所述数据到异地备份站点本地;
文件存储完成之后,将所述数据唯一标识和在异地备份站点本地的存储位置信息记录到异地备份站点的数据库中。
进一步地,所述异步备份服务包括:镜像文件备份、对象文件备份、虚拟机备份、卷备份中的一种。
进一步地,所述数据库触发器与数据所在的数据表一一对应。
本发明的上述技术方案的有益效果如下:
上述方案中,通过数据库触发器获取数据操作类型及操作的数据;将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务;所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点,以便异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息,其中,所述数据备份信息为异地备份站点本地数据与主站点平台中数据的对应信息。这样,通过实时地检测的数据变化,完成数据的异地备份,从而能够在主站点数据丢失后将异地备份站点本地的数据恢复到新的平台中。
附图说明
图1为本发明实施例提供的平台数据异地备份方法的流程示意图;
图2为本发明实施例提供的平台数据异地备份方法的原理示意图;
图3为本发明实施例提供的触发消息数据格式示意图;
图4为本发明实施例提供的异步备份服务的流程示意图;
图5为本发明实施例提供的传输消息数据格式示意图;
图6为本发明实施例提供的平台数据异地备份方法的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的没有实现OpenStack平台中数据异地备份的问题,提供一种平台数据异地备份方法。
参看图1所示,本发明实施例提供的平台数据异地备份方法,包括:
主站点中利用数据库触发器获取数据操作类型及操作的数据;
将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务;
所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点,以便异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息;
其中,所述数据备份信息为异地备份站点本地数据与主站点平台中数据的对应信息。
本发明实施例所述的平台数据异地备份方法,通过数据库触发器获取数据操作类型及操作的数据;将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务;所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点,以便异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息,其中,所述数据备份信息为异地备份站点本地数据与主站点平台中数据的对应信息。这样,通过实时地检测的数据变化,完成数据的异地备份,从而能够在主站点数据丢失后将异地备份站点本地的数据恢复到新的平台中。
本实施例中,如图2所示,所述异地备份站点中的备份服务也可以称为异步备份服务;所述平台可以为OpenStack平台,也可以为其他平台。
本实施例中,所述数据库触发器能够实时获取数据的操作类型(例如,插入、删除、更新操作)及操作的数据(或称为:发生变化的数据);通过所述数据库触发器实时检测数据库中的数据变化,从而检测到文件系统中的数据变化,数据的变化事件由数据库系统来触发,相较于按时间间隔检测文件变化,实现了数据变化检测的实时性,减轻了操作系统的负担。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务包括:
按照预先定义的触发消息数据格式,将获取到的所述数据操作类型及操作的数据转换为字符串消息,发送到消息队列;
触发事件监听服务从所述消息队列中监听从所述数据库触发器发送过来的触发事件通知,获取与异地备份相关的消息。
本实施例中,所述数据库触发器包括:触发消息封装模块、发送模块;其中,所述发送模块如图3中mysendmsg。通过触发消息封装模块对获取到的所述数据操作类型及操作的数据进行封装,具体的:按照预先定义的触发消息数据格式,将获取到的所述数据操作类型及操作的数据转换为字符串消息;再通过所述发送模块将封装后的字符串消息发送到消息队列。
本实施例中,所述数据包括:至少1个数据项;所述数据库触发器除了能够检测数据项的插入、更新和删除操作,还能够获取数据项的各个字段的信息,从而能够将数据项,按照预先定义的触发消息数据格式进行封装并告知所述异步备份服务通信数据变化的内容。
本实施例中,所述主站点异步备份服务持续监听所述消息队列中的消息,过滤出与异地备份相关的消息,具体的:所述主站点异步备份服务中的触发事件监听服务从所述消息队列中监听从所述数据库触发器发送过来的触发事件通知(notify),获取与异地备份相关的消息,这样,将触发事件监听服务与数据备份处理分离开,异步的进行处理,可以防止因传输数据时间过长而造成触发事件监听服务阻塞,且数据备份处理程序可以并发的执行,避免了自身的阻塞,同时可以充分利用系统资源,如图4所示。
本实施例中,在检测到数据库中的数据变化之后,利用消息队列与所述异步备份服务通信,按照预先定义的触发消息数据格式告知所述异步备份服务通信数据变化的内容,降低了进程间通信的难度,屏蔽了不同服务进程之间的数据差异。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述预先定义的触发消息数据格式包括:消息发布者标识、数据操作类型和数据内容;其中,
所述消息发布者标识为平台中服务的名称,用于判断待备份的数据所在的数据表;所述消息发布者标识包括:glance、swift、nova、cinder中的一种;
所述数据操作类型包括:插入、更新、删除中的一种;
所述数据内容包括:数据唯一标识及其它用于指明数据的字段信息。
本实施例中,所述预先定义的触发消息数据格式可以为JSON格式字符串。
本实施例中,如图3所示,数据库触发器触发后,获取数据唯一标识及其它用于指明数据的字段信息、与消息发布者标识和数据操作类型(插入、更新或删除),并将他们按照预先定义的触发消息数据格式一起封装为轻量级的数据交换格式(JavaScript ObjectNotation,JSON)字符串,之后发送到消息队列,这屏蔽了不同服务进程之间的数据差异,降低了进程间通信的难度,相较于持续读取数据检测数据变化的方式,减轻了操作系统和数据库系统的负担,相较于按一定时间间隔检测数据变化的方式,体现了数据变化检测的实时性。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点包括:
按照预先定义的触发消息数据格式对获取的所述与异地备份相关的消息进行解析;
根据解析结果得到数据操作类型及数据唯一标识;
与数据库建立连接,根据所述数据唯一标识获取整条数据记录;
根据整条数据记录中的数据内容判断所述数据实际存储类型,获取数据存储位置;
若所述数据存储为系统文件,则根据系统文件路径直接读取所述数据,按照预先定义的传输消息数据格式封装数据传输消息,发送所述数据传输消息到异地备份站点后,与异地备份站点建立数据传输通道发送所述数据。
本实施例中,如图4所示,主站点异步备份服务对从消息队列中接收到的与异地备份相关的消息进行解析,再根据解析结果从数据库中读取实际文件数据,发送数据传输消息并传输数据到异地备份站点;具体的:
A11,按照预先定义的触发消息数据格式对获取的所述与异地备份相关的消息进行解析,如图5所示;
A12,根据解析结果得到消息发布者标识、数据操作类型及数据唯一标识,根据消息发布者标识,将数据操作类型及数据唯一标识通过远程过程调用协议(RemoteProcedure Call Protocol,RPC)的方式发送给相应的数据备份处理程序;
A13,数据备份处理程序与数据库建立连接,根据所述数据唯一标识获取整条数据记录,根据整条数据记录中的数据内容判断数据实际存储类型,从而获取数据存储位置;
A14,若所述数据存储为系统文件,则根据系统文件路径直接读取所述数据,按照预先定义的传输消息数据格式封装数据传输消息,先发送所述数据传输消息到异地备份站点,之后再与异地备份站点建立数据传输通道发送所述数据;
A15,若所述数据存储在平台文件存储系统中,则从所述平台文件存储系统中读取所述数据到主站点本地文件系统,按照预先定义的传输消息数据格式封装数据传输消息,先发送所述数据传输消息到异地备份站点后,之后再与异地备份站点建立数据传输通道发送所述数据。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述预先定义的传输消息数据格式包括:文件名、文件大小、文件类型和文件在数据库中的信息;其中,
所述文件名为主站点中待传输的数据文件的文件名;
所述文件大小为主站点中待传输的数据文件大小;
所述文件类型为数据文件所在的平台中服务的名称,用于判断将数据文件记录在哪个数据库,所述文件类型包括:glance、swift、nova、cinder中的一种;
所述文件在数据库中的信息包括:数据唯一标识、数据文件所属用户标识信息。
本实施例中,所述预先定义的传输消息数据格式可以为JSON格式字符串。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述发送所述数据传输消息到异地备份站点包括:
所述主站点异步备份服务与所述异地备份站点备份服务建立连接,建立连接后,向所述异地备份站点发送所述数据传输消息。
本实施例中,为了向所述异地备份站点发送所述数据传输消息,需在所述主站点异步备份服务与所述异地备份站点备份服务之间建立连接,连接建立完成后,主站点可以向所述异地备份站点发送所述数据传输消息,所述异地备份站点备份服务接收到主站点发送的所述数据传输消息进行解析,解析后开始接收数据。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息包括:
接收主站点发送的所述数据传输消息;
按照预先定义的传输消息数据格式对接收到的所述数据传输消息进行解析;
根据解析结果得到数据唯一标识、文件名和文件大小;
打开与主站点的数据传输通道,按照所述文件大小接收数据并按照文件名存储所述数据到异地备份站点本地;
文件存储完成之后,将所述数据唯一标识和在异地备份站点本地的存储位置信息记录到异地备份站点的数据库中。
本实施例中,所述异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息具体可以包括:
A21,所述异地备份站点备份服务在与主站点建立数据连接之后,接收主站点数据备份处理程序发送的数据传输消息;
A22,所述异地备份站点备份服务按照预先定义的传输消息数据格式解析所述数据传输消息;
A23,根据解析结果得到数据唯一标识、文件名和文件大小信息;
A24,打开已经建立的与主站点的数据传输通道,按照文件大小接收数据,并按照文件名将数据存储到异地备份站点本地文件系统,预先接收文件大小信息可用于判断需要接收的数据量,从而确定何时关闭数据传输通道;
A25,文件存储完成之后,将所述数据唯一标识及在异地备份站点本地的存储位置信息记录到备份站点的数据库中。
本实施例中,例如,将OpenStack平台中数据存储到异地备份站点本地文件系统,同时将所述数据唯一标识及在异地备份站点本地的存储位置信息记录到备份站点的数据库中,这样,既保证异地备份站点本地数据文件与数据记录信息相对应,又能够防止数据记录错误,同时还在数据库中记录异地备份站点本地数据文件与主站点OpenStack平台中数据文件的对应信息,从而能够在主站点数据丢失后将异地备份站点的数据恢复到新的OpenStack平台中;且能够在对原OpenStack平台及操作系统性能产生极低影响的条件下,实时的检测的数据变化,从而完成数据的异地备份。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述异步备份服务包括:镜像文件备份、对象文件备份、虚拟机备份、卷备份中的一种。
本实施例中,平台以OpenStack平台为例,所述镜像文件备份从主站点本地文件系统或平台文件存储系统中读取虚拟机镜像文件,并将其传输到异地备份站点完成备份;
所述对象文件备份从OpenStack对象文件存储系统Swift中读取对象文件,并将其传输到异地备份站点完成备份;
所述虚拟机备份从主站点本地文件系统中读取虚拟机及其关联配置文件,并将其传输到异地备份站点完成备份;
所述卷备份从OpenStack块存储系统Cinder中读取挂载到虚拟机地逻辑卷文件,并将其传输到异地备份站点完成备份。
在前述平台数据异地备份方法的具体实施方式中,进一步地,所述数据库触发器与数据所在的数据表一一对应。
本实施例中,所述数据库触发器与数据所在的数据表一一对应,可根据需求创建对应的数据表的触发器以备份相应的数据。
本实施例中,如图6所示,主站点中在Controller节点的信息数据库(图6中为MariaDB)中为Glance、Nova、Cinder服务的数据表创建插入、更新和删除触发器,在Swift节点存储文件信息的SQLite数据库中为Account和Container数据表创建插入、更新和删除触发器。
数据库触发器获取数据的插入、删除、更新操作及所操作的数据,再利用消息队列技术将获取到的数据变化消息发送到消息队列(图6中为RabbitMQ),从而传递给主站点异步备份服务;
主站点异步备份服务解析从消息队列中收到的消息,按照文件类型调用对应的备份服务,从而并将发生的变化信息及数据发送到异地备份站点;
异地备份站点备份服务接收到主站点发送的信息及数据之后,将数据存入异地备份站点本地,并在异地备份站点本地数据库的备份文件表中记录;
本实施例中,主站点中Controller节点的信息数据库(图6中为MariaDB)利用其自身的异步复制技术,在异地备份站点维持一个完整备份,这样,保证了原平台数据信息的完整性,便于在原平台数据丢失后利用备份数据进行恢复。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种平台数据异地备份方法,其特征在于,包括:
主站点中利用数据库触发器获取数据操作类型及操作的数据;
将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务;
所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点,以便异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息;
其中,所述数据备份信息为异地备份站点本地数据与主站点平台中数据的对应信息。
2.根据权利要求1所述的平台数据异地备份方法,其特征在于,所述将获取到的所述数据操作类型及操作的数据传递给主站点异步备份服务包括:
按照预先定义的触发消息数据格式,将获取到的所述数据操作类型及操作的数据转换为字符串消息,发送到消息队列;
触发事件监听服务从所述消息队列中监听从所述数据库触发器发送过来的触发事件通知,获取与异地备份相关的消息。
3.根据权利要求2所述的平台数据异地备份方法,其特征在于,所述预先定义的触发消息数据格式包括:消息发布者标识、数据操作类型和数据内容;其中,
所述消息发布者标识为平台中服务的名称,用于判断待备份的数据所在的数据表;所述消息发布者标识包括:glance、swift、nova、cinder中的一种;
所述数据操作类型包括:插入、更新、删除中的一种;
所述数据内容包括:数据唯一标识及其它用于指明数据的字段信息。
4.根据权利要求2所述的平台数据异地备份方法,其特征在于,所述主站点异步备份服务根据接收到的所述数据操作类型及操作的数据,将数据库中发生变化的数据发送到异地备份站点包括:
按照预先定义的触发消息数据格式对获取的所述与异地备份相关的消息进行解析;
根据解析结果得到数据操作类型及数据唯一标识;
与数据库建立连接,根据所述数据唯一标识获取整条数据记录;
根据整条数据记录中的数据内容判断所述数据实际存储类型,获取数据存储位置;
若所述数据存储为系统文件,则根据系统文件路径直接读取所述数据,按照预先定义的传输消息数据格式封装数据传输消息,发送所述数据传输消息到异地备份站点后,与异地备份站点建立数据传输通道发送所述数据。
5.根据权利要求4所述的平台数据异地备份方法,其特征在于,所述方法还包括:
若所述数据存储在平台文件存储系统中,则从所述平台文件存储系统中读取所述数据到主站点本地文件系统,按照预先定义的传输消息数据格式封装数据传输消息,发送所述数据传输消息到异地备份站点后,与异地备份站点建立数据传输通道发送所述数据。
6.根据权利要求4或5所述的平台数据异地备份方法,其特征在于,所述预先定义的传输消息数据格式包括:文件名、文件大小、文件类型和文件在数据库中的信息;其中,
所述文件名为主站点中待传输的数据文件的文件名;
所述文件大小为主站点中待传输的数据文件大小;
所述文件类型为数据文件所在的平台中服务的名称,用于判断将数据文件记录在哪个数据库,所述文件类型包括:glance、swift、nova、cinder中的一种;
所述文件在数据库中的信息包括:数据唯一标识、数据文件所属用户标识信息。
7.根据权利要求4或5所述的平台数据异地备份方法,其特征在于,所述发送所述数据传输消息到异地备份站点包括:
所述主站点异步备份服务与所述异地备份站点备份服务建立连接,建立连接后,向所述异地备份站点发送所述数据传输消息。
8.根据权利要求1所述的平台数据异地备份方法,其特征在于,所述异地备份站点备份服务将接收到的发生变化的数据存入异地备份站点本地,并在异地备份站点的数据库中记录数据备份信息包括:
接收主站点发送的所述数据传输消息;
按照预先定义的传输消息数据格式对接收到的所述数据传输消息进行解析;
根据解析结果得到数据唯一标识、文件名和文件大小;
打开与主站点的数据传输通道,按照所述文件大小接收数据并按照文件名存储所述数据到异地备份站点本地;
文件存储完成之后,将所述数据唯一标识和在异地备份站点本地的存储位置信息记录到异地备份站点的数据库中。
9.根据权利要求1所述的平台数据异地备份方法,其特征在于,所述异步备份服务包括:镜像文件备份、对象文件备份、虚拟机备份、卷备份中的一种。
10.根据权利要求1所述的平台数据异地备份方法,其特征在于,所述数据库触发器与数据所在的数据表一一对应。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611076159.7A CN106603635B (zh) | 2016-11-29 | 2016-11-29 | 一种平台数据异地备份方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611076159.7A CN106603635B (zh) | 2016-11-29 | 2016-11-29 | 一种平台数据异地备份方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106603635A true CN106603635A (zh) | 2017-04-26 |
CN106603635B CN106603635B (zh) | 2019-05-24 |
Family
ID=58595596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611076159.7A Active CN106603635B (zh) | 2016-11-29 | 2016-11-29 | 一种平台数据异地备份方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106603635B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083066A (zh) * | 2018-10-19 | 2020-04-28 | 北京奇虎科技有限公司 | 物联网系统、设备消息流转方法及装置 |
CN111770120A (zh) * | 2019-04-01 | 2020-10-13 | 江苏华章物流科技股份有限公司 | Vs编辑器的实时异地备份方法及存储介质 |
CN112328435A (zh) * | 2020-12-07 | 2021-02-05 | 武汉绿色网络信息服务有限责任公司 | 目标数据备份和恢复的方法、装置、设备及存储介质 |
CN113742138A (zh) * | 2021-09-06 | 2021-12-03 | 深圳市云鼠科技开发有限公司 | 一种数据管理方法、装置、电子设备及存储介质 |
CN113806664A (zh) * | 2021-09-24 | 2021-12-17 | 广州至真信息科技有限公司 | 一种站点快速复制方法、装置及相关设备 |
US12079160B2 (en) * | 2019-07-19 | 2024-09-03 | JFrog Ltd. | Data archive release in context of data object |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102142998A (zh) * | 2011-03-22 | 2011-08-03 | 辽宁国兴科技有限公司 | 一种基于异地在线数据容灾的备份交互方法及执行该方法的系统 |
US20120324280A1 (en) * | 2011-06-14 | 2012-12-20 | Computer Associates Think, Inc. | System and method for data disaster recovery |
CN103095769A (zh) * | 2011-11-04 | 2013-05-08 | 阿里巴巴集团控股有限公司 | 跨机房的数据同步方法以及系统 |
CN103843284A (zh) * | 2013-10-23 | 2014-06-04 | 华为技术有限公司 | 一种云应用的容灾方法、系统和装置 |
CN104137482A (zh) * | 2014-04-14 | 2014-11-05 | 华为技术有限公司 | 一种云计算架构下的容灾数据中心配置方法及装置 |
US20150019494A1 (en) * | 2013-07-11 | 2015-01-15 | International Business Machines Corporation | Speculative recovery using storage snapshot in a clustered database |
CN105404564A (zh) * | 2015-12-16 | 2016-03-16 | 浪潮(北京)电子信息产业有限公司 | 一种数据远程容灾方法及装置 |
CN105487940A (zh) * | 2015-11-18 | 2016-04-13 | 华为技术有限公司 | 灾备端、生产端及两者之间的数据恢复方法 |
-
2016
- 2016-11-29 CN CN201611076159.7A patent/CN106603635B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102142998A (zh) * | 2011-03-22 | 2011-08-03 | 辽宁国兴科技有限公司 | 一种基于异地在线数据容灾的备份交互方法及执行该方法的系统 |
US20120324280A1 (en) * | 2011-06-14 | 2012-12-20 | Computer Associates Think, Inc. | System and method for data disaster recovery |
CN103095769A (zh) * | 2011-11-04 | 2013-05-08 | 阿里巴巴集团控股有限公司 | 跨机房的数据同步方法以及系统 |
US20150019494A1 (en) * | 2013-07-11 | 2015-01-15 | International Business Machines Corporation | Speculative recovery using storage snapshot in a clustered database |
CN103843284A (zh) * | 2013-10-23 | 2014-06-04 | 华为技术有限公司 | 一种云应用的容灾方法、系统和装置 |
CN104137482A (zh) * | 2014-04-14 | 2014-11-05 | 华为技术有限公司 | 一种云计算架构下的容灾数据中心配置方法及装置 |
CN105487940A (zh) * | 2015-11-18 | 2016-04-13 | 华为技术有限公司 | 灾备端、生产端及两者之间的数据恢复方法 |
CN105404564A (zh) * | 2015-12-16 | 2016-03-16 | 浪潮(北京)电子信息产业有限公司 | 一种数据远程容灾方法及装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083066A (zh) * | 2018-10-19 | 2020-04-28 | 北京奇虎科技有限公司 | 物联网系统、设备消息流转方法及装置 |
CN111770120A (zh) * | 2019-04-01 | 2020-10-13 | 江苏华章物流科技股份有限公司 | Vs编辑器的实时异地备份方法及存储介质 |
US12079160B2 (en) * | 2019-07-19 | 2024-09-03 | JFrog Ltd. | Data archive release in context of data object |
CN112328435A (zh) * | 2020-12-07 | 2021-02-05 | 武汉绿色网络信息服务有限责任公司 | 目标数据备份和恢复的方法、装置、设备及存储介质 |
CN112328435B (zh) * | 2020-12-07 | 2023-09-12 | 武汉绿色网络信息服务有限责任公司 | 目标数据备份和恢复的方法、装置、设备及存储介质 |
CN113742138A (zh) * | 2021-09-06 | 2021-12-03 | 深圳市云鼠科技开发有限公司 | 一种数据管理方法、装置、电子设备及存储介质 |
CN113806664A (zh) * | 2021-09-24 | 2021-12-17 | 广州至真信息科技有限公司 | 一种站点快速复制方法、装置及相关设备 |
CN113806664B (zh) * | 2021-09-24 | 2024-06-07 | 广州至真信息科技有限公司 | 一种站点快速复制方法、装置及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106603635B (zh) | 2019-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106603635B (zh) | 一种平台数据异地备份方法 | |
EP3386150B1 (en) | Terminal failure processing method, device and system | |
WO2021121370A1 (zh) | 用于消息队列的消息丢失检测方法和装置 | |
US10812314B2 (en) | Methods and apparatuses for pushing a message | |
CN107241229B (zh) | 一种基于接口测试工具的业务监控方法及装置 | |
CN111385148A (zh) | 业务告警方法、装置、计算机设备及存储介质 | |
CN112506702B (zh) | 数据中心容灾方法、装置、设备及存储介质 | |
CN105591821A (zh) | 监控系统和业务系统 | |
CN103019866A (zh) | 基于消息队列的分布式方法和系统 | |
CN103067230A (zh) | 一种通过植入监控代码实现对http服务监控的方法 | |
CN110166562B (zh) | 数据同步的方法、装置、存储介质和电子设备 | |
US20170286263A1 (en) | System and method for tracking callback functions for error identification | |
CN111800354A (zh) | 消息处理方法及装置、消息处理设备及存储介质 | |
CN110427297B (zh) | 诊断信息获取方法、系统及网关和计算机可读介质 | |
CN105227351A (zh) | 日志获取系统、日志获取方法及电子设备 | |
CN116996408A (zh) | 一种数据传输监控方法、装置、电子设备和存储介质 | |
CN108880994B (zh) | 一种重发邮件的方法和装置 | |
CN110928955B (zh) | 一种数据交互方法、装置、计算机设备及存储介质 | |
US11461160B2 (en) | Method and apparatus for reaction-free and integrity-protected synchronization of log data | |
CN112817998A (zh) | 水电站数据自动比对及同步的方法及系统 | |
CN111400064A (zh) | 一种跨安全区召唤定值及录波文件的方法 | |
CN110365627B (zh) | 应用程序同步方法、装置、计算设备以及存储介质 | |
CN113127261A (zh) | 文件处理方法、装置、设备及存储介质 | |
CN114244895B (zh) | 手持移动终端的控制方法、装置、电子设备和存储介质 | |
US20230084487A1 (en) | Non-intrusive disaster recovery and resilience |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |