CN110795496B - 数据同步方法、装置及系统 - Google Patents
数据同步方法、装置及系统 Download PDFInfo
- Publication number
- CN110795496B CN110795496B CN201810873419.6A CN201810873419A CN110795496B CN 110795496 B CN110795496 B CN 110795496B CN 201810873419 A CN201810873419 A CN 201810873419A CN 110795496 B CN110795496 B CN 110795496B
- Authority
- CN
- China
- Prior art keywords
- data
- channel
- client device
- type
- full
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种数据同步方法、装置及系统。其中,该方法包括:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据所述通道类型确定数据读取方式,按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。本申请解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种数据同步方法、装置及系统。
背景技术
目前,数据库之间通常通过全量数据同步、增量数据同步、全量增量结合同步的方式,实现数据同步,由于全量数据同步与增量数据同步在数据读取方式、数据格式等方面,存在一些差异,因此,现有的各种数据库产品在实现全量数据同步和增量数据同步过程中,往往采用不同的实现方案。
例如,对于全量数据同步需要使用全量数据通道,对于增量数据同步需要使用增量数据通道,对于全量增量结合的同步场景,需要先记录当前的时间或者表中增量数据的位置,再使用全量数据通道同步全量数据,在全量数据完成后使用增量数据通道从之前记录的时间点或者增量位置开始同步增量数据。
但是,上述现有的数据同步方式中,对于不同的同步场景需要使用不同的数据通道;且全量增量结合的同步场景中,同步流程较复杂,无法实现从全量数据同步流程自动转到增量数据同步流程;此外,由于全量数据通道中的数据格式与增量数据通道中的数据格式存在差别,业务方需要处理两种数据格式的数据。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种数据同步方法、装置及系统,以至少解决现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
根据本申请实施例的一个方面,提供了一种数据同步方法,包括:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
根据本申请实施例的另一方面,还提供了一种数据同步方法,包括:接收客户端设备的数据请求;确定上述数据请求所请求数据的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定与上述通道类型对应的数据读取方式,其中,上述数据读取方式包括:增量方式和全量方式;按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
根据本申请实施例的另一方面,还提供了一种数据同步方法,包括:确定客户端设备的数据同步类型,其中,该数据同步类型包括以下之一:用于指示全量数据同步的第一类型、用于指示增量数据同步的第二类型、用于指示全量数据和增量数据同步的第三类型;通过指定数据通道从预设数据库中获取与上述数据同步类型对应的数据,其中,上述指定数据通道支持不同数据同步类型对应的数据的传输;将获取的数据转换为指定格式的数据,并将上述指定格式的数据发送至上述客户端设备。
根据本申请实施例的另一方面,还提供了一种数据同步系统,包括:客户端设备,用于调用通道服务模块提供的接口向分布式存储数据库模块请求同步数据;上述通道服务模块,与上述客户端设备连接,用于提供供上述客户端设备调用的接口,并基于上述客户端设备的调用对数据同步类型进行管理;分布式数据库模块,用于提供向上述客户端设备提供的同步数据。
根据本申请实施例的另一方面,还提供了一种数据同步装置,包括:接收模块,用于接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;确定模块,用于依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;读取模块,用于依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
根据本申请实施例的另一方面,还提供了一种存储介质,上述存储介质包括存储的程序,其中,在上述程序运行时控制上述存储介质所在设备执行以下步骤:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
根据本申请实施例的另一方面,还提供了一种计算设备,包括:处理器,上述处理器用于运行程序,其中,在上述程序运行时执行以下步骤:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
根据本申请实施例的另一方面,还提供了一种数据同步系统,包括:处理器;以及存储器,与上述处理器连接,用于为上述处理器提供处理以下处理步骤的指令:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
在本申请实施例中,在接收客户端设备的第一请求之后,依据第一请求中携带通道ID确定通道类型,再依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
容易注意到的是,本申请实施例可以应用于各种数据同步场景中,通过提供支持全量、增量、全量增量结合的数据同步需求的数据通道服务,对于不同的同步场景无需使用不同的数据通道服务,达到了通过同一数据通道服务,实现不同类型的数据同步的目的,从而实现了简化数据同步流程,提高数据同步效率的技术效果。
由此,本申请实施例解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种用于实现数据同步方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本申请实施例的一种数据同步方法的流程图;
图3是根据本申请实施例的一种可选的数据同步方法的应用场景示意图;
图4a是根据本申请实施例的一种可选的数据同步方法的交互示意图;
图4b是根据本申请实施例的一种可选的数据同步方法的流程图;
图5是根据本申请实施例的一种可选的数据同步方法的流程图;
图6是根据本申请实施例的一种可选的数据同步方法的流程图;
图7是根据本申请实施例的一种可选的数据同步方法的流程图;
图8是根据本申请实施例的一种可选的数据同步方法的流程图;
图9是根据本申请实施例的另一种数据同步方法的流程图;
图10是根据本申请实施例的又一种数据同步方法的流程图;
图11是根据本申请实施例的一种数据同步系统的结构示意图;
图12是根据本申请实施例的一种数据同步装置的结构示意图;
图13是根据本申请实施例的另一种数据同步装置的结构示意图;
图14是根据本申请实施例的又一种数据同步装置的结构示意图;以及
图15是根据本申请实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
表格存储(TableStore):可以是一种可提供海量结构化数据的存储和实时访问功能的分布式NoSQL数据库,可以但不限于通过数据分片和负载均衡技术,达到规模的无缝扩展。
数据分片(partition):表格存储中一个表的数据可以按照数据范围切分为许多个数据分片,数据分片可以分布在不同的机器上以实现负载均衡和规模的横向扩展。其中,每个数据分片包含连续一段主键范围的数据,当一个数据分片的数据量或访问量超过一定阈值时,会触发该数据分片(父数据分片)分裂,分裂为两个子数据分片,各包含父数据分片数据范围内的一部分数据,并且,分裂后数据会按照新分片的数据范围写入新的分片,不再写入旧的分片。
提交日志(commit log):在数据库系统中,一次操作或事务在数据库系统中被提交,则称为一次提交(commit),提交日志是对这些提交操作的日志记录,包含操作类型、数据以及一些其他信息,操作类型包括新增、更新和删除,提交日志可以追踪哪些操作在数据库系统中被应用,以及这些操作发生的顺序,因此,可用于故障恢复、数据同步等。其中,在表格存储中,每个分片拥有自己独立的提交日志。
表格存储流(TableStore Stream):可以用于获取表格存储表中的增量数据,其提供了API接口读取各个数据分片的提交日志数据,并组织成一定的格式返回给用户。
全量数据:针对一个数据表而言,全量数据为数据表中所有的数据。
增量数据:针对一个数据表而言,增量数据为在上次数据同步之后更新的数据,例如,在上次数据同步之后新增、更新、删除的数据。
通道:源端设备为目的端设备提供用于数据传输的API接口,目的端设备通过调用该API接口可以从源端设备获取数据,从而实现源端设备和目的端设备之间的数据传输通道,根据该API接口实现的通道可以根据所传输数据的数据类型不同划分为不同的通道类型,例如,通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道。
实施例1
根据本申请实施例,提供了一种数据同步方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例1所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现数据同步方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据同步方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据同步方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
本申请实施例提供了一种可以但不限于应用在分布式数据库中,实现数据通道全量数据同步和增量数据同步一体化的数据同步方法,其中,数据库之间的全量数据同步和增量数据同步是一种非常重要的需求,有广泛的应用场景:
全量数据同步:是指读取一个数据库系统的数据表中的全量数据,同步到另一数据库系统中。一般情况下,采用数据库的范围查询(GetRange)接口实现读取全量数据的功能。
增量数据同步:是指读取一个数据库系统的数据表中的增量数据(例如,最近一小时新写入的数据),同步到另一数据库系统中。一般情况下,可以通过读取数据库的提交日志实现数据库的增量同步,一些数据库也提供了相应的读取接口,比如表格存储的GetStreamRecords接口。
需要说明的是,增量数据与全量数据在数据格式上存在一些区别,其中,增量数据实际上是数据表中数据的更新记录,包括:操作类型和数据,操作类型可以为新增、更新、删除等。
全量数据和增量数据结合同步:通常情况下,很多的数据同步场景中需要先把一个数据库系统的数据表中的全量数据同步到另一数据库系统中,然后再开启增量同步,不断的将数据表中数据的最新的更新记录同步到另一数据库系统中。其中,由于在全量数据同步过程中数据可能仍在不断写入数据表中,为了避免漏掉这些新增数据,增量数据同步需要从全量数据同步开始前的时间点开始。
在上述运行环境下,本申请提供了如图2所示的一种数据同步方法。该方法的执行主体可以是服务器、客户端设备,通道服务模块(Tunnel Service)可以作为一个中间件或应用运行于上述硬件设备中,其中,该通道服务模块可以提供供客户端设备调用的接口,以及基于上述客户端设备的调用对数据同步类型进行管理。
图2是根据本申请实施例的一种数据同步方法的流程图,如图2所示,该方法可以包括如下步骤:
步骤S202,接收客户端设备的第一请求,其中,该第一请求中携带有通道标识ID。
在一种可选的实施例中,上述第一请求中还可以但不限于携带有以下字段信息:通道ID、客户端设备ID、上述第一请求所读取数据的读取位置。
在一种可选的实施例中,本申请实施例可以但不限于通过通道服务模块的ReadRecords接口(即,读取数据接口)接收上述第一请求;该ReadRecords接口为一种API接口,其作用为读取数据;该ReadRecords接口的请求参数可以为上述第一请求中携带的字段信息;该ReadRecords接口的响应参数可以为:上述第一请求所读取到的数据,全量数据和增量数据采用统一的数据格式;上述第一请求下一次读取数据的读取位置。
本申请实施例提供了一种数据同步方法的应用场景实施例,图3是根据本申请实施例的一种可选的数据同步方法的应用场景示意图,上述数据同步方法可以在如图3所示的数据同步系统中运行或实施,其中,上述数据同步系统包括:客户端设备302、通道服务模块304、分布式数据库模块306,其中:
客户端设备302,用于调用通道服务模块提供的接口向分布式存储数据库模块请求同步数据;上述通道服务模块304,与上述客户端设备302连接,用于提供供上述客户端设备调用的接口,并基于上述客户端设备的调用对数据同步类型进行管理;分布式数据库模块306,用于提供向上述客户端设备提供的同步数据。
在上述可选的实施例中,客户端设备302向通道服务模块304读取数据,是数据通道的客户端(TunnelClient)。如图3所示,上述数据同步系统中的客户端设备302可以为一个或多个,其数量并不限于图3中的示意性列举的数量,上述数据同步系统还可包括比图3中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图3所示不同的配置。
在一种可选的实施例中,上述通道服务模块304为数据通道的服务端,可以作为一个中间件或应用运行于服务器、客户端设备等硬件设备中,在用户需要使用数据通道的情况下,首先可以在上述通道服务模块中创建对应的通道,通道类型可以为支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道。并且,通道服务模块304可以根据不同的通道类型,以及当前数据同步的进度,确定从上述分布式数据库模块中读取增量数据还是全量数据,并管理数据同步的位置。
在另一种可选的实施例中,上述分布式数据库模块306可以为分布式NoSQL数据库、分布式服务器。其作为数据通道的数据源,可以提供读取全量数据和读取增量数据的接口。对于表格存储,全量数据的读取接口可以为GetRange接口,增量数据的读取接口可以为GetStreamRecords接口。
步骤S204,依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道。
作为一种可选的实施例,可以预先在通道服务模块中创建一个通道,并通过启动客户端设备向通道服务模块发送请求数据,例如,客户端设备发送上述第一请求至通道服务模块,通道服务模块依据上述第一请求中携带的通道标识ID确定与上述标识ID对应的通道类型。
步骤S206,依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
需要说明的是,在上述步骤S202至步骤S206中,上述客户端设备可以为如图3所示的客户端设备302,上述通道服务模块可以为如图3所示的通道服务模块304,上述预设数据库可以为如图3所示的分布式数据库模块306,但并不局限于此。
在上述可选的实施例中,根据通道类型确定数据读取方式,并按照不同的读取方式从数据库的全量接口或者增量接口读取数据。例如,如果确定的通道类型为支持传输全量数据的第一通道,则从当前读取到的全量数据在上述第一通道的位置,在预设数据库中开始读取全量数据,并返回给客户端设备;如果确定的通道类型为支持传输增量数据的第二通道,则从当前读取到的增量数据在上述第二通道的位置,在预设数据库中开始读取增量数据,并返回给客户端设备;如果确定的通道类型为支持传输全量数据和增量数据的第三通道,则先判断全量数据是否全部读取完毕,如果全量数据已经全部读取完毕,则开始读取增量数据,如果全量数据还未读取完毕,则继续读取全量数据。
图4a是根据本申请实施例的一种可选的数据同步方法的交互示意图,如图4a所示,上述数据同步方法的交互流程,可以但不限于为以下所示:
步骤S302,客户端设备发送第一请求至通道服务模块。
在上述步骤S302中,该第一请求中携带有通道标识ID。
步骤S304,通道服务模块依据上述通道ID确定与上述通道ID对应的通道类型。
在上述步骤S304中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道。
步骤S306,通道服务模块依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据。
步骤S308,通道服务模块确定上述读取的数据的数据格式。
在一种可选的实施例中,上述读取的数据可以包括但不限于为:增量数据、全量数据、增量数据加全量数据。需要说明的是,由于增量数据实际上是数据表中数据的更新记录,其包括:操作类型和数据,因此,增量数据与全量数据在数据格式上存在一些区别。
步骤S310,通道服务模块判断上述数据格式是否与指定格式相同。
在上述步骤S310中,上述指定格式为预先规定的数据格式,可以为全量数据的数据格式,也可以为增量数据的格式,统一为一种数据格式。
步骤S312,通道服务模块在判断结果指示不相同时,将上述数据格式转换为上述指定格式;
步骤S314,通道服务模块将读取的数据发送至上述客户端设备。
在上述步骤S312中,在上述数据格式与指定格式不相同的情况下,表明当前增量数据与全量数据在数据格式上仍不统一,因而需要将未统一的数据格式转换为上述指定格式,进而在发送数据至客户端设备时,无需针对不同的数据格式制定不同的处理流程,达到将全量数据和增量数据的数据格式重新组织,统一两者的数据格式的目的。
作为一种可选的实施例,图4b是根据本申请实施例的一种可选的数据同步方法的流程图,如图4b所示,上述可选的数据同步方法,可以通过如下方法步骤实现:
步骤S402,在通道服务模块中创建一个通道。
步骤S404,通道服务模块接收客户端设备的第一请求,其中,该第一请求中携带有通道标识ID。
步骤S406,通道服务模块依据上述通道ID确定与上述通道ID对应的通道类型。
其中,在上述步骤S406中,如果确定的通道类型为支持传输全量数据的第一通道,则执行步骤S408,如果确定的通道类型为支持传输增量数据的第二通道,则执行步骤S410,如果确定的通道类型为支持传输全量数据和增量数据的第三通道,则执行步骤S412。
步骤S408,从当前读取到的全量数据的位置从预设数据库中开始读取全量数据,并返回给客户端设备;
步骤S410,从当前读取到的增量数据的位置从预设数据库中开始读取增量数据,并返回给客户端设备;
步骤S412,判断全量数据是否全部读取完毕。
在上述步骤S412中,如果全量数据已经全部读取完毕,即判断结果为是,则执行步骤S414,如果全量数据还未读取完毕,即判断结果为否,则执行步骤S416。
步骤S414,开始读取数据表中的增量数据,并返回给客户端设备。
步骤S416,继续读取数据表中的全量数据,并返回给客户端设备。
需要说明的是,本申请实施例所提供的数据同步方法可以但不限于应用于各种数据同步场景,例如,数据库之间的主备同步;向其他数据库、离线计算、流计算等数据库系统之间的数据同步,用户也可以通过上述数据同步方法提供的数据同步功能,读取数据表中的全量/增量数据,自行进行数据处理、数据分析、数据同步等。
在本申请实施例中,在接收客户端设备的第一请求之后,依据第一请求中携带的通道ID确定与上述通道ID对应的通道类型,再依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
容易注意到的是,本申请实施例可以应用于各种数据同步场景中,通过提供支持全量、增量、全量增量结合的数据同步需求的数据通道服务,对于不同的同步场景无需使用不同的数据通道服务,达到了通过同一数据通道服务,实现不同类型的数据同步的目的,从而实现了简化数据同步流程,提高数据同步效率的技术效果。
由此,本申请实施例解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
在一种可选的实施例中,图5是根据本申请实施例的一种可选的数据同步方法的流程图,如图5所示,通过上述通道类型所指示的数据通道从预设数据库中读取数据,可以通过如下方法步骤实现:
步骤S502,从上述第一请求中提取读取位置,其中,该读取位置为上述读取的数据在上述数据通道的位置;
步骤S504,在上述预设数据库中从上述读取位置处开始读取数据。
其中,上述读取位置包括但不限于为:读取的全量数据在上述数据通道的位置、读取的增量数据在上述数据通道的位置、读取的全量数据和增量数据在上述数据通道的位置。
在一种可选的实施例中,如果依据上述第一请求中携带通道ID确定的通道类型为支持传输全量数据的第一通道,则从当前读取到的全量数据在上述数据通道的位置,在预设数据库中开始读取全量数据,并返回给客户端设备。
在另一种可选的实施例中,如果依据上述第一请求中携带通道ID确定的通道类型为支持传输增量数据的第二通道,则从当前读取到的增量数据在上述数据通道的位置,在预设数据库中开始读取增量数据,并返回给客户端设备。
此外,还存在一种可选的实施例,如果依据上述第一请求中携带通道ID确定的通道类型为支持传输全量数据和增量数据的第三通道,则先判断全量数据是否全部读取完毕,如果全量数据已经全部读取完毕,则开始读取增量数据,并返回给客户端设备。如果全量数据还未读取完毕,则继续读取全量数据,并返回给客户端设备。
在一种可选的实施例中,图6是根据本申请实施例的一种可选的数据同步方法的流程图,如图6所示,在步骤S202之前,即接收客户端设备的第一请求之前,上述方法还包括如下方法步骤:
步骤S602,接收上述客户端设备的第二请求,其中,上述第二请求中携带有客户端设备ID。
在一种可选的实施例中,上述第二请求中还可以但不限于携带有以下字段信息:数据库标识、所需的通道类型。
在一种可选的实施例中,本申请实施例可以但不限于通过通道服务模块的CreateTunnel接口(即,创建通道接口)接收上述第二请求;该CreateTunnel接口为一种API接口,其作用为创建通道;该CreateTunnel接口的请求参数可以为上述第二请求中携带的字段信息;该CreateTunnel接口的响应参数可以为:所创建通道的通道ID,其中,通道ID用于标识该通道。
步骤S604,在上述第二请求的触发下,为客户端设备创建用于数据同步的通道,并为创建的通道分配与上述客户端设备ID对应的通道ID。
在一种可选的实施例中,上述第二请求用于请求通道服务模块为客户端设备创建用于数据同步的通道,并为创建的通道分配与上述客户端设备ID对应的通道ID,进而客户端设备可以依据上述通道ID调用通道服务模块提供的接口向分布式存储数据库模块请求同步数据。
在一种可选的实施例中,图7是根据本申请实施例的一种可选的数据同步方法的流程图,如图7所示,将读取的数据发送至上述客户端设备之前,上述方法还包括:
步骤S702,确定上述读取的数据的数据类型。
在一种可选的实施例中,上述读取的数据可以包括但不限于为:增量数据、全量数据、增量数据加全量数据。需要说明的是,由于增量数据实际上是数据表中数据的更新记录,其包括:操作类型和数据,因此,增量数据与全量数据在数据格式上存在一些区别。
步骤S704,在上述数据类型为指定类型时,在上述读取的数据的数据格式中设置操作类型,其中,该操作类型为全量数据和增量数据均支持的操作类型。
在一种可选的实施例中,上述指定类型包括:全量数据;和/或,上述操作类型包括:增加数据、覆盖已有数据。
在一种可选的实施例中,在上述数据类型为全量数据时,为上述读取的数据设置操作类型,其中,上述操作类型为增量数据支持的操作类型。
需要说明的是,全量数据和增量数据的数据格式是不一样的,在一种可选的实施例中,全量数据的数据格式是行,包含“主键”和“属性列”。增量数据的数据格式除了本次操作的行之外,还包含了操作类型和操作时间,其中,上述操作类型包括但不限于为:“新增或覆盖”、“更新”、“删除”等。
在本申请实施例中,可以通过对全量数据增加操作类型,例如,通过增加“新增或覆盖”的操作类型,将全量数据也组织成增量数据的数据格式;客户端设备在接收到统一数据格式的数据之后,可以根据操作类型判断如何处理接收到的数据,例如,在客户端设备将上述数据同步到另一个系统之后,对于“新增或覆盖”的操作类型,则在另一个系统中新增数据或者覆盖同主键的行,对于更新则进行更新等。
在上述步骤S704中,由于增量数据与全量数据的数据格式并不统一,因而可以对全量数据增加操作类型,将全量数据也组织成增量数据的数据格式;进而在发送数据至客户端设备时,无需针对不同的数据类型制定不同的处理流程,达到将全量数据和增量数据的数据格式重新组织,统一两者的数据格式的目的。
通过本申请上述实施例,通过通道服务模块将全量数据的数据格式重新组织,变成与增量数据统一的数据格式返回给客户端设备。由于在本申请实施例中全量数据和增量数据的数据格式统一,因而在处理数据同步时可以使用统一的处理流程。
在一种可选的实施例中,图8是根据本申请实施例的一种可选的数据同步方法的流程图,如图8所示,通过上述通道类型所指示的数据通道从预设数据库中读取数据包括:
步骤S802,在上述通道类型为上述第三通道时,先读取上述第一请求所请求数据中的全量数据;
步骤S804,在读取上述全量数据完成后,读取上述第一请求所请求数据中的增量数据。
此外,还存在一种可选的实施例,如果依据上述第一请求中携带通道ID确定的通道类型为支持传输全量数据和增量数据的第三通道,则先读取上述第一请求所请求数据中的全量数据;例如,先判断全量数据是否全部读取完毕,如果全量数据已经全部读取完毕,则开始读取增量数据,并返回给客户端设备;如果全量数据还未读取完毕,则继续读取全量数据,并返回给客户端设备。
通过本申请上述可选的实施例,全量数据和增量数据的同步场景中,可以实现在全量数据同步完成之后自动同步增量数据,进而实现了数据同步过程的无缝衔接。
实施例2
根据本申请实施例,提供了另一种数据同步方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图9是根据本申请实施例的另一种数据同步方法的流程图,如图9所示,该方法可以包括如下步骤:
步骤S902,接收客户端设备的数据请求。
在一种可选的实施例中,上述数据请求中还可以但不限于携带有以下字段信息:通道ID、客户端设备ID、数据通道的子通道标识、上述数据请求所读取数据的读取位置。
在一种可选的实施例中,本申请实施例可以但不限于通过通道服务模块的ReadRecords接口接收上述数据请求;该ReadRecords接口为一种API接口,其作用为读取数据;该ReadRecords接口的请求参数可以为上述数据请求中携带的字段信息;该ReadRecords接口的响应参数可以为:上述数据请求所读取到的数据,全量数据和增量数据采用统一的数据格式;上述数据请求所读取数据的下一次读取的读取位置。
步骤S904,确定上述数据请求所请求数据的通道类型。
其中,上述通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道。
作为一种可选的实施例,可以预先在通道服务模块中创建一个通道,并通过启动客户端设备向通道服务模块发送请求数据,例如,客户端设备发送上述数据请求至通道服务模块,通道服务模块可以但不限于依据上述数据请求中携带的用于反映通道类型的通道标识ID确定通道类型。
步骤S906,依据上述通道类型确定与上述通道类型对应的数据读取方式,其中,上述数据读取方式包括:增量方式和全量方式;
步骤S908,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
在一种可选的实施例中,如果确定的通道类型为支持传输全量数据的第一通道,则确定与通道类型对应的数据读取方式为用于指示读取全量数据的全量方式,进而从当前读取到的全量数据在上述数据通道的位置,按照上述全量方式在预设数据库中开始读取全量数据,并将读取到的全量数据返回给客户端设备。
在另一种可选的实施例中,如果确定的通道类型为支持传输增量数据的第二通道,则确定与通道类型对应的数据读取方式为用于指示读取增量数据的增量方式,从当前读取到的增量数据在上述数据通道的位置,按照上述增量方式在预设数据库中开始读取增量数据,并将读取到的增量数据返回给客户端设备。
在又一种可选的实施例中,如果确定的通道类型为支持传输全量数据和增量数据的第三通道,则确定与通道类型对应的数据读取方式为增量方式和全量方式,进而可以读取增量数据和全量数据,例如,可以先判断全量数据是否全部读取完毕,如果全量数据已经全部读取完毕,则开始读取增量数据,并将读取到的增量数据返回给客户端设备;如果全量数据还未读取完毕,则继续读取全量数据,并将读取到的增量数据返回给客户端设备。
此外,还存在一种可选的实施例,在将读取的数据发送至上述客户端设备之前,上述方法还包括如下方法步骤:
在上述数据读取方式为全量方式时,在上述读取的数据中设置操作类型,其中,上述操作类型为增量数据支持的操作类型。
需要说明的是,全量数据和增量数据的数据格式是不一样的,在一种可选的实施例中,全量数据的数据格式是行,包含“主键”和“属性列”。增量数据的数据格式除了本次操作的行之外,还包含了操作类型和操作时间,其中,上述操作类型包括但不限于为:“新增或覆盖”、“更新”、“删除”等。
在本申请实施例中,在上述数据读取方式为全量方式时,可以通过对全量数据增加操作类型,例如,通过增加“新增或覆盖”的操作类型,将全量数据也组织成增量数据的数据格式;客户端设备在接收到统一数据格式的数据之后,可以根据操作类型判断如何处理接收到的数据,例如,在客户端设备将上述数据同步到另一个系统之后,对于“新增或覆盖”的操作类型,则在另一个系统中新增数据或者覆盖同主键的行,对于更新则进行更新等。
在本申请实施例中,在接收客户端设备的数据请求之后,确定上述数据请求所请求数据的通道类型,再依据上述通道类型确定与上述通道类型对应的数据类型,进而可以从预设数据库中读取与上述数据类型对应的数据,并将读取的数据发送至上述客户端设备。
容易注意到的是,本申请实施例可以应用于各种数据同步场景中,通过提供支持全量、增量、全量增量结合的数据同步需求的数据通道服务,使用同一通道传输不同类型的数据,达到了通过同一数据通道服务,实现不同类型的数据同步的目的,从而实现了简化数据同步流程,提高数据同步效率的技术效果。
由此,本申请实施例解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
此外,仍需要说明的是,本实施例的可选或优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
实施例3
根据本申请实施例,提供了另一种数据同步方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图10是根据本申请实施例的又一种数据同步方法的流程图,如图10所示,该方法可以包括如下步骤:
步骤S1002,确定客户端设备的数据同步类型。
其中,上述数据同步类型包括以下之一:用于指示全量数据同步的第一类型、用于指示增量数据同步的第二类型、用于指示全量数据和增量数据同步的第三类型。
作为一种可选的实施例,可以预先在通道服务模块中创建上述指定数据通道,并通过启动客户端设备向通道服务模块发送请求数据,通道服务模块依据上述请求数据中携带的用于反映通道类型的通道标识ID确定上述数据同步类型。
步骤S1004,通过指定数据通道从预设数据库中获取与上述数据同步类型对应的数据,其中,上述指定数据通道支持不同数据同步类型对应的数据的传输。
在一种可选的实施例中,如果上述数据同步类型为用于指示全量数据同步的第一类型,则从当前读取到的全量数据在上述数据通道的位置,在预设数据库中开始读取全量数据,并返回给客户端设备。
在另一种可选的实施例中,如果上述数据同步类型为用于指示增量数据同步的第二类型,则从当前读取到的增量数据在上述数据通道的位置,在预设数据库中开始读取增量数据,并返回给客户端设备。
此外,还存在一种可选的实施例,如果上述数据同步类型为用于指示全量数据和增量数据同步的第三类型,则先判断全量数据是否全部读取完毕,如果全量数据已经全部读取完毕,则开始读取增量数据,并返回给客户端设备。如果全量数据还未读取完毕,则继续读取全量数据,并返回给客户端设备。
步骤S1006,将获取的数据转换为指定格式的数据,并将上述指定格式的数据发送至上述客户端设备。
需要说明的是,全量数据和增量数据的数据格式是不一样的,其中,全量数据的数据格式是行,包含“主键”和“属性列”。增量数据的数据格式除了本次操作的行之外,还包含了操作类型和操作时间,其中,上述操作类型包括但不限于为:“新增或覆盖”、“更新”、“删除”等。因此,上述指定格式可以为增量数据的数据格式,除包括行之外,还包括操作类型和操作时间。
在本申请实施例中,可以通过对全量数据增加操作类型,例如,通过增加“新增或覆盖”的操作类型,将全量数据也组织成增量数据的数据格式;客户端设备在接收到统一数据格式的数据之后,可以根据操作类型判断如何处理接收到的数据,例如,在客户端设备将上述数据同步到另一个系统之后,对于“新增或覆盖”的操作类型,则在另一个系统中新增数据或者覆盖同主键的行,对于更新则进行更新等。
在一种可选的实施例中,若获取的数据的数据格式与上述指定格式不相同,表明当前增量数据与全量数据在数据格式上仍不统一,因而需要将获取的数据的数据格式转换为上述指定格式,进而在发送数据至客户端设备时,无需针对不同的数据类型制定不同的处理流程,达到将全量数据和增量数据的数据格式重新组织,统一两者的数据格式的目的。
通过本申请上述实施例,通过通道服务模块将全量数据和增量数据的数据格式重新组织,变成统一的数据格式返回给客户端设备。由于在本申请实施例中全量数据和增量数据的数据格式统一,因而在处理数据同步时可以使用统一的处理流程。
在本申请实施例中,在确定客户端设备的数据同步类型之后,通过指定数据通道从预设数据库中获取与上述数据同步类型对应的数据,再将获取的数据转换为指定格式的数据,并将上述指定格式的数据发送至上述客户端设备。
容易注意到的是,本申请实施例可以应用于各种数据同步场景中,通过提供支持全量、增量、全量增量结合的数据同步需求的数据通道服务,使用同一通道传输不同类型的数据,并采用同一格式发送至客户端设备,达到了通过同一数据通道服务,实现不同类型的数据同步的目的,从而实现了简化数据同步流程,提高数据同步效率的技术效果。
由此,本申请实施例解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
此外,仍需要说明的是,本实施例的可选或优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例上述的方法。
实施例4
根据本申请实施例,还提供了一种数据同步系统的实施例,该系统可执行实施例1、2和3中的任意一种可选或优选的数据同步方法,图11是根据本申请实施例的一种数据同步系统的结构示意图,如图11所示,数据同步系统1100,包括:客户端设备112、通道服务模块114、分布式数据库模块116,其中:
客户端设备112,用于调用通道服务模块提供的接口向分布式存储数据库模块请求同步数据;上述通道服务模块114,与上述客户端设备112连接,用于提供供上述客户端设备调用的接口,并基于上述客户端设备的调用对数据同步类型进行管理;分布式数据库模块116,用于提供向上述客户端设备提供的同步数据。
在上述可选的实施例中,客户端设备112向通道服务模块114读取数据,是数据通道的客户端(TunnelClient)。
在一种可选的实施例中,上述通道服务模块114为数据通道的服务端,可以作为一个中间件或应用运行于服务器、客户端设备等硬件设备中,在用户需要使用数据通道的情况下,首先可以在上述通道服务模块中创建对应的通道,通道类型可以为支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道。
并且,通道服务模块114可以根据不同的通道类型,以及当前数据同步的进度,确定从上述分布式数据库模块中读取增量数据还是全量数据,并管理数据同步的位置。
在另一种可选的实施例中,上述分布式数据库模块116可以为分布式NoSQL数据库、分布式服务器。其作为数据通道的数据源,可以提供读取全量数据和读取增量数据的接口。对于表格存储,全量数据的读取接口可以为GetRange接口,增量数据的读取接口可以为GetStreamRecords接口。
在一种可选的实施例中,上述接口包括以下至少之一:
第一接口,用于响应上述客户端设备发送的第三请求,创建上述客户端设备所需的通道类型的通道。
在一种可选的实施例中,上述第一接口可以但不限于为通道服务模块的CreateTunnel接口(即,创建通道接口);该第一接口为一种API接口,其作用为创建上述客户端设备所需的通道类型的通道;第一接口的请求参数可以为上述第三请求中携带的字段信息;第一接口的响应参数可以为:所创建通道的通道ID,其中,通道ID用于标识该通道。
需要说明的是,上述第三请求可以为实施例1中的第二请求。
第二接口,用于响应上述客户端设备发送的第四请求,向上述通道服务模块进行注册,并为上述客户端设备分配客户端设备标识ID。
在一种可选的实施例中,上述第二接口可以但不限于为通道服务模块的Connect接口(即,连接接口);该Connect接口为一种API接口,其作用为在客户端设备启动时,调用Connect接口向通道服务模块进行注册,通道服务模块分配客户端设备标识ID给客户端设备,进而后续可以分配数据同步任务给客户端设备。
其中,上述第二接口的请求参数可以为:通道ID,即客户端设备所要访问的数据通道的通道ID;上述第二接口的响应参数可以为:客户端设备标识ID,即通道服务模块为上述客户端设备分配的客户端设备标识ID。
第三接口,用于响应上述客户端设备发送的第四请求,监测当前数据同步任务的状态。
在一种可选的实施例中,上述第三接口可以但不限于为通道服务模块的Heartbeat接口(即,心跳监测接口)该Heartbeat接口为一种API接口,其作用为客户端设备向通道服务模块汇报当前数据同步任务的状态,并获取最新的同步任务。
其中,上述第三接口的请求参数可以为:通道ID,即数据通道的通道ID;客户端设备标识ID,即当前的客户端设备的客户端设备标识ID;当前数据同步任务的状态(Channels),其中,一个数据通道对应一个同步任务。上述第三接口的响应参数可以为:新的同步任务(New Channels)。
第四接口,用于响应上述客户端设备的第五请求,向上述分布式数据库模块读取数据;
在一种可选的实施例中,上述第四接口可以但不限于为通道服务模块的ReadRecords接口(即,读取数据接口);该ReadRecords接口为一种API接口,其作用为响应上述客户端设备的第五请求,向上述分布式数据库模块读取数据。
其中,第四接口的请求参数可以为上述第五请求中携带的字段信息;第四接口的响应参数可以为:上述第五请求所读取到的数据,全量数据和增量数据采用统一的操作类型;上述第五请求下一次读取数据的读取位置。
需要说明的是,上述第五请求可以为实施例1中的第一请求。
第五接口,用于响应上述客户端设备的第六请求,记录当前同步数据的读取位置。
在一种可选的实施例中,上述第四接口可以但不限于为通道服务模块的Checkpoint接口(即,检测节点接口),该Checkpoint接口为一种API接口,其作用为记录当前同步数据的读取位置,用于断点续传,进而在发生节点故障并恢复后,从该位置开始读取数据。
其中,第五接口的请求参数可以为:通道ID,即数据通道的通道ID;客户端设备标识ID,即当前的客户端设备的客户端设备标识ID;记录检测节点的ChannelId;记录的当前同步数据的读取位置;第五接口可以不向客户端设备返回响应参数。
第六接口,用于响应上述客户端设备的第七请求,关闭当前进行数据同步的客户端设备。
在一种可选的实施例中,上述第四接口可以但不限于为通道服务模块的Shutdown接口,该Shutdown接口为一种API接口,其作用为关闭当前进行数据同步的客户端设备。
其中,第六接口的请求参数可以为通道ID,即数据通道的通道ID;客户端设备标识ID,即当前的客户端设备的客户端设备标识ID;第六接口可以不向客户端设备返回响应参数。
此外,仍需要说明的是,本实施例的可选或优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
实施例5
根据本申请实施例,还提供了一种用于实施上述数据同步的装置的实施例,图12是根据本申请实施例的一种数据同步装置的结构示意图,如图12所示,该装置1200,包括:接收模块122、确定模块124和读取模块126,其中:
接收模块122,用于接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;确定模块124,用于依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;读取模块126,用于依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
此处需要说明的是,上述接收模块122、确定模块124和读取模块126对应于实施例1中的步骤S202至步骤S206,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中。
此外,仍需要说明的是,本实施例的可选或优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
实施例6
根据本申请实施例,还提供了另一种用于实施上述数据同步的装置的实施例,图13是根据本申请实施例的另一种数据同步装置的结构示意图,如图13所示,该装置1300,包括:接收单元132、第一确定单元134、第二确定单元136和读取单元138,其中:
接收单元132,用于接收客户端设备的数据请求;第一确定单元134,用于确定上述数据请求所请求数据的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;第二确定单元136,用于依据上述通道类型确定与上述通道类型对应的数据读取方式,其中,上述数据读取方式包括:增量方式和全量方式;读取单元138,用于按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
此处需要说明的是,上述接收单元132、确定单元134、第二确定单元136和读取单元138对应于实施例2中的步骤S902至步骤S908,四个单元与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例2所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在实施例1提供的计算机终端10中。
此外,仍需要说明的是,本实施例的可选或优选实施方式可以参见实施例2中的相关描述,此处不再赘述。
实施例7
根据本申请实施例,还提供了又一种用于实施上述数据同步的装置的实施例,图14是根据本申请实施例的又一种数据同步装置的结构示意图,如图14所示,该装置1400,包括:第三确定单元142、获取单元144和发送单元146,其中:
第三确定单元142,用于确定客户端设备的数据同步类型,其中,该数据同步类型包括以下之一:用于指示全量数据同步的第一类型、用于指示增量数据同步的第二类型、用于指示全量数据和增量数据同步的第三类型;获取单元144,用于通过指定数据通道从预设数据库中获取与上述数据同步类型对应的数据,其中,上述指定数据通道支持不同数据同步类型对应的数据的传输;发送单元146,用于将获取的数据转换为指定格式的数据,并将上述指定格式的数据发送至上述客户端设备。
此处需要说明的是,上述第三确定单元142、获取单元144和发送单元146对应于实施例3中的步骤S1002至步骤S1004,三个单元与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例3所公开的内容。需要说明的是,上述单元作为装置的一部分可以运行在实施例1提供的计算机终端10中。
此外,仍需要说明的是,本实施例的可选或优选实施方式可以参见实施例3中的相关描述,此处不再赘述。
实施例8
根据本申请实施例,还提供了一种计算设备的实施例,包括:处理器,上述处理器用于运行程序,其中,在上述程序运行时执行以下步骤:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
在本申请实施例中,在接收客户端设备的第一请求之后,依据第一请求中携带通道ID确定通道类型,再依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
容易注意到的是,本申请实施例可以应用于各种数据同步场景中,通过提供支持全量、增量、全量增量结合的数据同步需求的数据通道服务,对于不同的同步场景无需使用不同的数据通道服务,达到了通过同一数据通道服务,实现不同类型的数据同步的目的,从而实现了简化数据同步流程,提高数据同步效率的技术效果。
由此,本申请实施例解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
实施例9
根据本申请实施例,还提供了一种数据同步系统的实施例,该系统可执行实施例1、2和3中的任意一种可选或优选的数据同步方法,其中,包括:处理器以及存储器,其中:
处理器;以及存储器,与上述处理器连接,用于为上述处理器提供处理以下处理步骤的指令:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
在本申请实施例中,在接收客户端设备的第一请求之后,依据第一请求中携带通道ID确定通道类型,再依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
容易注意到的是,本申请实施例可以应用于各种数据同步场景中,通过提供支持全量、增量、全量增量结合的数据同步需求的数据通道服务,对于不同的同步场景无需使用不同的数据通道服务,达到了通过同一数据通道服务,实现不同类型的数据同步的目的,从而实现了简化数据同步流程,提高数据同步效率的技术效果。
由此,本申请实施例解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
实施例10
根据本申请的实施例,提供一种计算机终端的实施例,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行数据同步方法中以下步骤的程序代码:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
可选地,图15是根据本申请实施例的一种计算机终端的结构框图。如图15所示,该计算机终端15可以包括:一个或多个(图中仅示出一个)处理器1502、存储器1504、以及外设接口1506。
其中,存储器可用于存储软件程序以及模块,如本申请实施例中的数据同步方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据同步方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端15。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
可选的,上述处理器还可以执行如下步骤的程序代码:从上述第一请求中提取读取位置,其中,该读取位置为上述读取的数据在上述数据通道的位置;在上述预设数据库中从上述读取位置处开始读取数据。
可选的,上述处理器还可以执行如下步骤的程序代码:接收上述客户端设备的第二请求,其中,上述第二请求中携带有客户端设备ID;在上述第二请求的触发下,为上述客户端设备创建用于数据同步的通道,并为创建的通道分配与上述客户端设备ID对应的通道ID。
可选的,上述处理器还可以执行如下步骤的程序代码:确定上述读取的数据的操作类型;在上述数据类型为指定类型时,在上述读取的数据的数据格式中设置操作类型,其中,该操作类型为全量数据和增量数据均支持的操作类型。
可选的,上述处理器还可以执行如下步骤的程序代码:在上述通道类型为上述第三通道时,先读取上述第一请求所请求数据中的全量数据;在读取上述全量数据完成后,读取上述第一请求所请求数据中的增量数据。
可选的,上述处理器还可以执行如下步骤的程序代码:接收客户端设备的数据请求;确定上述数据请求所请求数据的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定与上述通道类型对应的数据读取方式,其中,上述数据读取方式包括:增量方式和全量方式;按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
可选的,上述处理器还可以执行如下步骤的程序代码:在上述数据读取方式为全量方式时,在上述读取的数据中设置操作类型,其中,上述操作类型为增量数据支持的操作类型。
可选的,上述处理器还可以执行如下步骤的程序代码:确定客户端设备的数据同步类型,其中,该数据同步类型包括以下之一:用于指示全量数据同步的第一类型、用于指示增量数据同步的第二类型、用于指示全量数据和增量数据同步的第三类型;通过指定数据通道从预设数据库中获取与上述数据同步类型对应的数据,其中,上述指定数据通道支持不同数据同步类型对应的数据的传输;将获取的数据转换为指定格式的数据,并将上述指定格式的数据发送至上述客户端设备。
采用本申请实施例,提供了一种数据同步的方案。通过接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
从而达到了通过同一数据通道服务,实现不同类型的数据同步的目的,进而解决了现有技术中无法通过同一数据通道服务实现不同类型的数据同步的技术问题。
本领域普通技术人员可以理解,图15所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图15其并不对上述电子装置的结构造成限定。例如,计算机终端15还可包括比图15中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图15所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例11
根据本申请的实施例,还提供了一种存储介质的实施例。可选地,在本实施例中,上述存储介质可以用于保存上述实施例1、2和3所提供的数据同步方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道标识ID;依据上述通道ID确定与上述通道ID对应的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定数据读取方式,按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:从上述第一请求中提取读取位置,其中,该读取位置为上述读取的数据在上述数据通道的位置;在上述预设数据库中从上述读取位置处开始读取数据。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收上述客户端设备的第二请求,其中,上述第二请求中携带有客户端设备ID;在上述第二请求的触发下,为上述客户端设备创建用于数据同步的通道,并为创建的通道分配与上述客户端设备ID对应的通道ID。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:确定上述读取的数据的操作类型;在上述数据类型为指定类型时,在上述读取的数据的数据格式中设置操作类型,其中,该操作类型为全量数据和增量数据均支持的操作类型。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在上述通道类型为上述第三通道时,先读取上述第一请求所请求数据中的全量数据;在读取上述全量数据完成后,读取上述第一请求所请求数据中的增量数据。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收客户端设备的数据请求;确定上述数据请求所请求数据的通道类型,其中,该通道类型包括以下之一:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;依据上述通道类型确定与上述通道类型对应的数据读取方式,其中,上述数据读取方式包括:增量方式和全量方式;按照上述数据读取方式从预设数据库中读取数据,并将读取的数据发送至上述客户端设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在上述数据读取方式为全量方式时,在上述读取的数据中设置操作类型,其中,上述操作类型为增量数据支持的操作类型。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:确定客户端设备的数据同步类型,其中,该数据同步类型包括以下之一:用于指示全量数据同步的第一类型、用于指示增量数据同步的第二类型、用于指示全量数据和增量数据同步的第三类型;通过指定数据通道从预设数据库中获取与上述数据同步类型对应的数据,其中,上述指定数据通道支持不同数据同步类型对应的数据的传输;将获取的数据转换为指定格式的数据,并将上述指定格式的数据发送至上述客户端设备。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (17)
1.一种数据同步方法,包括:
接收客户端设备的第一请求,其中,该第一请求中携带有通道ID;
依据所述通道ID确定与所述通道ID对应的通道类型,其中,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
依据所述通道类型确定数据读取方式,按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。
2.根据权利要求1所述的方法,其中,通过所述通道类型所指示的数据通道从预设数据库中读取数据,包括:
从所述第一请求中提取读取位置;
在所述预设数据库中从所述读取位置处开始读取数据。
3.根据权利要求1所述的方法,其中,接收客户端设备的第一请求之前,所述方法还包括:
接收所述客户端设备的第二请求,其中,所述第二请求中携带有客户端设备ID;
在所述第二请求的触发下,为所述客户端设备创建用于数据同步的通道,并为创建的通道分配与所述客户端设备ID对应的通道ID。
4.根据权利要求3所述的方法,其中,所述第二请求中携带有以下字段信息:
数据库标识、所需的通道类型。
5.根据权利要求1所述的方法,其中,将读取的数据发送至所述客户端设备之前,所述方法还包括:
确定所述读取的数据的数据类型;
在所述数据类型为指定类型时,在所述读取的数据的数据格式中设置操作类型,其中,该操作类型为全量数据和增量数据均支持的操作类型。
6.根据权利要求5所述的方法,其中,所述指定类型包括:全量数据;和/或,所述操作类型包括:增加数据、覆盖已有数据。
7.根据权利要求1所述的方法,其中,通过所述通道类型所指示的数据通道从预设数据库中读取数据包括:
在所述通道类型为所述第三通道时,先读取所述第一请求所请求数据中的全量数据;在读取所述全量数据完成后,读取所述第一请求所请求数据中的增量数据。
8.根据权利要求1所述的方法,其中,所述第一请求中携带有以下字段信息:通道ID、客户端设备ID、所述第一请求所读取数据的读取位置。
9.一种数据同步方法,包括:
接收客户端设备的数据请求;
确定所述数据请求所请求数据的通道类型,其中,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
依据所述通道类型确定与所述通道类型对应的数据读取方式,其中,所述数据读取方式包括:增量方式和全量方式;
按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。
10.根据权利要求9所述的方法,其中,将读取的数据发送至所述客户端设备之前,所述方法还包括:
在所述数据读取方式为全量方式时,在所述读取的数据中设置操作类型,其中,所述操作类型为增量数据支持的操作类型。
11.一种数据同步方法,包括:
确定客户端设备的数据同步类型,其中,该数据同步类型具有:用于指示全量数据同步的第一类型、用于指示增量数据同步的第二类型、用于指示全量数据和增量数据同步的第三类型;
通过指定数据通道从预设数据库中获取与所述数据同步类型对应的数据,其中,所述指定数据通道支持不同数据同步类型对应的数据的传输;
将获取的数据转换为指定格式的数据,并将所述指定格式的数据发送至所述客户端设备。
12.一种数据同步系统,包括:
客户端设备,用于调用通道服务模块提供的接口向分布式存储数据库模块请求同步数据;
所述通道服务模块,与所述客户端设备连接,用于提供供所述客户端设备调用的接口,并基于所述客户端设备的调用对数据同步类型进行管理;其中,所述接口至少包括第一接口,所述第一接口用于响应所述客户端设备发送的第三请求,创建所述客户端设备所需的通道类型的通道,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
分布式数据库模块,用于提供向所述客户端设备提供的同步数据。
13.根据权利要求12所述的系统,其中,所述接口还包括以下至少之一:
第二接口,用于响应所述客户端设备发送的第四请求,向所述通道服务模块进行注册,并为所述客户端设备分配客户端设备标识ID;
第三接口,用于响应所述客户端设备发送的第四请求,监测当前数据同步任务的状态;
第四接口,用于响应所述客户端设备的第五请求,向所述分布式数据库模块读取数据;
第五接口,用于响应所述客户端设备的第六请求,记录当前同步数据的读取位置;
第六接口,用于响应所述客户端设备的第七请求,关闭当前进行数据同步的客户端设备。
14.一种数据同步装置,包括:
接收模块,用于接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道ID;
确定模块,用于依据所述通道ID确定与所述通道ID对应的通道类型,其中,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
读取模块,用于依据所述通道类型确定数据读取方式,按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。
15.一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行以下步骤:
接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道ID;
依据所述通道ID确定与所述通道ID对应的通道类型,其中,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
依据所述通道类型确定数据读取方式,按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。
16.一种计算设备,包括:
处理器,所述处理器用于运行程序,其中,在所述程序运行时执行以下步骤:
接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道ID;
依据所述通道ID确定与所述通道ID对应的通道类型,其中,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
依据所述通道类型确定数据读取方式,按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。
17.一种数据同步系统,包括:
处理器;以及
存储器,与所述处理器连接,用于为所述处理器提供处理以下处理步骤的指令:
接收客户端设备的第一请求,其中,该第一请求中携带有反映通道类型的通道ID;
依据所述通道ID确定与所述通道ID对应的通道类型,其中,该通道类型具有:支持传输全量数据的第一通道、支持传输增量数据的第二通道、支持传输全量数据和增量数据的第三通道;
依据所述通道类型确定数据读取方式,按照所述数据读取方式从预设数据库中读取数据,并将读取的数据发送至所述客户端设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810873419.6A CN110795496B (zh) | 2018-08-02 | 2018-08-02 | 数据同步方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810873419.6A CN110795496B (zh) | 2018-08-02 | 2018-08-02 | 数据同步方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110795496A CN110795496A (zh) | 2020-02-14 |
CN110795496B true CN110795496B (zh) | 2023-05-30 |
Family
ID=69425246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810873419.6A Active CN110795496B (zh) | 2018-08-02 | 2018-08-02 | 数据同步方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110795496B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377863B (zh) * | 2020-03-10 | 2022-04-29 | 阿里巴巴集团控股有限公司 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
CN112153447B (zh) * | 2020-09-27 | 2022-06-14 | 海信视像科技股份有限公司 | 一种显示设备及音画同步控制方法 |
CN112434011A (zh) * | 2020-11-24 | 2021-03-02 | 深圳集智数字科技有限公司 | 一种增量数据的传输方法、装置、设备及存储介质 |
CN112948494A (zh) * | 2021-03-04 | 2021-06-11 | 北京沃东天骏信息技术有限公司 | 数据同步方法、装置、电子设备和计算机可读介质 |
CN113220822B (zh) * | 2021-05-10 | 2024-01-09 | 北京百度网讯科技有限公司 | 文档数据的存储方法及装置 |
CN113239121A (zh) * | 2021-06-07 | 2021-08-10 | 中国农业银行股份有限公司 | 数据同步方法及设备 |
CN114726872A (zh) * | 2022-04-07 | 2022-07-08 | 平安资产管理有限责任公司 | 数据同步方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752372A (zh) * | 2012-06-18 | 2012-10-24 | 天津神舟通用数据技术有限公司 | 一种基于文件的数据库同步方法 |
CN106874389A (zh) * | 2017-01-11 | 2017-06-20 | 腾讯科技(深圳)有限公司 | 数据的迁移方法和装置 |
CN107122360A (zh) * | 2016-02-24 | 2017-09-01 | 阿里巴巴集团控股有限公司 | 数据迁移系统和方法 |
CN107391635A (zh) * | 2017-06-30 | 2017-11-24 | 北京奇虎科技有限公司 | 数据同步系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8682844B2 (en) * | 2005-01-28 | 2014-03-25 | Sap Ag | Method and apparatus for collision resolution in an asynchronous database system |
-
2018
- 2018-08-02 CN CN201810873419.6A patent/CN110795496B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752372A (zh) * | 2012-06-18 | 2012-10-24 | 天津神舟通用数据技术有限公司 | 一种基于文件的数据库同步方法 |
CN107122360A (zh) * | 2016-02-24 | 2017-09-01 | 阿里巴巴集团控股有限公司 | 数据迁移系统和方法 |
CN106874389A (zh) * | 2017-01-11 | 2017-06-20 | 腾讯科技(深圳)有限公司 | 数据的迁移方法和装置 |
CN107391635A (zh) * | 2017-06-30 | 2017-11-24 | 北京奇虎科技有限公司 | 数据同步系统及方法 |
Non-Patent Citations (1)
Title |
---|
曹海涛 ; 胡牧 ; 蒋厚明 ; .基于集群节点间即时拷贝的会话同步技术研究.计算机系统应用.2017,(03),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN110795496A (zh) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110795496B (zh) | 数据同步方法、装置及系统 | |
CN107302549B (zh) | 一种远程数据传输与存储系统及方法 | |
EP2660761A1 (en) | Timestamp management method for data synchronization and terminal therefor | |
CN109547524B (zh) | 基于物联网的用户行为存储方法、装置、设备及存储介质 | |
CN101436209B (zh) | 一种多数据库同步的方法和装置 | |
KR20120055166A (ko) | 네트워크로 연결 가능한 기기에서 데이터를 동기화하기 위한 장치 및 방법 | |
CN103237075A (zh) | 一种数据同步方法、装置及系统 | |
CN107704550A (zh) | 文件迁移方法、装置以及计算机可读存储介质 | |
CN110958287B (zh) | 操作对象数据同步方法、装置及系统 | |
CN109002305B (zh) | 一种设备程序的更新方法及其系统 | |
CN110858201B (zh) | 数据处理方法及系统、处理器、存储介质 | |
CN112988879A (zh) | 访问数据库的方法、系统、装置、存储介质及处理器 | |
CN109857596A (zh) | 时间一致性备份方法、设备、系统、装置及存储介质 | |
CN112988882A (zh) | 数据的异地灾备系统、方法及装置、计算设备 | |
CN110659299B (zh) | 数据更新的方法及装置、前端开发客户端 | |
CN111935029B (zh) | 网关负载均衡方法和装置、存储介质及电子设备 | |
CN107038195B (zh) | 数据同步方法和装置 | |
CN110851526B (zh) | 数据同步方法、装置及系统 | |
CN113448939A (zh) | 数据归档存储的方法、装置以及存储介质 | |
CN103973723A (zh) | 一种集中式科学数据同步的方法和系统 | |
EP3142298B1 (en) | Security inspection terminal, security inspection network system and security inspection data transmission method | |
CN110401643A (zh) | 登出行为的同步方法、装置、电子设备及存储介质 | |
CN112055057B (zh) | 一种Web系统动态扩展的方法及系统和设备 | |
CN114221970B (zh) | 一种公共环境下的应用数据同步方法和装置 | |
CN110688231B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |