CN108268497A - 关系型数据库的数据同步方法及装置 - Google Patents

关系型数据库的数据同步方法及装置 Download PDF

Info

Publication number
CN108268497A
CN108268497A CN201611261471.3A CN201611261471A CN108268497A CN 108268497 A CN108268497 A CN 108268497A CN 201611261471 A CN201611261471 A CN 201611261471A CN 108268497 A CN108268497 A CN 108268497A
Authority
CN
China
Prior art keywords
data
synchronized
relevant database
buffer memory
memory space
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
CN201611261471.3A
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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum 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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201611261471.3A priority Critical patent/CN108268497A/zh
Publication of CN108268497A publication Critical patent/CN108268497A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • G06F16/2386Bulk updating operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种关系型数据库的数据同步方法及装置。该方法包括:接收待处理数据,并将待处理数据存储至预设缓存空间中;当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;从批量提取到的数据中确定待同步数据;以及将待同步数据同步至关系型数据库中。通过本发明,解决了相关技术中系统的批处理能力较低的问题。

Description

关系型数据库的数据同步方法及装置
技术领域
本发明涉及数据库技术领域,具体而言,涉及一种关系型数据库的数据同步方法及装置。
背景技术
随着大数据深度应用,批处理能力和高并发能力已成为系统性能中重要的指标之一。关系型数据在应用中扮演着不可或缺的角色,然而对于关系型数据库,在批处理和高并发方面与大数据分布式集群系统相比,显得相对滞后。对于非实时或者实时性要求不高的场景,通常直接连接数据库并进行数据存储操作,在高并发分布式作业系统中,这种处理则会遇到各种死锁以及连接超时。另一种则是通过消息队列的方式异步的进行数据的处理,在处理能力和并发量得到提高的同时,这需要系统具有很高的容错性能力。也即存在以下问题:批处理的性能问题、高并发能力、异步快速响应的能力和容错能力等等。为了解决以上问题,相关技术中提供了一种直接存储方案,各个子系统直接连接数据库进行数据的CRUD操作,该方案在应对高并发、批处理、异步以及容错性方面有一套很成熟的方案。例如:分库和分表,分布式锁、OPS(每秒操作数)和设计快速响应的API等手段达到高效的数据处理能力和并发能力。然而,直接存储方案也具有以下缺点:系统的批处理能力,受限于单次请求,当小批量的请求很多且很频繁时,会给数据库造成非常大压力。
针对相关技术中系统的批处理能力较低的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种关系型数据库的数据同步方法及装置,以解决相关技术中系统的批处理能力较低的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种关系型数据库的数据同步方法。该方法包括:接收待处理数据,并将待处理数据存储至预设缓存空间中;当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;从批量提取到的数据中确定待同步数据;以及将待同步数据同步至关系型数据库中。
进一步地,从预设缓存空间中批量提取数据包括:确定预设业务需求;根据预设业务需求确定数据的属性信息;根据数据的属性信息从预设缓存空间中批量提取数据。
进一步地,从批量提取到的数据中确定待同步数据包括:从关系型数据库中查找与数据的属性信息匹配的数据,得到原始数据;将批量提取到的数据与原始数据进行比较,确定批量提取到的数据中与原始数据不相同的数据;以及将批量提取到的数据中与原始数据不相同的数据确定为待同步数据。
进一步地,将待同步数据同步至关系型数据库中包括:将待同步数据同步插入至关系型数据库;以及删除关系型数据库中与批量提取到的数据不相同的数据。
进一步地,接收待处理数据包括:通过协议层预先定义的预设接口获取待处理数据;将待处理数据存储至预设缓存空间中包括:基于预设缓存空间集群同步待处理数据,其中,预设缓存空间集群为Redis集群。
为了实现上述目的,根据本发明的另一方面,提供了一种关系型数据库的数据同步装置。该装置包括:接收单元,用于接收待处理数据,并将待处理数据存储至预设缓存空间中;提取单元,用于当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;确定单元,用于从批量提取到的数据中确定待同步数据;以及同步单元,用于将待同步数据同步至关系型数据库中。
进一步地,提取单元包括:第一确定模块,用于确定预设业务需求;第二确定模块,用于根据预设业务需求确定数据的属性信息;提取模块,用于根据数据的属性信息从预设缓存空间中批量提取数据。
进一步地,确定单元包括:查找模块,用于从关系型数据库中查找与数据的属性信息匹配的数据,得到原始数据;第三确定模块,用于将批量提取到的数据与原始数据进行比较,确定批量提取到的数据中与原始数据不相同的数据;以及第四确定模块,用于将批量提取到的数据中与原始数据不相同的数据确定为待同步数据。
进一步地,同步单元包括:插入模块,用于将待同步数据同步插入至关系型数据库;以及删除模块,用于删除关系型数据库中与批量提取到的数据不相同的数据。
进一步地,接收单元还用于通过协议层预先定义的预设接口获取待处理数据;基于预设缓存空间集群同步待处理数据,其中,预设缓存空间集群为Redis集群。
通过本发明,采用以下步骤:接收待处理数据,并将待处理数据存储至预设缓存空间中;当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;从批量提取到的数据中确定待同步数据;以及将待同步数据同步至关系型数据库中,解决了相关技术中系统的批处理能力较低的问题。也即对待处理数据存储至关系型数据库进行了一定时间的延迟,按照预设时间周期从预设缓存空间中批量提取数据,对其进行处理,然后再批量存储在关系型数据库中,从而达到了提升系统的批量处理能力的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的关系型数据库的数据同步方法的流程图;以及
图2是根据本发明实施例的关系型数据库的数据同步装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于描述,以下对本申请实施例涉及的部分名词或术语进行说明:
CURD:指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写,主要被用在描述软件系统中数据库或者持久层的基本操作功能。CURD定义了用于处理数据的基本原子操作。之所以将CURD提升到一个技术难题的高度是因为完成一个涉及在多个数据库系统中进行CRUD操作的汇总相关的活动,其性能可能会随数据关系的变化而有非常大的差异。CURD操作通常是使用关系型数据库系统中的结构化查询语言(Structured Query Language,SQL)完成的。随着Web变得更加具有面向数据特性,因此需要从基于SQL的CURD操作转移到基于语义Web的CURD操作。
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。
RESTful是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
缓存(对应本申请中的预设缓存空间)就是数据交换的缓冲区(称作Cache),当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找。由于缓存的运行速度比内存快得多,故缓存的作用就是帮助硬件更快地运行。因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在用完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或者32M的缓存。
图1是根据本发明实施例的关系型数据库的数据同步方法的流程图。如图1所示,该方法包括以下步骤:
步骤S101,接收待处理数据,并将待处理数据存储至预设缓存空间中。
由于预设缓存空间作为数据交互的缓冲区,在预设缓存空间中运行速度较快。为了提高系统单次请求数据的响应速度,通过开放的接口(预设接口),将推送过来的数据实时的保存在高可靠的分布式预设缓存空间中,也即将通过预设接口获取到的待处理数据存储至预设缓存空间中。
需要说明的是,本申请中涉及的待处理数据可以为业务处理过程中的数据,例如,为每一个用户生成一个任务,各个任务携带一份数据,将任务携带的数据就作为待处理数据。
可选地,在本发明实施例提供的关系型数据库的数据同步方法中,接收待处理数据包括:通过协议层预先定义的预设接口获取待处理数据;将待处理数据存储至预设缓存空间中包括:基于预设缓存空间集群同步待处理数据,其中,预设缓存空间集群为Redis集群。
在接收待处理数据之前,首先判断待处理数据是否符合预设条件,例如,该预设条件为数据格式,也即判断待处理数据的格式是否符合预设的数据格式,在待处理数据的格式符合预设的数据格式的情况下,通过协议层预先定义的预设接口接收待处理数据。需要说明的是,在协议层定义了对外公开的标准服务和接口(对应预设接口),通信方式可以采用RESTful风格的HTTP协议和基于TcpRPC通信框架。外部调用可以根据Http或RPC客户端调用服务。
将待处理数据存储至预设缓存空间中可以基于外部的第三方高可靠预设缓存空间集群(例如:Redis集群)进行数据的存储。需要说明的是,将待处理数据存储至预设缓存空间中供内部系统使用,外部系统无法使用,通过将协议层转发过来的请求数据存储的操作转化为实际的业务存储操作,根据待处理数据直接对预设缓存空间中的数据进行CRUD操作,并快速的响应请求结果,由于预设缓存空间是基于内存的,处理效率远远高于关系型数据库。所以响应请求的能力也会大大增强。
步骤S102,当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求。
如果在预设时间周期内存在多次请求数据,在本申请中将预设时间周期内的多次数据请求合并为集中提取一次数据,也即当接收到数据同步请求时,从预设缓存空间中批量提取数据,对系统而言,对数据进行批量处理,从而实现高效的批处理能力。
可选地,在本发明实施例提供的关系型数据库的数据同步方法中,从预设缓存空间中批量提取数据包括:确定预设业务需求;根据预设业务需求确定数据的属性信息;根据数据的属性信息从预设缓存空间中批量提取数据。
根据系统设置的时间间隔(预设时间周期),定时的发起数据同步请求,系统可以根据具体的业务场景,确定同步那些数据,并将这些数据的描述信息封装成同步请求对象,根据同步请求对象从预设缓存空间中获取相应的数据,得到批量提取到的数据。
步骤S103,从批量提取到的数据中确定待同步数据。
具有多种方式从批量提取到的数据中确定待同步数据,例如,从批量提取到的数据中获取满足预设条件的数据作为待同步数据。
可选地,在本发明实施例提供的关系型数据库的数据同步方法中,从批量提取到的数据中确定待同步数据包括:从关系型数据库中查找与数据的属性信息匹配的数据,得到原始数据;将批量提取到的数据与原始数据进行比较,确定批量提取到的数据中与原始数据不相同的数据;以及将批量提取到的数据中与原始数据不相同的数据确定为待同步数据。
例如,通过根据数据的属性信息(也可为数据的描述信息)从关系型数据库中提取出相应的数据,将从关系型数据库中提取到的数据与从预设缓存空间中提取到的批量数据进行比较,例如,从关系型数据库中提取出相应的数据为任务A下的多个子任务的数据以及状态(原始数据),从预设缓存空间中提取到的批量数据包含任务A下的多个子任务的数据以及状态,如果关系型数据库中的任务A下的多个子任务的数据以及状态与预设缓存空间中的任务A下的多个子任务的数据以及状态不相同(批量提取到的数据),将批量提取到的数据中与原始数据不相同的数据确定为待同步数据。再例如,如果预设缓存空间中存储的某些数据在关系数据库中不存在,直接确定那些数据为待同步数据。
步骤S104,将待同步数据同步至关系型数据库中。
将待同步数据异步的并发的更新到关系型数据库中。也即,并将待同步数据批量的同步至关系型数据库中。
可选地,在本发明实施例提供的关系型数据库的数据同步方法中,将待同步数据同步至关系型数据库中包括:将待同步数据同步插入至关系型数据库;以及删除关系型数据库中与批量提取到的数据不相同的数据。
例如,从预设缓存空间中提取到的批量数据包含任务A下的多个子任务的数据以及状态,如果关系型数据库中的任务A下的多个子任务的数据以及状态与预设缓存空间中的任务A下的多个子任务的数据以及状态不相同,确定关系型数据库中的任务A下的多个子任务的数据以及状态发生变化,将预设缓存空间中的任务A下的多个子任务的数据以及状态存储至关系型数据库中,并将关系型数据库中原始的任务A下的多个子任务的数据以及状态进行删除。
通过上述公开的内容,通过将预定时间段内多次请求合并后进行集中处理。在本申请中引入预设缓存空间,大大提高单次请求的响应速度。在将数据存储至关系数据库时,如果某次数据同步失败,仅仅造成数据状态延迟,下次同步时,该状态会和预设缓存空间保持一致。
本发明实施例提供的关系型数据库的数据同步方法,通过接收待处理数据,并将待处理数据存储至预设缓存空间中;当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;从批量提取到的数据中确定待同步数据;以及将待同步数据同步至关系型数据库中,解决了相关技术中系统的批处理能力较低的问题。也即对待处理数据存储至关系型数据库进行了一定时间的延迟,按照预设时间周期从预设缓存空间中批量提取数据,对其进行处理,然后再批量存储在关系型数据库中,从而达到了提升系统的批量处理能力的效果。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例还提供了一种关系型数据库的数据同步装置,需要说明的是,本发明实施例的关系型数据库的数据同步装置可以用于执行本发明实施例所提供的用于关系型数据库的数据同步方法。以下对本发明实施例提供的关系型数据库的数据同步装置进行介绍。
图2是根据本发明实施例的关系型数据库的数据同步装置的示意图。如图2所示,该装置包括:接收单元10、提取单元20、确定单元30和同步单元40。
具体地,接收单元10,用于接收待处理数据,并将待处理数据存储至预设缓存空间中。
提取单元20,用于当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求。
确定单元30,用于从批量提取到的数据中确定待同步数据。
同步单元40,用于将待同步数据同步至关系型数据库中。
本发明实施例提供的关系型数据库的数据同步装置,通过接收单元10接收待处理数据,并将待处理数据存储至预设缓存空间中;提取单元20当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;确定单元30从批量提取到的数据中确定待同步数据;以及同步单元40将待同步数据同步至关系型数据库中,解决了相关技术中系统的批处理能力较低的问题。也即对对待处理数据存储至关系型数据库进行了一定时间的延迟,按照预设时间周期从预设缓存空间中批量提取数据,对其进行处理,然后再批量存储在关系型数据库中,从而达到了提升系统的批量处理能力的效果。
可选地,在本发明实施例提供的关系型数据库的数据同步装置中,提取单元20包括:第一确定模块,用于确定预设业务需求;第二确定模块,用于根据预设业务需求确定数据的属性信息;提取模块,用于根据数据的属性信息从预设缓存空间中批量提取数据。
可选地,在本发明实施例提供的关系型数据库的数据同步装置中,确定单元30包括:查找模块,用于从关系型数据库中查找与数据的属性信息匹配的数据,得到原始数据;第三确定模块,用于将批量提取到的数据与原始数据进行比较,确定批量提取到的数据中与原始数据不相同的数据;以及第四确定模块,用于将批量提取到的数据中与原始数据不相同的数据确定为待同步数据。
可选地,在本发明实施例提供的关系型数据库的数据同步装置中,同步单元40包括:插入模块,用于将待同步数据同步插入至关系型数据库;以及删除模块,用于删除关系型数据库中与批量提取到的数据不相同的数据。
可选地,在本发明实施例提供的关系型数据库的数据同步装置中,接收单元10还用于通过协议层预先定义的预设接口获取待处理数据;基于预设缓存空间集群同步待处理数据,其中,预设缓存空间集群为Redis集群。
所述关系型数据库的数据同步装置包括处理器和存储器,上述接收单元10、提取单元20、确定单元30和同步单元40等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元实现相应功能。上述预设时间周期、预设业务需求都可以存储在存储器中。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数存储关系型数据库。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请还提供了一种计算机程序产品的实施例,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:接收待处理数据,并将待处理数据存储至预设缓存空间中;当接收到数据同步请求时,从预设缓存空间中批量提取数据,其中,数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;从批量提取到的数据中确定待同步数据;以及将待同步数据同步至关系型数据库中。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种关系型数据库的数据同步方法,其特征在于,包括:
接收待处理数据,并将所述待处理数据存储至预设缓存空间中;
当接收到数据同步请求时,从所述预设缓存空间中批量提取数据,其中,所述数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;
从批量提取到的数据中确定待同步数据;以及
将所述待同步数据同步至关系型数据库中。
2.根据权利要求1所述的方法,其特征在于,从所述预设缓存空间中批量提取数据包括:
确定预设业务需求;
根据所述预设业务需求确定数据的属性信息;
根据所述数据的属性信息从所述预设缓存空间中批量提取数据。
3.根据权利要求2所述的方法,其特征在于,从批量提取到的数据中确定待同步数据包括:
从所述关系型数据库中查找与所述数据的属性信息匹配的数据,得到原始数据;
将所述批量提取到的数据与所述原始数据进行比较,确定所述批量提取到的数据中与所述原始数据不相同的数据;以及
将所述批量提取到的数据中与所述原始数据不相同的数据确定为所述待同步数据。
4.根据权利要求3所述的方法,其特征在于,将所述待同步数据同步至关系型数据库中包括:
将所述待同步数据同步插入至所述关系型数据库;以及
删除所述关系型数据库中与所述批量提取到的数据不相同的数据。
5.根据权利要求1所述的方法,其特征在于,
接收待处理数据包括:通过协议层预先定义的预设接口获取所述待处理数据;
将所述待处理数据存储至预设缓存空间中包括:基于预设缓存空间集群同步所述待处理数据,其中,所述预设缓存空间集群为Redis集群。
6.一种关系型数据库的数据同步装置,其特征在于,包括:
接收单元,用于接收待处理数据,并将所述待处理数据存储至预设缓存空间中;
提取单元,用于当接收到数据同步请求时,从所述预设缓存空间中批量提取数据,其中,所述数据同步请求为按照预设时间周期发出的将数据同步至关系型数据库中的请求;
确定单元,用于从批量提取到的数据中确定待同步数据;以及
同步单元,用于将所述待同步数据同步至关系型数据库中。
7.根据权利要求6所述的装置,其特征在于,所述提取单元包括:
第一确定模块,用于确定预设业务需求;
第二确定模块,用于根据所述预设业务需求确定数据的属性信息;
提取模块,用于根据所述数据的属性信息从所述预设缓存空间中批量提取数据。
8.根据权利要求7所述的装置,其特征在于,所述确定单元包括:
查找模块,用于从所述关系型数据库中查找与所述数据的属性信息匹配的数据,得到原始数据;
第三确定模块,用于将所述批量提取到的数据与所述原始数据进行比较,确定所述批量提取到的数据中与所述原始数据不相同的数据;以及
第四确定模块,用于将所述批量提取到的数据中与所述原始数据不相同的数据确定为所述待同步数据。
9.根据权利要求8所述的装置,其特征在于,所述同步单元包括:
插入模块,用于将所述待同步数据同步插入至所述关系型数据库;以及
删除模块,用于删除所述关系型数据库中与所述批量提取到的数据不相同的数据。
10.根据权利要求6所述的装置,其特征在于,
所述接收单元还用于通过协议层预先定义的预设接口获取所述待处理数据;基于预设缓存空间集群同步所述待处理数据,其中,所述预设缓存空间集群为Redis集群。
CN201611261471.3A 2016-12-30 2016-12-30 关系型数据库的数据同步方法及装置 Pending CN108268497A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611261471.3A CN108268497A (zh) 2016-12-30 2016-12-30 关系型数据库的数据同步方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611261471.3A CN108268497A (zh) 2016-12-30 2016-12-30 关系型数据库的数据同步方法及装置

Publications (1)

Publication Number Publication Date
CN108268497A true CN108268497A (zh) 2018-07-10

Family

ID=62754960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611261471.3A Pending CN108268497A (zh) 2016-12-30 2016-12-30 关系型数据库的数据同步方法及装置

Country Status (1)

Country Link
CN (1) CN108268497A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110134690A (zh) * 2019-05-16 2019-08-16 鸿鹏新能源科技有限公司 Oracle数据库超大数据快速存储方法及系统
CN110928887A (zh) * 2018-09-19 2020-03-27 北京国双科技有限公司 一种数据处理方法及装置
CN110990435A (zh) * 2019-12-03 2020-04-10 秒针信息技术有限公司 数据同步方法、装置和计算机可读存储介质
CN109992614B (zh) * 2018-11-14 2023-05-30 创新先进技术有限公司 数据获取方法、装置和服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101398088B1 (ko) * 2012-11-15 2014-06-02 (주)위메이드엔터테인먼트 온라인 게임에서의 데이터 관리 방법 및 데이터 관리 시스템을 포함하는 게임 서버 및 기록매체
CN105868361A (zh) * 2016-03-29 2016-08-17 中国银行股份有限公司 一种数据更新方法和装置
CN106031827A (zh) * 2015-03-18 2016-10-19 广州四三九九信息科技有限公司 基于redis的游戏服务器数据存储、读取方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101398088B1 (ko) * 2012-11-15 2014-06-02 (주)위메이드엔터테인먼트 온라인 게임에서의 데이터 관리 방법 및 데이터 관리 시스템을 포함하는 게임 서버 및 기록매체
CN106031827A (zh) * 2015-03-18 2016-10-19 广州四三九九信息科技有限公司 基于redis的游戏服务器数据存储、读取方法及系统
CN105868361A (zh) * 2016-03-29 2016-08-17 中国银行股份有限公司 一种数据更新方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928887A (zh) * 2018-09-19 2020-03-27 北京国双科技有限公司 一种数据处理方法及装置
CN109992614B (zh) * 2018-11-14 2023-05-30 创新先进技术有限公司 数据获取方法、装置和服务器
CN110134690A (zh) * 2019-05-16 2019-08-16 鸿鹏新能源科技有限公司 Oracle数据库超大数据快速存储方法及系统
CN110990435A (zh) * 2019-12-03 2020-04-10 秒针信息技术有限公司 数据同步方法、装置和计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN110569311B (zh) 一种数据库的数据同步方法、设备和计算机存储介质
CN104809202B (zh) 一种数据库同步的方法和装置
CN104601696B (zh) 服务处理方法、服务调用系统、装置和系统
CN103020257B (zh) 数据操作的实现方法和装置
CN108268497A (zh) 关系型数据库的数据同步方法及装置
CN102130838B (zh) 一种基于阿瑞斯协议的对等网络缓存系统的实现方法
CN104809201A (zh) 一种数据库同步的方法和装置
CN104866339B (zh) Fota数据的分布式持久化管理方法、系统和装置
US11269684B1 (en) Distributed streaming system supporting real-time sliding windows
CN104809200A (zh) 一种数据库同步的方法和装置
CN110784498B (zh) 一种个性化数据容灾方法及装置
CN110110006A (zh) 数据管理方法及相关产品
CN110399348A (zh) 文件重删方法、装置、系统及计算机可读存储介质
JP2012234333A (ja) クラスタシステム、同期制御方法、サーバ装置および同期制御プログラム
CN107346270A (zh) 基于实时计算的基数估计的方法和系统
CN107181773A (zh) 分布式存储系统的数据存储及数据管理方法、设备
CN110119396B (zh) 数据管理方法及相关产品
CN114490527A (zh) 元数据检索方法、系统、终端及存储介质
CN106603610A (zh) 一种数据获取方法及装置
CN110008284A (zh) 基于数据页预加载及回滚的数据库数据同步方法及设备
CN115104295A (zh) 数据处理方法、装置、电子装置及存储介质
CN115510016A (zh) 一种基于目录分片的客户端应答方法、装置及介质
CN106210038B (zh) 数据操作请求的处理方法及系统
CN107526530B (zh) 数据处理方法和设备
CN112463748A (zh) 一种存储系统文件锁标识方法、系统、终端及存储介质

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
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20180710

RJ01 Rejection of invention patent application after publication