CN104184822A - 一种数据同步的方法及系统 - Google Patents

一种数据同步的方法及系统 Download PDF

Info

Publication number
CN104184822A
CN104184822A CN201410438454.7A CN201410438454A CN104184822A CN 104184822 A CN104184822 A CN 104184822A CN 201410438454 A CN201410438454 A CN 201410438454A CN 104184822 A CN104184822 A CN 104184822A
Authority
CN
China
Prior art keywords
data
synchrodata
synchronization server
sync client
synchronized
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
Application number
CN201410438454.7A
Other languages
English (en)
Inventor
李涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Juhaokan Technology Co Ltd
Original Assignee
Sea View (beijing) Technology Co Ltd
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 Sea View (beijing) Technology Co Ltd filed Critical Sea View (beijing) Technology Co Ltd
Priority to CN201410438454.7A priority Critical patent/CN104184822A/zh
Publication of CN104184822A publication Critical patent/CN104184822A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供的一种数据同步的方法及系统,由同步服务器首先接收物理数据库发送的待同步数据,然后根据待同步数据的属性信息查询订阅信息,得到待同步数据对应的同步客户端以及目标内存数据库,最后将待同步数据分发到待同步数据对应的同步客户端,以使待同步数据对应的同步客户端将待同步数据同步到待同步数据对应的目标内存数据库中。可以看出,不需要利用应用程序进行数据同步,也不需要通过应用程序将同步的数据转换成键值对的格式。因此,本发明实施例中的技术方案,在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能保证物理数据库中的数据和内存数据中的数据一致,从而提高用户查询结果的准确性。

Description

一种数据同步的方法及系统
技术领域
本发明涉及数据处理方法,特别涉及一种数据同步的方法及系统。
背景技术
物理数据库是将数据存储在物理设备上,如磁盘,而磁盘等物理设备存储数据时进行的输入输出操作是非常耗时的,从而导致物理数据库对磁盘等物理设备的读写操作非常慢。内存数据库是将数据放在内存中直接操作的数据库,相对于磁盘等物理设备,内存的数据读写速度要高出几个数量级,将数据保存在内存中相比从物理数据库上访问能够极大地提高应用的性能。
随着访问量不断的增加,物理数据库的读写效率已经不能满足当前用户的访问需求。用户访问请求中数据查询操作占用了较大比例,数据修改操作相对较少,因此目前的一种数据处理系统中,结合物理数据库和内存数据库的特点,将数据的查询操作分流到内存数据库进行,数据的修改操作仍在物理数据库上进行。因此,对物理数据库的修改操作要及时同步到内存数据库。
目前物理数据库到内存数据库的同步操作基本上使用双写方式进行,即,通过应用程序对物理数据库修改的同时,要写一份同样的数据在内存数据库中,保证物理数据库和内存数据库的数据的一致性。
然而通过双写的方式将物理数据库中的数据同步到内存数据库是同应用程序紧密相连的,不同的应用程序根据自己的需求进行数据的双写操作,这样不仅增加了应用程序的复杂性,导致系统运行的缓慢,而且也不利于系统的可扩展性。另外,由于双写是同应用程序紧密相连的,因此当通过其它的方式对物理数据库中的数据进行修改时,应用程序是不能将物理数据库中更新后的数据同步到内存数据库的,也就不能保证物理数据中的数据和内存数据中的数据一致,从而导致用户的查询结果不准确。
发明内容
本发明实施例提供一种数据同步的方法及系统,用以在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能够保证物理数据库中的数据和内存数据中的数据一致,从而提高用户查询结果的准确性。
本发明实施例提供一种数据同步的方法,包括:
同步服务器接收物理数据库发送的待同步数据;
所述同步服务器根据所述待同步数据的属性信息查询订阅信息,得到所述待同步数据对应的同步客户端以及目标内存数据库;
所述同步服务器将所述待同步数据分发到所述待同步数据对应的同步客户端,以使所述待同步数据对应的同步客户端将所述待同步数据同步到所述待同步数据对应的目标内存数据库中。
较佳的,还包括:所述物理数据库发生数据更新,将更新后的数据发送给与其连接的数据处理器;所述数据处理器将接收到的数据发送给所述同步服务器,所述数据处理器与至少一个物理数据库连接。
较佳的,所述数据处理器将接收到的数据发送给所述同步服务器之前,还包括:所述数据处理器根据需要订阅的数据的属性信息对接收到的数据进行过滤,得到所述待同步数据。
较佳的,所述订阅信息的订阅过程包括:所述同步客户端向所述同步服务器发送订阅请求,所述订阅请求中携带所述需要订阅的数据的属性信息。
较佳的,所述同步服务器将所述待同步数据分发到所述待同步数据对应的同步客户端之后,还包括:所述同步客户端将所述待同步数据转换为键值对;所述同步客户端将转换得到的键值对同步到与其相对应的目标内存数据库中。
本发明实施例提供的一种数据同步的系统,包括:同步服务器,同步客户端,所述同步服务器包括:
接收模块,用于接收物理数据库发送的待同步数据;
查询模块,用于根据所述待同步数据的属性信息查询订阅信息,得到所述待同步数据对应的同步客户端以及目标内存数据库;分发模块,用于将所述待同步数据分发到所述待同步数据对应的同步客户端,以使所述待同步数据对应的同步客户端将所述待同步数据同步到所述待同步数据对应的目标内存数据库中。
较佳的,还包括:数据处理器,
所述物理数据库发生数据更新,将更新后的数据发送给与其连接的所述数据处理器;
所述数据处理器,用于将接收到的数据发送给所述同步服务器,所述数据处理器与至少一个物理数据库连接。
较佳的,所述数据处理器,还用于:将接收到的数据发送给所述同步服务器之前,根据需要订阅的数据的属性信息对接收到的数据进行过滤,得到所述待同步数据。
较佳的,所述同步客户端包括:
订阅模块,用于向所述同步服务器发送订阅请求,所述订阅请求中携带所述需要订阅的数据的属性信息。
较佳的,所述同步客户端还包括:
同步模块,用于在接收到所述同步服务器发送的所述待同步数据之后,将所述待同步数据转换为键值对,将转换得到的键值对同步到与其相对应的目标内存数据库中。
本发明实施例中,同步服务器首先接收物理数据库发送的待同步数据,然后根据待同步数据的属性信息查询订阅信息,得到待同步数据对应的同步客户端以及目标内存数据库,最后将待同步数据分发到待同步数据对应的同步客户端,以使待同步数据对应的同步客户端将待同步数据同步到待同步数据对应的目标内存数据库中,可以看出,本发明实施例中数据同步的方法及系统通过同步服务器接收物理数据库发送的待同步数据,即可将接收到的待同步数据发送给同步客户端,并由同步客户端同步到目标内存数据库中;不需要利用应用程序进行数据同步,也不需要通过应用程序将同步的数据转换成键值对的格式。因此,本发明实施例中的技术方案,在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能保证物理数据库中的数据和内存数据中的数据一致,从而提高用户查询结果的准确性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据同步的方法的流程图;
图2为本发明实施例中同步服务器接收数据处理器发送的待同步数据的流程图;
图3为本发明实施例中数据处理器接收物理数据库发送的数据的流程图;
图4为本发明实施例中同步客户端将待同步数据同步到对应的目标内存数据库的流程图;
图5本发明另一实施提供的数据同步方法的流程图;
图6本发明实施例提供的数据同步系统的结构示意图;
图7本发明另一实施例提供的数据同步系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
本发明实施例中同步服务器与同步客户端可以设置在同一设备中,也可以设置于不同的设备中,当设置在不同的设备中时,同步服务器与同步客户端可以通过有线或者无线的方式进行通信。所使用的无线通信方式可包括但不限于Wi-Fi(Wireless Fidelity,无线保真)、蓝牙(Bluetooth)、3G(3rd Generation MobileCommunication Technology,第三代移动通信技术,简称3G)或4G(4thGeneration Mobile Communication Technology,第三代移动通信技术,简称4G)等方式;所使用的有线通信方式可以包括光纤通信技术。
另外,现有技术的主从数据库同步,主要是通过从数据库对主数据库中修改的数据进行备份,当主数据库中有数据损坏或者无法修复的时候,可以通过从数据库中备份的数据对主数据库进行修复等操作。本发明实施例中的数据处理器不仅能够同步一个物理数据库中的数据,还能够通过在数据处理器中存储多个物理数据库的配置参数,这里,物理数据库的配置参数可以为:物理数据库的名称,地址,端口,密码等,然后根据存储的多个物理数据库的配置参数中的地址和端口能够链接到多个物理数据库,从而当多个物理数据库中的数据有更新的时候,能够接收多个物理数据库发生更新后的数据。如图1所示,为本发明实施例提供的一种数据同步的方法,包括:
S101、同步服务器接收物理数据库发送的待同步数据。其中待同步数据是物理数据库发生数据更新后将更新后的数据发送给同步服务器的。
S102、同步服务器根据待同步数据的属性信息查询订阅信息,得到待同步数据对应的同步客户端以及目标内存数据库。其中,订阅信息是同步客户端预先订阅的,订阅信息包括:待同步数据的属性信息与同步客户端以及目标内存数据库的对应关系。
进一步地,若同步服务器根据待同步数据的属性信息未查询到订阅信息或者查询到的订阅信息的内容为空或者所查询到的订阅信息的内容为错误的订阅信息,则返回到步骤S101。
S103、同步服务器将待同步数据分发到待同步数据对应的同步客户端,以使待同步数据对应的同步客户端将待同步数据同步到待同步数据对应的目标内存数据库中。
上述流程中,所述待同步数据的属性信息可以为表名称或表标识,也可以是数据的类型、字段名称等,例如,待同步数据的属性信息可以是微信账号信息表的标识。
上述流程中,所述订阅信息是同步服务器根据同步客户端发起的订阅请求得到的。订阅信息中包括:待同步数据的属性信息与同步客户端以及目标内存数据库的对应关系,比如,订阅信息可包括:表标识与同步客户端的标识信息以及内存数据库的标识信息的对应关系。其中,同步客户端的标识信息可以为同步客户端的参数配置信息,例如同步客户端自身的序列号等;目标内存数据的标识信息可以目标内存数据库的配置信息,例如内存数据库的标识、内存数据库的地址以及内存数据库的端口等可唯一标识内存数据库的信息。
举例来说,以下代码示出了一种订阅信息的内容:
上述代码所示的订阅信息中,表名称为:微信账号信息表,对应的目标内存数据库的地址为127.0.0.1,端口为:6379,对应的同步客户端的序列号为:synclient_111。根据该订阅信息,当物理数据库中的微信账号信息表中的数据更新时,需要将该微信账号信息表中更新的数据通过序列号为synclient_111的客户端同步到地址为127.0.0.1、端口为6379的目标内存数据库中。
为了增加同步客户端和同步服务器的灵活性,上述的订阅信息可以采取XML(Extensible Markup Language,扩展标记语言)格式的文件进行存储,当然也可以采用其它的文件格式进行存储,例如TXT(Textfile,文本文件)。
其中,上述订阅信息的订阅过程可以包括:同步客户端向同步服务器发送订阅请求,订阅请求中携带所述需要订阅的数据的属性信息,同步服务器根据订阅请求中携带的需要订阅的数据的属性信息以及同步客户端的标识信息生成订阅信息。
进一步地,同步客户端接收到同步服务器发送的所述待同步数据之后,可将待同步数据转换为键值对(Key-Value);将转换得到的键值对同步到目标内存数据库中。
本发明实施例基于物理数据库中主数据库/从数据库的架构实现数据同步,其中,物理数据库可基于数据库系统内置的触发机制,当有数据更新时,将发生更新的数据作为发送给数据处理器,数据处理器可以根据需要订阅的数据局的属性信息对接收到的数据进行过滤后,得到待同步数据,然后由数据处理器待同步数据发送给同步服务器。下面结合图2、图3分别描述上述流程。
如图2所示,为同步服务器接收数据处理器发送的待同步数据的具体过程,该过程可包括:
S201、同步服务器接收数据处理器发送的待同步数据。
S202、同步服务器将接收到的待同步数据进行解析,得到待同步数据的属性信息;同步服务器得到待同步数据的属性信息后,返回到步骤S201。
进一步地,同步服务器得到待同步数据的属性信息后,可以通过消息队列将得到的待同步数据的属性信息进行存储。
进一步地,为了扩大同步数据的范围,数据处理器可以接收多个物理数据库发送的数据。
其中,数据处理器中根据需要订阅的数据的属性信息对接收到的数据进行过滤,可以减少同步服务器的查询时间以及节省同步服务器的存储空间,例如,当物理数据库中有五个表中的数据发生了更新,五个表的表标识分别为:表_1、表_2、表_3、表_4、表_5,而需要订阅的数据的属性信息为表标识:表_1和表_2,则数据处理器接收物理数据库发送的更新后的5个表的数据后,根据需要订阅的表的表标识:表_1和表_2,保留表_1和表_2中的数据,而丢弃表_3、表_4和表_5中的数据,然后将保留的表_1和表_2中的数据发送给同步服务器。
为了便于数据处理器根据需要订阅的数据的属性信息对接收的数据进行过滤,从而能够提高数据同步的速度。数据处理器还可以对接收到的数据进行格式转换,例如,若接收的数据为数据包或者字节流,则可以将接收到的数据包或者字节流转换成数据表的格式。
如图3所示,为数据处理器接收物理数据库发送的数据的具体过程,该过程可包括:
S301、数据处理器接收物理数据库发生数据更新后发送的更新后的数据。
S302、数据处理器将接收到的数据进行格式转换。
S303、数据处理器根据需要订阅的数据的属性信息对格式转换后的数据进行过滤,得到待同步数据;数据处理器得到待同步数据后,返回到步骤S301。
如图4所示,为本发明实施例中同步客户端将接收的待同步数据同步到目标内存数据库的具体过程,该过程可包括:
S401、同步客户端接收同步服务器根据订阅请求中所携带的需要订阅的数据的属性信息所发送的待同步数据。
S402、同步客户端将接收的待同步数据转换为键值对。
S403、同步客户端将转换得到的键值对同步到目标内存数据库中。同步客户端将转换得到的键值对同步到目标内存数据库后,返回到步骤S401。
上述内容对本发明实施例提供的数据同步的方法中的几个流程进行了详细的介绍,通过本发明实施例提供的数据同步的方法,由同步服务器接收物理数据库发送的待同步数据,然后将接收到的待同步数据发送给同步客户端,并由同步客户端同步到目标内存数据库中;可以看出,不需要利用应用程序进行数据同步,也不需要通过应用程序将同步的数据转换成键值对的格式。因此,在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能保证物理数据库中的数据和内存数据中的数据一致,提高用户查询结果的准确性。另外,本发明实施例中的数据处理器,能接收多个物理数据库发生更新后所发送的更新后的数据,从而还能够扩大同步数据的范围。
下面通过本发明的一个优选实施例,对本发明实施提供的数据同步的方法进行详细的说明。
假设物理数据库中所存储的三个表在更新前的数据信息如下:
学生成绩表
标识 姓名 语文 数学 英语 物理 化学 生物
101 张三 0 0 0 0 0 0
102 李四 0 0 0 0 0 0
103 王小 0 0 0 800 0 0
用户手机套餐表
标识 姓名 套餐 已用流量(M) 话费(元)
201 张超 A 0 0
202 王语 B 0 0
203 李斯 C 0 0
微信账号信息表
物理数据库中所存储的三个表在更新后的数据信息如下:
学生成绩表
标识 姓名 语文 数学 英语 物理 化学 生物
101 张三 90 90 90 90 90 90
102 李四 85 85 85 85 85 85
103 王小 80 80 80 80 80 80
用户手机套餐表
标识 姓名 套餐 已用流量(M) 话费(元)
201 张超 A 100 100
202 王语 B 80 80
203 李斯 C 50 50
微信账号信息表
进一步假设:端口号为6377、地址为127.0.0.1的内存数据库存储有更新前的学生成绩表;端口号为6378,地址为127.0.0.1的内存数据库存储有更新前的用户手机套餐表;端口号为6379、地址为127.0.0.1的内存数据库中存储有更新前的微信账号信息表。
进一步假设:只有端口号为6379、地址为127.0.0.1的内存数据库需要同步微信账号信息表,其余内存数据库不需要进行数据的同步,则端口号为6379、地址为127.0.0.1的内存数据库需要将同步的微信账号信息表以及自身的端口号和地址发送到标识信息为synclient_111的同步客户端,标识信息为synclient_111的同步客户端将接收到的信息发送给同步服务器,同步服务器根据根据上述信息生成订阅信息,该订阅信息中包含端口号为6379、地址为127.0.0.1的内存数据库与表名称为微信账号信息表以及标识为synclient_111的同步客户端的对应关系。
物理数据库将更新后的微信账号信息表中的数据同步到端口号为6379、地址为127.0.0.1的内存数据库的过程,如图5所示,该过程可包括:
S501、物理数据库将更新后的学生成绩表、用户手机套餐表以及微信账号信息表的数据信息发送给数据处理器。
S502、数据处理器将接收到的更新后的学生成绩表、用户手机套餐表以及微信账号信息表的数据根据订阅信息中的表名称:微信账号信息表对接收的数据进行过滤,保留微信账号信息表中的数据,而将接收的其余的两个表:学生成绩表和用户手机套餐表的数据丢弃。
S503、数据处理器将保留的更新后的微信账号信息表中的数据发送到同步服务器。
S504、同步服务器根据订阅信息中的表名称:微信账号信息表查询所述订阅信息,得到标识为synclient_111的同步客户端订阅了该表。
S505、同步服务器根据订阅信息,将更新后的微信账号信息表中的数据发送给标识为synclient_111的同步客户端。
S506、标识为synclient_111的同步客户端将更新后的微信账号信息表的数据转换为键值对。
S507、同步客户端将根据订阅信息将转换得到的键值对同步到端口号为6379、地址为127.0.0.1的内存数据库中。
通过上述优选实施例提供的数据同步的方法,由同步服务器接收物理数据库发送的待同步数据,然后将接收到的待同步数据发送给同步客户端,并由同步客户端同步到目标内存数据库中;可以看出,不需要利用应用程序进行数据同步,也不需要通过应用程序将同步的数据转换成键值对的格式。因此,在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能保证物理数据库中的数据和内存数据中的数据一致,提高用户查询结果的准确性。另外,上述优选实施例中的数据处理器根据需要订阅的表的表名称:微信账号信息表,对接收的三个表中的数据进行过滤,从而还能够提高数据同步的速度。
基于相同的技术构思,本发明实施例还提供一种数据同步系统,该系统可以用于执行上述方法实施例。
如图6所示,为本发明实施例提供的一种数据同步的系统,包括:同步服务器61,同步客户端62,所述同步服务器61包括:
接收模块611,用于接收物理数据库发送的待同步数据。
其中,所述待同步数据是物理数据库发生数据更新后所发送的。
查询模块612,用于根据所述待同步数据的属性信息查询订阅信息,得到所述待同步数据对应的同步客户端以及目标内存数据库。其中,所述订阅信息是所述同步客户端预先订阅的,所述订阅信息包括:待同步数据的属性信息与同步客户端以及目标内存数据库的对应关系;
分发模块613,用于将所述待同步数据分发到所述待同步数据对应的同步客户端,以使所述待同步数据对应的同步客户端将所述待同步数据同步到所述待同步数据对应的目标内存数据库中。
优选地,还包括:数据处理器(未在图中示出),用于接收多个物理数据库发生数据更新后所发送更新后的数据,所述数据处理器与至少一个物理数据库连接。
优选地,所述数据处理器,还用于将接收到的数据发送给所述同步服务器61。
优选地,所述同步客户端62包括:
订阅模块621,用于向所述同步服务器发送订阅请求,所述订阅请求中携带需要订阅的数据的属性信息。
同步客户端62还包括:
同步模块622,用于在接收到所述同步服务器发送的所述待同步数据之后,将所述待同步数据转换为键值对,将转换得到的键值对同步到所述目标内存数据库中。
通过本发明实施例提供的一种数据同步的系统,由同步服务器接收物理数据库发送的待同步数据,然后将接收到的待同步数据发送给同步客户端,并由同步客户端同步到目标内存数据库中;可以看出,不需要利用应用程序进行数据同步,也不需要通过应用程序将同步的数据转换成键值对的格式。因此,在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能保证物理数据库中的数据和内存数据中的数据一致,提高用户查询结果的准确性。另外,本发明实施例中的数据处理器,能接收多个物理数据库发生更新后所发送的更新后的数据,从而还能够扩大同步数据的范围。
图7为本发明另一实施例提供的一种数据同步系统的示意图。
如图7所示,存储器710,用于接收物理数据库发送的待同步数据。其中,所述待同步数据是物理数据库发生数据更新后所发送的。
处理器720,用于根据所述待同步数据的属性信息查询订阅信息,得到所述待同步数据对应的同步客户端以及目标内存数据库。其中,所述订阅信息是所述同步客户端预先订阅的,所述订阅信息包括:待同步数据的属性信息与同步客户端以及目标内存数据库的对应关系;
处理器720,用于将所述待同步数据分发到所述待同步数据对应的同步客户端,以使所述待同步数据对应的同步客户端将所述待同步数据同步到所述待同步数据对应的目标内存数据库中。
优选地,所述存储器710,用于接收多个物理数据库发生数据更新后所发送更新后的数据,所述数据处理器与至少一个物理数据库连接。
优选地,处理器720,还用于将接收到的数据发送给所述同步服务器。
优选地,存储器710,用于向所述同步服务器发送订阅请求,所述订阅请求中携带所述需要订阅的数据的属性信息。处理器720,用于在接收到所述同步服务器发送的所述待同步数据之后,将所述待同步数据转换为键值对,将转换得到的键值对同步到所述目标内存数据库中。
其中,在图7中,总线构架可以包括任意数量的互联的总线和桥,具体由处理器720的一个或多个处理器和存储器710代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。处理器720负责管理总线架构和通常的处理,存储器710可以存储处理器720在执行操作时所使用的数据。针对不同的用户设备,用户接口740还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、扬声器、麦克风、操纵杆等。显示器730可以是CRT(CathodeRay Tube,阴极射线管)、PDP(Plasma Display Panel,等离子显示器)、DLP(Digital Light Procession,数字光处理)或LCD(Liquid Crystal Display,液晶显示屏)等显示装置。
综上,通过本发明实施例提供的一种数据同步的方法及系统,同步服务器首先接收物理数据库发送的待同步数据,然后根据待同步数据的属性信息查询订阅信息,得到待同步数据对应的同步客户端以及目标内存数据库,最后将待同步数据分发到待同步数据对应的同步客户端,以使待同步数据对应的同步客户端将待同步数据同步到待同步数据对应的目标内存数据库中,可以看出,本发明实施例中数据同步的方法及系统通过同步服务器接收物理数据库发送的待同步数据,即可将接收到的待同步数据发送给同步客户端,并由同步客户端同步到目标内存数据库中;不需要利用应用程序进行数据同步,也不需要通过应用程序将同步的数据转换成键值对的格式。因此,本发明实施例中的技术方案,在降低数据同步操作与应用程序的耦合度,提高系统的可扩展性的同时,还能保证物理数据库中的数据和内存数据中的数据一致,从而提高用户查询结果的准确性。另外,本发明实施例中的数据处理器,能接收多个物理数据库发生更新后所发送的更新后的数据,从而还能够扩大同步数据的范围。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种数据同步的方法,其特征在于,包括:
同步服务器接收物理数据库发送的待同步数据;
所述同步服务器根据所述待同步数据的属性信息查询订阅信息,得到所述待同步数据对应的同步客户端以及目标内存数据库;
所述同步服务器将所述待同步数据分发到所述待同步数据对应的同步客户端,以使所述待同步数据对应的同步客户端将所述待同步数据同步到所述待同步数据对应的目标内存数据库中。
2.如权利要求1所述的方法,其特征在于,所述同步服务器接收物理数据库发送的待同步数据,具体包括:
所述物理数据库发生数据更新,将更新后的数据发送给与其连接的数据处理器;
所述数据处理器将接收到的数据发送给所述同步服务器,所述数据处理器与至少一个物理数据库连接。
3.如权利要求2所述的方法,其特征在于,所述数据处理器将接收到的数据发送给所述同步服务器之前,还包括:
所述数据处理器根据需要订阅的数据的属性信息对接收到的数据进行过滤,得到所述待同步数据。
4.如权利要求1所述的方法,其特征在于,所述订阅信息的订阅过程包括:
所述同步客户端向所述同步服务器发送订阅请求,所述订阅请求中携带所述需要订阅的数据的属性信息。
5.如权利要求1所述的方法,其特征在于,所述同步服务器将所述待同步数据分发到所述待同步数据对应的同步客户端之后,还包括:
所述同步客户端将所述待同步数据转换为键值对;
所述同步客户端将转换得到的键值对同步到与其相对应的目标内存数据库中。
6.一种数据同步的系统,其特征在于,包括:同步服务器,同步客户端,所述同步服务器包括:
接收模块,用于接收物理数据库发送的待同步数据;
查询模块,用于根据所述待同步数据的属性信息查询订阅信息,得到所述待同步数据对应的同步客户端以及目标内存数据库;分发模块,用于将所述待同步数据分发到所述待同步数据对应的同步客户端,以使所述待同步数据对应的同步客户端将所述待同步数据同步到所述待同步数据对应的目标内存数据库中。
7.如权利要求6所述的系统,其特征在于,还包括:数据处理器,
所述物理数据库发生数据更新,将更新后的数据发送给与其连接的所述数据处理器;
所述数据处理器,用于将接收到的数据发送给所述同步服务器,所述数据处理器与至少一个物理数据库连接。
8.如权利要求6所述的系统,其特征在于,所述数据处理器,还用于:
将接收到的数据发送给所述同步服务器之前,根据需要订阅的数据的属性信息对接收到的数据进行过滤,得到所述待同步数据。
9.如权利要求6所述的系统,其特征在于,所述同步客户端包括:
订阅模块,用于向所述同步服务器发送订阅请求,所述订阅请求中携带所述需要订阅的数据的属性信息。
10.如权利要求6所述的系统,其特征在于,所述同步客户端包括:
同步模块,用于在接收到所述同步服务器发送的所述待同步数据之后,将所述待同步数据转换为键值对,将转换得到的键值对同步到与其相对应的目标内存数据库中。
CN201410438454.7A 2014-08-29 2014-08-29 一种数据同步的方法及系统 Pending CN104184822A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410438454.7A CN104184822A (zh) 2014-08-29 2014-08-29 一种数据同步的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410438454.7A CN104184822A (zh) 2014-08-29 2014-08-29 一种数据同步的方法及系统

Publications (1)

Publication Number Publication Date
CN104184822A true CN104184822A (zh) 2014-12-03

Family

ID=51965551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410438454.7A Pending CN104184822A (zh) 2014-08-29 2014-08-29 一种数据同步的方法及系统

Country Status (1)

Country Link
CN (1) CN104184822A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325037A (zh) * 2018-08-17 2019-02-12 中国平安人寿保险股份有限公司 一种针对海量数据的数据同步方法、存储介质和服务器
CN109857747A (zh) * 2018-12-18 2019-06-07 百度在线网络技术(北京)有限公司 数据同步更新方法、系统和计算机设备
CN111460038A (zh) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 一种数据准实时同步方法及装置
CN112000646A (zh) * 2020-08-25 2020-11-27 北京浪潮数据技术有限公司 一种数据库初始化方法、装置及电子设备和存储介质
CN113010602A (zh) * 2021-03-12 2021-06-22 北京三快在线科技有限公司 一种数据同步方法、装置及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101369283A (zh) * 2008-09-25 2009-02-18 中兴通讯股份有限公司 一种内存数据库与物理数据库间的数据同步方法及系统
CN101640587A (zh) * 2008-08-01 2010-02-03 华为技术有限公司 数据同步方法及装置
CN103020262A (zh) * 2012-12-24 2013-04-03 Tcl集团股份有限公司 一种数据存储方法、系统及数据存储设备
CN103327052A (zh) * 2012-03-22 2013-09-25 深圳市腾讯计算机系统有限公司 数据存储方法和系统以及数据访问方法和系统
CN103617295A (zh) * 2013-12-16 2014-03-05 北京锐安科技有限公司 一种地理信息矢量数据处理的方法和装置
CN103838844A (zh) * 2014-03-03 2014-06-04 珠海市君天电子科技有限公司 一种键值对数据存储、传输方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101640587A (zh) * 2008-08-01 2010-02-03 华为技术有限公司 数据同步方法及装置
CN101369283A (zh) * 2008-09-25 2009-02-18 中兴通讯股份有限公司 一种内存数据库与物理数据库间的数据同步方法及系统
CN103327052A (zh) * 2012-03-22 2013-09-25 深圳市腾讯计算机系统有限公司 数据存储方法和系统以及数据访问方法和系统
CN103020262A (zh) * 2012-12-24 2013-04-03 Tcl集团股份有限公司 一种数据存储方法、系统及数据存储设备
CN103617295A (zh) * 2013-12-16 2014-03-05 北京锐安科技有限公司 一种地理信息矢量数据处理的方法和装置
CN103838844A (zh) * 2014-03-03 2014-06-04 珠海市君天电子科技有限公司 一种键值对数据存储、传输方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
崔伟: "分布式系统中数据同步机制的研究与实现", 《计算机工程与设计》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325037A (zh) * 2018-08-17 2019-02-12 中国平安人寿保险股份有限公司 一种针对海量数据的数据同步方法、存储介质和服务器
CN109857747A (zh) * 2018-12-18 2019-06-07 百度在线网络技术(北京)有限公司 数据同步更新方法、系统和计算机设备
CN109857747B (zh) * 2018-12-18 2021-07-13 百度在线网络技术(北京)有限公司 数据同步更新方法、系统和计算机设备
CN111460038A (zh) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 一种数据准实时同步方法及装置
CN112000646A (zh) * 2020-08-25 2020-11-27 北京浪潮数据技术有限公司 一种数据库初始化方法、装置及电子设备和存储介质
CN112000646B (zh) * 2020-08-25 2022-08-02 北京浪潮数据技术有限公司 一种数据库初始化方法、装置及电子设备和存储介质
CN113010602A (zh) * 2021-03-12 2021-06-22 北京三快在线科技有限公司 一种数据同步方法、装置及系统

Similar Documents

Publication Publication Date Title
EP3534320A1 (en) Block chain-based multi-chain management method and system, electronic device, and storage medium
CN104184822A (zh) 一种数据同步的方法及系统
CN109408751B (zh) 一种数据处理方法、终端、服务器及存储介质
EP3547715B1 (en) Method and apparatus for reducing continuous-wakeup delay of bluetooth loudspeaker, and bluetooth loudspeaker
CN108322497A (zh) 跨终端数据传输方法、装置、客户端、服务器及系统
CN103294339A (zh) 图像显示装置及其控制方法
CN107656748B (zh) 应用发布的方法和装置
CN108073275A (zh) 信息处理方法、信息处理设备及程序产品
US20150049901A1 (en) Method and electronic device for controlling content integrity
US20150356112A1 (en) Method and electronic device for processing data
US20230385080A1 (en) Method and apparatus for presenting information on lock screen interface, terminal, and storage medium
CN113194450B (zh) 蓝牙设备管理方法及装置
CN112837155B (zh) 区块链中智能合约的注册、执行方法和装置
CN109753353B (zh) 虚拟机资源分配方法、装置及电子设备
KR20160012572A (ko) 데이터 운용 방법 및 전자 장치
CN105843752A (zh) 分配移动终端内存缓存图片数据方法及装置
CN112380411B (zh) 敏感词处理方法、装置、电子设备、系统及存储介质
WO2019024643A1 (zh) 数据同步管控方法、装置及电子设备
CN109446297A (zh) 信息处理方法、信息处理设备以及设备可读介质
CN109298956A (zh) 文件传输方法、装置及终端设备
EP2793124A1 (en) Device and method for generating application model based on layered structure
CN114840576A (zh) 数据标准匹配方法及装置
CN105868024A (zh) 分配移动终端外置卡空间缓存图片方法及装置
CN106130869A (zh) 一种语音签到实现方法、系统及装置
CN106528337B (zh) 数据的备份方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20151012

Address after: 266071 Laoshan, Qingdao province Hongkong District No. East Road, room 248, room 131

Applicant after: Qingdao Hisense Media Networks Co., Ltd.

Address before: 100176, room 6, building 25, No. four, No. 201, Hai Lu, Daxing District economic and Technological Development Zone, Beijing, China

Applicant before: Sea view (Beijing) Technology Co., Ltd.

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20170109

Address after: 266000 Shandong Province, Qingdao city Laoshan District Songling Road No. 399

Applicant after: Poly Polytron Technologies Inc

Address before: 266071 Laoshan, Qingdao province Hongkong District No. East Road, room 248, room 131

Applicant before: Hisense Media Networks Co., Ltd.

RJ01 Rejection of invention patent application after publication

Application publication date: 20141203

RJ01 Rejection of invention patent application after publication