CN104462483A - 数据同步方法、装置及*** - Google Patents
数据同步方法、装置及*** Download PDFInfo
- Publication number
- CN104462483A CN104462483A CN201410797462.0A CN201410797462A CN104462483A CN 104462483 A CN104462483 A CN 104462483A CN 201410797462 A CN201410797462 A CN 201410797462A CN 104462483 A CN104462483 A CN 104462483A
- Authority
- CN
- China
- Prior art keywords
- data
- base cluster
- base
- cluster
- write
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据同步方法、装置及***,该数据同步方法,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,包括:监控第一数据库集群的数据写入操作;当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及将所述数据写入所述第二数据库集群。本发明提供的技术方案实现了第一数据库集群与第二数据库集群的数据同步,解决了独立集群自身无法实现集群间的数据同步的问题。并且由第二数据库集群对外提供数据访问服务,有效地分担第一数据库集群被访问数据的压力。
Description
技术领域
本发明涉及计算机技术领域,特别是一种数据同步方法、装置及***。
背景技术
Mongodb,分布式文档存储数据库,由C++语言编写,旨在为万维网(WEB)应用提供可扩展的高性能数据存储解决方案。Mongodb是一个高性能,开源,无模式的文档型数据库,是当前非关系型数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。
Mongodb本身仅允许在一个集群中容纳7个节点,各节点接收外界数据的请求,如增、删、改、查请求,进而根据请求内容计算数据及其副本在集群中所分布的节点,负责请求的分发与应答的汇总。随着业务量的逐渐增大,出现了7个节点无法承担现有请求量的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据同步方法、装置及***。
依据本发明的一个方面,提供了一种数据同步方法,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,所述方法包括:监控所述第一数据库集群的数据写入操作;当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及将所述数据写入所述第二数据库集群。
可选地,所述第一数据库集群包括主数据库与至少一从数据库,以及所述监控所述第一数据库集群的数据写入操作的步骤进一步包括:实时监控所述第一数据库集群中的主数据库的数据写入操作。
可选地,所述实时监控所述第一数据库集群中的主数据库的数据写入操作的步骤进一步包括:实时监控所述主数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
可选地,所述第一数据库集群包括主数据库与至少一从数据库,以及所述监控所述第一数据库集群的数据写入操作的步骤进一步包括:实时监控所述第一数据库集群中的至少一从数据库的数据写入操作。
可选地,所述实时监控所述第一数据库集群中的至少一从数据库的数据写入操作的步骤进一步包括:实时监控所述至少一从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
可选地,所述第二数据库集群包括主数据库与至少一从数据库,以及所述将所述数据写入第二数据库集群的步骤进一步包括:将所述数据写入所述第二数据库集群的所述主数据库。
可选地,将所述数据写入所述第二数据库集群的所述主数据库之后,还包括:将所述数据从所述第二数据库集群的所述主数据库同步至所述第二数据库集群的所述至少一从数据库。
可选地,所述第一数据库集群与所述第二数据库集群为Mongodb集群。
可选地,所述读取写入的所述数据,包括:通过Mongodb接口读取写入的所述数据。
依据本发明的另一个方面,还提供了一种数据同步装置,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,所述数据同步装置包括:
监控器,适于监控所述第一数据库集群的数据写入操作;
读取器,适于当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及
写入器,适于将所述数据写入所述第二数据库集群。
可选地,所述第一数据库集群包括主数据库与至少一从数据库,所述监控器还适于:实时监控所述第一数据库集群中的主数据库的数据写入操作。
可选地,所述监控器还适于:实时监控所述主数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述主第一数据库集群。
可选地,所述第一数据库集群包括主数据库与至少一从数据库,所述监控器还适于:实时监控所述第一数据库集群中的至少一从数据库的数据写入操作。
可选地,所述监控器还适于:实时监控所述至少一从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
可选地,所述第二数据库集群包括主数据库与至少一从数据库,所述写入器还适于:将所述数据写入所述第二数据库集群的所述主数据库。
可选地,所述装置还包括:
同步器,适于所述写入器将所述数据写入所述第二数据库集群的所述主数据库之后,将所述数据从所述第二数据库集群的所述主数据库同步至所述第二数据库集群的所述至少一从数据库。
可选地,所述第一数据库集群与所述第二数据库集群为Mongodb集群。
可选地,所述读取器还适于:通过Mongodb接口读取写入的所述数据。
依据本发明的又一个方面,还提供了一种数据同步***,包括第一数据库集群、第二数据库集群以及上述的数据同步装置。
可选地,所述数据同步装置独立于所述第一数据库集群及所述第二数据库集群;或者,所述数据同步装置驻留在所述第一数据库集群或所述第二数据库集群。
本发明提供的技术方案应用于集群自身无法实现集群间同步的至少两个数据库集群中。因某一数据库集群无法负担用户请求时,需要另外一个数据库集群协同负担,但是若另一个数据库集群无法实现数据同步,那么就无法实现协同业务的目的。为解决这一技术问题,本发明实施例提供了一种跨数据库集群同步数据的方法,用于将第一数据库集群中的数据同步到第二数据库集群,即监控第一数据库集群的数据写入操作,当监控到存在数据被写入第一数据库集群时,读取写入的数据,随后将写入的数据写入第二数据库集群,以便第二数据库集群对外提供数据访问服务。由此实现了第一数据库集群与第二数据库集群的数据同步,解决了独立数据库集群自身无法实现集群间的数据同步的问题。并且,将第一数据库集群的数据同步至第二数据库集群后,可以由第二数据库集群对外提供数据访问服务,解决了相关技术中当访问请求量达到第一数据库集群能够承受的极值时,第一数据库集群无法继续提供数据访问服务的问题,进而有效地分担第一数据库集群被访问数据的压力。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的数据同步方法的流程示意图;
图2示出了根据本发明一个实施例的数据同步装置的结构示意图;
图3示出了根据本发明另一个实施例的数据同步装置的结构示意图;以及
图4示出了根据本发明一个实施例的数据同步***的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为解决上述技术问题,本发明实施例提供了一种数据同步方法,用于将第一数据库集群中的数据同步到第二数据库集群,第一数据库集群与第二数据库集群相互独立,且数据库集群自身无法实现两数据库集群间的数据同步。需要说明的是,本发明实施例中的第一、第二数据库集群并没有数量上的限制,可以有至少一个第一数据库集群,至少一个第二数据库集群。图1示出了根据本发明一个实施例的数据同步方法的流程示意图。如图1所示,该方法至少包括以下步骤S102、步骤S104以及步骤S106。
步骤S102、监控第一数据库集群的数据写入操作。
步骤S104、当监控到存在数据被写入第一数据库集群时,读取写入的数据。
步骤S106、将上述写入的数据写入第二数据库集群。
本发明提供的技术方案应用于集群自身无法实现集群间同步的至少两个数据库集群中。因某一数据库集群无法负担用户请求时,需要另外一个数据库集群协同负担,但是若另一个数据库集群无法实现数据同步,那么就无法实现协同业务的目的。为解决这一技术问题,本发明实施例提供了一种跨数据库集群同步数据的方法,用于将第一数据库集群中的数据同步到第二数据库集群,即监控第一数据库集群的数据写入操作,当监控到存在数据被写入第一数据库集群时,读取写入的数据,随后将写入的数据写入第二数据库集群,以便第二数据库集群对外提供数据访问服务。由此实现了第一数据库集群与第二数据库集群的数据同步,解决了独立数据库集群自身无法实现集群间的数据同步的问题。并且,将第一数据库集群的数据同步至第二数据库集群后,可以由第二数据库集群对外提供数据访问服务,解决了相关技术中当访问请求量达到第一数据库集群能够承受的极值时,第一数据库集群无法继续提供数据访问服务的问题,进而有效地分担第一数据库集群被访问数据的压力。
本发明实施例中,第一数据库集群可以包括主数据库与至少一从数据库,因而可以监控第一数据库集群的主数据库或至少一从数据库中的任意之一。即,上文步骤S102可以实施为实时监控第一数据库集群中的主数据库的数据写入操作。在一个优选的实施例中,可以实时监控主数据库的oplog(operationlog,调度日志)日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入主数据库(也即,数据被写入第一数据库集群);反之,则确定未有数据被写入主数据库。例如,实时监控主数据库的oplog日志文件中insert(***)或者update(更新)参数是否被赋值,若是,则确定监控到存在数据被写入主数据库;若否,则确定未监控到存在数据写入主数据库。此外,在非即时性数据服务的情况下,步骤S102还可以实施为实时监控第一数据库集群中的至少一从数据库的数据写入操作。在另一个优选的实施例中,可以实时监控从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入从数据库(也即,数据被写入第一数据库集群);反之,则确定未有数据被写入从数据库。例如,实时监控从数据库的oplog日志文件中insert(***)或者update(更新)参数是否被赋值,若是,则确定监控到存在数据被写入从数据库;若否,则确定未监控到存在数据写入从数据库。
进一步地,第二数据库集群可以包括主数据库与至少一从数据库,步骤S106可以实施为将数据写入第二数据库集群的主数据库。之后,将数据从第二数据库集群的主数据库同步至其从数据库。
在本发明的一个实施例中,第一、第二数据库集群可以为Mongodb集群。Mongodb集群为独立集群,集群自身无法实现集群间的数据同步,采用本发明提供的技术方案,可以将Mongodb第一数据库集群的数据同步至Mongodb第二数据库集群,从而可以由第二数据库集群对外提供数据访问服务。例如,Mongodb第一数据库集群能够承担的访问请求量为1000,若当前的访问请求量达到1001时,可以由Mongodb第二数据库集群对第1001个访问请求提供服务。又例如,Mongodb第一数据库集群能够承担的访问请求量为1000,若访问请求量为1500,可以由Mongodb第一数据库集群对其中的800个访问请求提供服务,由Mongodb第二数据库集群对其余的700个访问请求提供服务。再例如,Mongodb第一数据库集群能够承担的访问请求量为1000,Mongodb第二数据库集群A能够承担的访问请求量为1000,若访问请求量为2500,此时两个集群满足不了当前的需求,需要再次增加集群,那么可以将Mongodb第一数据库集群的数据同步至Mongodb第二数据库集群B,由第二数据库集群B对500个访问请求提供服务。需要说明的是,此处举例仅是示意性的,并不用于限制本发明。
进一步地,步骤S104中当监控到存在数据被写入第一数据库集群时,读取写入的数据可以通过Mongodb接口读取写入的数据。此外,步骤S106中将上述写入的数据写入第二数据库集群,可以通过Mongodb接口将上述写入的数据写入第二数据库集群。
基于同一发明构思,本发明实施例还提供了一种数据同步装置,以实现上述数据同步方法。
图2示出了根据本发明一个实施例的数据同步装置的结构示意图。参见图2,该装置至少包括:监控器210、读取器220以及写入器230。
现介绍本发明实施例的数据同步装置的各组成或器件的功能以及各部分间的连接关系:
监控器210,适于监控第一数据库集群的数据写入操作;
读取器220,与监控器210相耦合,适于当监控到存在数据被写入第一数据库集群时,读取写入的数据;以及
写入器230,与读取器220相耦合,适于将数据写入第二数据库集群。
在本发明的一个实施例中,第一数据库集群包括主数据库与至少一从数据库,上述监控器210还适于:实时监控第一数据库集群中的主数据库的数据写入操作。
在本发明的一个实施例中,上述监控器210还适于:实时监控主数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入主数据库(也即,数据被写入第一数据库集群)。
在本发明的一个实施例中,第一数据库集群包括主数据库与至少一从数据库,上述监控器210还适于:实时监控第一数据库集群中的至少一从数据库的数据写入操作。
在本发明的一个实施例中,上述监控器210还适于:实时监控所述至少一从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入从数据库(也即,数据被写入第一数据库集群)。
在本发明的一个实施例中,第二数据库集群包括主数据库与至少一从数据库,写入器230还适于:将数据写入第二数据库集群的主数据库。
在本发明的一个实施例中,图3示出了根据本发明另一个实施例的数据同步装置的结构示意图。参见图3,该装置还可以包括:同步器310,与写入器230相耦合,适于写入器230将数据写入第二数据库集群的主数据库之后,将数据从第二数据库集群的主数据库同步至所述第二数据库集群的至少一从数据库。请注意,此处的同步操作并不限定于所述同步器310来执行。由于Mongodb集群本身也具有将主数据库数据同步到其从数据库的功能,因此所述同步动作也可以在没有同步器310的情况下由Mongodb自身来完成,此并非本发明的限制。
在本发明的一个实施例中,第一数据库集群与第二数据库集群为Mongodb集群。
在本发明的一个实施例中,读取器220还适于:通过Mongodb接口读取写入的数据。
基于上文各实施例提供的数据同步方法和装置,基于同一发明构思,本发明实施例还提供了一种数据同步***,参见图4所示,该***至少包括:第一数据库集群410、第二数据库集群420以及数据同步装置430(如图2所示)。
数据同步装置430,适于监控第一数据库集群410的数据写入操作;当监控到存在数据被写入第一数据库集群410时,读取写入的数据;将写入的数据写入第二数据库集群420;
第二数据库集群420,适于接收来自数据同步装置430的数据写入请求,执行数据的写入操作。
在本发明的一个实施例中,数据同步装置430独立于第一数据库集群410及第二数据库集群420;或者,
数据同步装置430驻留在第一数据库集群410或第二数据库集群420。
在本发明的一个实施例中,当接收到数据访问请求时,可以采用预设的分流策略对数据访问请求进行分流,部分使用第一数据库集群410实现访问,部分使用第二数据库集群420实现访问。这里的分流策略可以包括带宽负载均衡、流量负载均衡或请求平均访问时延,等等,本发明不限于此。
根据上述任意一个优选实施例或多个优选实施例的组合,本发明实施例能够达到如下有益效果:
本发明提供的技术方案应用于集群自身无法实现集群间同步的至少两个数据库集群中。因某一数据库集群无法负担用户请求时,需要另外一个数据库集群协同负担,但是若另一个数据库集群无法实现数据同步,那么就无法实现协同业务的目的。为解决这一技术问题,本发明实施例提供了一种跨数据库集群同步数据的方法,用于将第一数据库集群中的数据同步到第二数据库集群,即监控第一数据库集群的数据写入操作,当监控到存在数据被写入第一数据库集群时,读取写入的数据,随后将写入的数据写入第二数据库集群,以便第二数据库集群对外提供数据访问服务。由此实现了第一数据库集群与第二数据库集群的数据同步,解决了独立数据库集群自身无法实现集群间的数据同步的问题。并且,将第一数据库集群的数据同步至第二数据库集群后,可以由第二数据库集群对外提供数据访问服务,解决了相关技术中当访问请求量达到第一数据库集群能够承受的极值时,第一数据库集群无法继续提供数据访问服务的问题,进而有效地分担第一数据库集群被访问数据的压力。
本发明还公开了:
A1、一种数据同步方法,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,所述方法包括:
监控所述第一数据库集群的数据写入操作;
当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及
将所述数据写入所述第二数据库集群。
A2、根据A1所述的方法,其中,所述第一数据库集群包括主数据库与至少一从数据库,以及所述监控所述第一数据库集群的数据写入操作的步骤进一步包括:
实时监控所述第一数据库集群中的主数据库的数据写入操作。
A3、根据A2所述的方法,其中,所述实时监控所述第一数据库集群中的主数据库的数据写入操作的步骤进一步包括:
实时监控所述主数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
A4、根据A1所述的方法,其中,所述第一数据库集群包括主数据库与至少一从数据库,以及所述监控所述第一数据库集群的数据写入操作的步骤进一步包括:
实时监控所述第一数据库集群中的至少一从数据库的数据写入操作。
A5、根据A4所述的方法,其中,所述实时监控所述第一数据库集群中的至少一从数据库的数据写入操作的步骤进一步包括:
实时监控所述至少一从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
A6、根据A1所述的方法,其中,所述第二数据库集群包括主数据库与至少一从数据库,以及所述将所述数据写入第二数据库集群的步骤进一步包括:
将所述数据写入所述第二数据库集群的所述主数据库。
A7、根据A6所述的方法,其中,将所述数据写入所述第二数据库集群的所述主数据库之后,还包括:
将所述数据从所述第二数据库集群的所述主数据库同步至所述第二数据库集群的所述至少一从数据库。
A8、根据A1-A7中任一项所述的方法,其中,所述第一数据库集群与所述第二数据库集群为Mongodb集群。
A9、根据A8所述的方法,其中,所述读取写入的所述数据,包括:
通过Mongodb接口读取写入的所述数据。
B10、一种数据同步装置,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,所述数据同步装置包括:
监控器,适于监控所述第一数据库集群的数据写入操作;
读取器,适于当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及
写入器,适于将所述数据写入所述第二数据库集群。
B11、根据B10所述的装置,其中,所述第一数据库集群包括主数据库与至少一从数据库,所述监控器还适于:
实时监控所述第一数据库集群中的主数据库的数据写入操作。
B12、根据B11所述的装置,其中,所述监控器还适于:
实时监控所述主数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
B13、根据B10所述的装置,其中,所述第一数据库集群包括主数据库与至少一从数据库,所述监控器还适于:
实时监控所述第一数据库集群中的至少一从数据库的数据写入操作。
B14、根据B13所述的装置,其中,所述监控器还适于:
实时监控所述至少一从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
B15、根据B10所述的装置,其中,所述第二数据库集群包括主数据库与至少一从数据库,所述写入器还适于:
将所述数据写入所述第二数据库集群的所述主数据库。
B16、根据B15所述的装置,其中,还包括:
同步器,适于所述写入器将所述数据写入所述第二数据库集群的所述主数据库之后,将所述数据从所述第二数据库集群的所述主数据库同步至所述第二数据库集群的所述至少一从数据库。
B17、根据B10-B16中任一项所述的装置,其中,所述第一数据库集群与所述第二数据库集群为Mongodb集群。
B18、根据B17所述的装置,其中,所述读取器还适于:
通过Mongodb接口读取写入的所述数据。
C19、一种数据同步***,包括第一数据库集群、第二数据库集群以及B10-B18任一项所述的数据同步装置。
C20、根据C19所述的***,其中,所述数据同步装置独立于所述第一数据库集群及所述第二数据库集群;或者,
所述数据同步装置驻留在所述第一数据库集群或所述第二数据库集群。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据同步装置及***中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
Claims (10)
1.一种数据同步方法,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,所述方法包括:
监控所述第一数据库集群的数据写入操作;
当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及
将所述数据写入所述第二数据库集群。
2.根据权利要求1所述的方法,其中,所述第一数据库集群包括主数据库与至少一从数据库,以及所述监控所述第一数据库集群的数据写入操作的步骤进一步包括:
实时监控所述第一数据库集群中的主数据库的数据写入操作。
3.根据权利要求2所述的方法,其中,所述实时监控所述第一数据库集群中的主数据库的数据写入操作的步骤进一步包括:
实时监控所述主数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
4.根据权利要求1所述的方法,其中,所述第一数据库集群包括主数据库与至少一从数据库,以及所述监控所述第一数据库集群的数据写入操作的步骤进一步包括:
实时监控所述第一数据库集群中的至少一从数据库的数据写入操作。
5.根据权利要求4所述的方法,其中,所述实时监控所述第一数据库集群中的至少一从数据库的数据写入操作的步骤进一步包括:
实时监控所述至少一从数据库的oplog日志文件中表示写入操作的参数是否被赋值,若是,则确定存在数据被写入所述第一数据库集群。
6.根据权利要求1所述的方法,其中,所述第二数据库集群包括主数据库与至少一从数据库,以及所述将所述数据写入第二数据库集群的步骤进一步包括:
将所述数据写入所述第二数据库集群的所述主数据库。
7.根据权利要求6所述的方法,其中,将所述数据写入所述第二数据库集群的所述主数据库之后,还包括:
将所述数据从所述第二数据库集群的所述主数据库同步至所述第二数据库集群的所述至少一从数据库。
8.根据权利要求1-7中任一项所述的方法,其中,所述第一数据库集群与所述第二数据库集群为Mongodb集群。
9.一种数据同步装置,用于将第一数据库集群中的数据同步到第二数据库集群,所述第一数据库集群与所述第二数据库集群相互独立,所述数据同步装置包括:
监控器,适于监控所述第一数据库集群的数据写入操作;
读取器,适于当监控到存在数据被写入所述第一数据库集群时,读取写入的所述数据;以及
写入器,适于将所述数据写入所述第二数据库集群。
10.一种数据同步***,包括第一数据库集群、第二数据库集群以及权利要求9所述的数据同步装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410797462.0A CN104462483A (zh) | 2014-12-18 | 2014-12-18 | 数据同步方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410797462.0A CN104462483A (zh) | 2014-12-18 | 2014-12-18 | 数据同步方法、装置及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104462483A true CN104462483A (zh) | 2015-03-25 |
Family
ID=52908518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410797462.0A Pending CN104462483A (zh) | 2014-12-18 | 2014-12-18 | 数据同步方法、装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104462483A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105912628A (zh) * | 2016-04-07 | 2016-08-31 | 北京奇虎科技有限公司 | 主从数据库的同步方法及装置 |
CN106331063A (zh) * | 2016-08-15 | 2017-01-11 | 成都轻车快马网络科技有限公司 | 数据库部署方法 |
CN107124469A (zh) * | 2017-06-07 | 2017-09-01 | 郑州云海信息技术有限公司 | 一种集群节点通信方法及*** |
CN107145562A (zh) * | 2017-05-02 | 2017-09-08 | 北京奇艺世纪科技有限公司 | 一种数据同步方法、装置及*** |
CN107370809A (zh) * | 2017-07-13 | 2017-11-21 | 广州市百果园信息技术有限公司 | 数据同步方法及数据搜索*** |
CN107451245A (zh) * | 2017-07-27 | 2017-12-08 | 联想(北京)有限公司 | 数据同步方法及服务器集群 |
CN107644035A (zh) * | 2016-07-21 | 2018-01-30 | 百度在线网络技术(北京)有限公司 | 一种数据库***及其部署方法 |
CN108881379A (zh) * | 2018-05-03 | 2018-11-23 | 网宿科技股份有限公司 | 一种服务器集群间数据同步的方法和装置 |
CN112667698A (zh) * | 2021-01-04 | 2021-04-16 | 山西云媒体发展有限公司 | 一种基于融媒体平台的MongoDB数据同步方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101854400A (zh) * | 2010-06-09 | 2010-10-06 | 中兴通讯股份有限公司 | 一种数据库同步部署及监控的方法和装置 |
CN102158540A (zh) * | 2011-02-18 | 2011-08-17 | 广州从兴电子开发有限公司 | 分布式数据库实现***及方法 |
CN102693324A (zh) * | 2012-01-09 | 2012-09-26 | 西安电子科技大学 | 一种分布式数据库同步***、同步方法和节点管理方法 |
CN102750283A (zh) * | 2011-04-20 | 2012-10-24 | 阿里巴巴集团控股有限公司 | 海量数据同步***及方法 |
CN103150304A (zh) * | 2011-12-06 | 2013-06-12 | 郑红云 | 云数据库*** |
US8548945B2 (en) * | 2011-09-23 | 2013-10-01 | International Business Machines Corporation | Database caching utilizing asynchronous log-based replication |
CN103747060A (zh) * | 2013-12-26 | 2014-04-23 | 惠州华阳通用电子有限公司 | 一种基于流媒体服务集群的分布式监控***及方法 |
-
2014
- 2014-12-18 CN CN201410797462.0A patent/CN104462483A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101854400A (zh) * | 2010-06-09 | 2010-10-06 | 中兴通讯股份有限公司 | 一种数据库同步部署及监控的方法和装置 |
CN102158540A (zh) * | 2011-02-18 | 2011-08-17 | 广州从兴电子开发有限公司 | 分布式数据库实现***及方法 |
CN102750283A (zh) * | 2011-04-20 | 2012-10-24 | 阿里巴巴集团控股有限公司 | 海量数据同步***及方法 |
US8548945B2 (en) * | 2011-09-23 | 2013-10-01 | International Business Machines Corporation | Database caching utilizing asynchronous log-based replication |
CN103150304A (zh) * | 2011-12-06 | 2013-06-12 | 郑红云 | 云数据库*** |
CN102693324A (zh) * | 2012-01-09 | 2012-09-26 | 西安电子科技大学 | 一种分布式数据库同步***、同步方法和节点管理方法 |
CN103747060A (zh) * | 2013-12-26 | 2014-04-23 | 惠州华阳通用电子有限公司 | 一种基于流媒体服务集群的分布式监控***及方法 |
Non-Patent Citations (1)
Title |
---|
白坤娟: "认证***异构数据库数据同步方法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105912628A (zh) * | 2016-04-07 | 2016-08-31 | 北京奇虎科技有限公司 | 主从数据库的同步方法及装置 |
CN105912628B (zh) * | 2016-04-07 | 2019-05-28 | 北京奇虎科技有限公司 | 主从数据库的同步方法及装置 |
CN107644035A (zh) * | 2016-07-21 | 2018-01-30 | 百度在线网络技术(北京)有限公司 | 一种数据库***及其部署方法 |
CN106331063B (zh) * | 2016-08-15 | 2019-04-09 | 成都轻车快马网络科技有限公司 | 数据库部署方法 |
CN106331063A (zh) * | 2016-08-15 | 2017-01-11 | 成都轻车快马网络科技有限公司 | 数据库部署方法 |
CN107145562A (zh) * | 2017-05-02 | 2017-09-08 | 北京奇艺世纪科技有限公司 | 一种数据同步方法、装置及*** |
CN107145562B (zh) * | 2017-05-02 | 2020-07-28 | 北京奇艺世纪科技有限公司 | 一种数据同步方法、装置及*** |
CN107124469A (zh) * | 2017-06-07 | 2017-09-01 | 郑州云海信息技术有限公司 | 一种集群节点通信方法及*** |
CN107370809A (zh) * | 2017-07-13 | 2017-11-21 | 广州市百果园信息技术有限公司 | 数据同步方法及数据搜索*** |
CN107451245A (zh) * | 2017-07-27 | 2017-12-08 | 联想(北京)有限公司 | 数据同步方法及服务器集群 |
CN108881379A (zh) * | 2018-05-03 | 2018-11-23 | 网宿科技股份有限公司 | 一种服务器集群间数据同步的方法和装置 |
CN112667698A (zh) * | 2021-01-04 | 2021-04-16 | 山西云媒体发展有限公司 | 一种基于融媒体平台的MongoDB数据同步方法 |
CN112667698B (zh) * | 2021-01-04 | 2023-02-28 | 山西云媒体发展有限公司 | 一种基于融媒体平台的MongoDB数据同步方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104462483A (zh) | 数据同步方法、装置及*** | |
CN103237046B (zh) | 支持混合云存储应用的分布式文件***及实现方法 | |
Benelallam et al. | Neo4EMF, a scalable persistence layer for EMF models | |
JP5376696B2 (ja) | ステートレスなプロトコルを介したドキュメントの同期 | |
CN102411637B (zh) | 分布式文件***的元数据管理方法 | |
CN110362381A (zh) | Hdfs集群高可用部署方法、***、设备及存储介质 | |
CN101272313B (zh) | 进行文件级的虚拟化的中间装置、文件服务器***和中继方法 | |
CN104537076A (zh) | 一种文件读写方法及装置 | |
US20170147602A1 (en) | Allocating file system metadata to storage nodes of distributed file system | |
CN102882985A (zh) | 基于云存储的文件共享方法 | |
CN104220987A (zh) | 应用安装 | |
KR101545626B1 (ko) | Dds-db 연동 시스템 | |
CN105740469B (zh) | 存储服务器和元数据访问方法 | |
CN109684282A (zh) | 一种构建元数据缓存的方法及装置 | |
CN104156381A (zh) | Hadoop分布式文件***的副本存取方法、装置和Hadoop分布式文件*** | |
US11563805B2 (en) | Method, apparatus, client terminal, and server for data processing | |
CN103414762A (zh) | 云备份方法和装置 | |
CN105049524B (zh) | 一种基于hdfs的大规模数据集装载的方法 | |
CN104808953B (zh) | 控制数据存储的方法、装置及移动终端 | |
CN105335450B (zh) | 数据存储处理方法及装置 | |
KR20220017926A (ko) | 블록체인 캐시 시스템 | |
CN102281312A (zh) | 一种数据加载方法、***和数据处理方法、*** | |
US20150295984A1 (en) | Multi Web Application Management Framework System and Method | |
CN108243207A (zh) | 一种网络云盘的数据存储方法 | |
CN104219271B (zh) | 基于多线程异步下载页面的多服务器同步方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150325 |