CN115510161A - 数据同步方法、装置、设备及存储介质 - Google Patents

数据同步方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115510161A
CN115510161A CN202211190778.4A CN202211190778A CN115510161A CN 115510161 A CN115510161 A CN 115510161A CN 202211190778 A CN202211190778 A CN 202211190778A CN 115510161 A CN115510161 A CN 115510161A
Authority
CN
China
Prior art keywords
data
query
database
written
queried
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
CN202211190778.4A
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 263 Enterprise Communication Co ltd
Original Assignee
Beijing 263 Enterprise Communication 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 263 Enterprise Communication Co ltd filed Critical Beijing 263 Enterprise Communication Co ltd
Priority to CN202211190778.4A priority Critical patent/CN115510161A/zh
Publication of CN115510161A publication Critical patent/CN115510161A/zh
Pending legal-status Critical Current

Links

Images

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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • 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

Landscapes

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

Abstract

本申请提供一种数据同步方法、装置、设备及存储介质。该方法包括:接收至少一个数据提供端发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据;根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;将各待写入数据写入对应的关系型数据库和非关系型数据库中。本申请的方案能够高效地同步大量并发数据。

Description

数据同步方法、装置、设备及存储介质
技术领域
本申请涉及通信技术,尤其涉及一种数据同步方法、装置、设备及存储介质。
背景技术
生产者产生数据供自身或消费者使用。生产者和消费者之间通过数据同步来交换数据。
现目前,生产者可以直接开放数据库或数据访问接口供消费者访问,也可以将数据在数据交换平台进行注册,由消费者进行订阅,进而实现与消费者之间的数据同步。其中,如果开放数据库或数据访问接口供消费者访问,在大量消费者并发访问时,会影响数据库运行效率。而通过数据交换平台进行数据同步,在生产者与消费者属于同一系统时,注册、订阅再发送的方法又太过繁琐,导致数据同步效率低下。
综上,现有技术中的数据同步方法,无法高效地同步大量并发数据。
发明内容
本申请提供一种数据同步方法、装置、设备及存储介质,用以解决现有技术中无法高效地同步大量并发数据的问题。
根据本申请的第一方面,提供一种数据同步方法,包括:
接收至少一个数据提供端发送数据写入请求,所述数据写入请求中包括数据提供端标识和至少一份待写入数据;
根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;
将各待写入数据写入对应的关系型数据库和非关系型数据库中。
作为一种可选的实施方式,所述将各待写入数据写入对应的关系型数据库和非关系型数据库中,包括:确定各待写入数据的数据序列号,各待写入数据的数据序列号依次递增;以各待写入数据的数据序列号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库。
作为一种可选的实施方式,所述确定各待写入数据的数据序列号,包括:
获取各数据库组的各数据记录中的最大标识号,并将所述最大标识号确定为缓存序列号;对于各数据写入请求,执行以下操作:根据所述缓存序列号确定该数据写入请求中各待写入数据的数据序列号,该待写入请求中各待写入数据的数据序列号依次递增且均大于所述缓存序列号;将所述缓存序列号更新为该待写入请求中各待写入数据的数据序列号中的最大项。
作为一种可选的实施方式,数据同步方法还包括:接收至少一个数据消费端发送的数据查询请求,所述数据查询请求中包括查询接口类型、查询授权信息和至少一份待查询数据的标识信息;根据各所述查询接口类型确定各数据查询请求的类型;根据各查询授权信息确定各数据查询请求对应的至少一个授权数据库组;根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询。
作为一种可选的实施方式,所述数据查询请求的类型包括复杂查询和简单查询;所述根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询,包括:若确定数据查询请求的类型为简单查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询;若确定数据查询请求的类型的复杂查询,则在数据查询请求对应的各授权数据库组的关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询。
作为一种可选的实施方式,所述数据查询请求的类型包括综合查询;所述待查询数据的标识信息包括至少一个待查询项的标识信息;所述根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询,包括:若确定数据查询请求的类型为综合查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照各待查询项的标识信息进行查询,并确定各待查询项的查询结果;各待查询项的查询结果为有结果或无结果;若确定存在任意一个待查询项的结果为无结果,则在数据查询请求对应的各授权数据库组的关系型数据中对无结果的待查询项按照对应的标识信息进行查询。
作为一种可选的实施方式,数据同步方法还包括:获取各关系型数据库中的各关系型数据记录的校验码和各非关系型数据库中的各非关系型数据记录的校验码;采用各关系型数据对各非关系型数据进行校验和订正。
根据本申请的第二方面,提供一种数据同步装置,包括:
接收模块,用于接收至少一个数据提供端发送数据写入请求,所述数据写入请求中包括数据提供端标识和至少一份待写入数据;
确定模块,用于根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;
写入模块,用于将各待写入数据写入对应的关系型数据库和非关系型数据库中。
根据本申请的第三方面,提供一种电子设备,包括:存储器,处理器及收发器;
所述存储器,所述处理器及所述收发器电路互连;
所述存储器存储计算机执行指令;
所述收发器用于收发数据;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中所述的方法。
根据本申请的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面中所述的方法。
本申请提供的数据同步方法、装置、设备及存储介质,通过接收至少一个数据提供端发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据;根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;将各待写入数据写入对应的关系型数据库和非关系型数据库中。由于各数据提供端对应不同的目标数据库组,在确定出各数据提供端对应的目标数据库组之后,可以由各数据库组将各自对应的待写入数据写入其关系型数据库和非关系型数据库,各数据库组向数据库中写入数据时只占用自身的资源,不会影响其他数据库组,数据同步包括数据写入、数据删除、数据修改和数据查询,因此,本申请的方案能够高效地同步大量并发数据。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1A是根据本申请实施例提供的一种应用场景对应的网络架构图;
图1B是根据本申请实施例提供的另一种应用场景对应的网络架构图;
图2是根据本申请实施例一提供的数据同步方法的流程示意图;
图3是根据本申请实施例二提供的数据同步方法的流程示意图;
图4是根据本申请实施例三提供的数据同步方法的流程示意图;
图5是根据本申请实施例四提供的数据同步方法的流程示意图;
图6是根据本申请实施例五提供的数据同步装置的结构示意图;
图7是根据本申请实施例六提供的电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
以下对本申请所涉及的现有技术进行详细说明及分析。
随着互联网、移动互联网、物联网等技术的发展,越来越多的数据也随之产生。生产者产生的数据除了供自身使用之外,也需要提供给消费者使用,因此生产者和消费者之间需要通过数据同步来交换数据。
现目前,存在以下三种方式实现生产者与消费者之间的数据同步。
第一种方式,生产者产生数据之后直接存储在自身的数据库中,同时向消费者开放数据库,消费者可以直接访问生成者的数据库,实现数据同步。但是,这种方式中生产者和消费者共享数据库,当消费者获取大量数据时或者生成者写入大量数据时,都会占有大量的硬件资源,拖慢数据库的运行,使得消费者和生产者均受到影响,无法高效地同步大量并发数据。
第二种方式,生产者开放数据访问接口供消费者访问。这种方式在设置接口时,并不能预先知道消费者的类型、数量等。当出现新的消费者、消费者存在新的数据访问需求时,就需要开发新的数据访问接口供消费者使用。而新的数据访问接口不仅在开发时需要消耗大量的资源,在开发完成后也不一定能与数据库兼容。同时,大量的数据访问接口被调用也会占用大量的硬件资源,影响数据库的运行,因此,开放数据访问接口的方式也无法高效地同步大量并发数据。
第三种方式,数据生产者可以在数据交换平台上进行注册,并将其生产的数据同步到数据交换平台。同时,消费者在数据交换平台上进行订阅,由数据交换平台实现生成者和消费者之间的数据同步。由于数据交换平台隔离了生成者和消费者,避免了生成者和消费者之间的相互干扰。但是,这种方式中,数据交换平台十分庞大,需要占用大量的资源,而数据同步方式通过注册和订阅实现,实时性和灵活性不足,无法高效地同步大量并发数据。
综上,现有技术中,无法高效地同步大量并发数据。
所以,在面对现有技术中的问题时,发明人通过创造性研究,为了能够高效地同步大量并发数据,就需要避免大量并发数据同步对数据库的大量资源占用,同时,需要提高每一份数据的同步效率。因此,可以结合非关系型数据库读写速度快、同步效率高以及关系型数据库数据稳定不易出错的特点,形成关系型数据库和非关系型数据库结合的数据库组,将同一份数据同时存储在数据库组的关系型数据和非关系型数据库中,同时,可以数据库组的数量可以拓展,且数据库组之间相互不影响,进而,可以通过多个数据库组的非关系型数据库和关系型数据库实现高效地同步大量并发数据。
综上,发明人提出本申请的技术方案,包括:接收至少一个数据提供端发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据;根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;将各待写入数据写入对应的关系型数据库和非关系型数据库中。由于各数据提供端对应不同的目标数据库组,在确定出各数据提供端对应的目标数据库组之后,可以由各数据库组将各自对应的待写入数据写入其关系型数据库和非关系型数据库,各数据库组向数据库中写入数据时只占用自身的资源,不会影响其他数据库组,数据同步包括数据写入、数据删除、数据修改和数据查询,因此,本申请的方案能够高效地同步大量并发数据。
本申请提供的数据同步方法、装置、设备及存储介质,旨在解决现有技术的如上技术问题。下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
下面将对本申请实施例提供的数据同步方法的网络架构和应用场景进行介绍。下面的描述涉及附图时,除非另有表示,不同附图中的相同数据表示相同或相似的要素。
图1A是根据本申请实施例提供的一种应用场景对应的网络架构图。图1B是根据本申请实施例提供的另一种应用场景对应的网络架构图。
如图1A所示,本申请实施例提供的一种应用场景对应的网络架构中包括:电子设备11、至少一个数据提供端12和至少一个数据库组13。数据库组13包括一个关系型数据库131和一个非关系型数据库132。电子设备11与各数据库组13通信连接。
数据提供端12与电子设备11通信连接,数据提供端12可以向电子设备11发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据。
电子设备11接收至少一个数据提供端12发送数据写入请求,根据各数据提供端标识确定各数据提供端12对应的目标数据库组13,并将各待写入数据写入对应的关系型数据库131和非关系型数据库132中。
如图1B所示,在图1A的基础上,本申请实施例提供的另一种应用场景对应的网络架构图中还包括至少一个数据消费端14。数据消费端14与电子设备11通信连接,数据消费端14可以向电子设备11发送数据查询请求,数据查询请求中包括查询接口类型、查询授权信息和至少一份待查询数据的标识信息。
电子设备11接收至少一个数据消费端14发送的数据查询请求,根据各查询接口类型确定各数据查询请求的类型,根据各查询授权信息确定各数据查询请求对应的至少一个授权数据库组,并根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询,获得各数据查询请求的查询结果。并且,电子设备还可以将各数据查询请求的查询结果发送给对应的数据消费端14。
下面将结合附图,对本申请的实施例进行描述。以下实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
实施例一
图2是根据本申请实施例一提供的数据同步方法的流程示意图。如图2所示,本申请的执行主体为数据同步装置,该数据同步装置位于电子设备中。本实施例提供的数据同步方法包括步骤201至步骤203。
步骤201,接收至少一个数据提供端发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据。
本实施例中,数据提供端可以是数据生产者设备、也可以是需要往数据库组中存储数据的设备。
可以理解的是,一个数据写入请求中可以包括一份或多份待写入数据。待写入数据可以为结构化数据,也可以为非结构化数据。
数据提供端标识可以为数据提供端的IP地址或用户ID等。
步骤202,根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库。
本实施例中,电子设备中可以预先存储有各数据提供端标识与各数据库组之间的映射关系,并可以根据映射关系确定各数据提供端对应的目标数据库组。
数据库组的数量可以为一组或多组,并且,数据库组的数量可以根据数据生产端的需求进行调整。示例性地,在数据生产端需要写入的数据量增加时,可以增加一组数据库组。在数据生产端删除大量数据时,可以关闭闲置的数据库组。
各数据库组中包括一个关系型数据库和一个非关系型数据库。关系型数据库可以通过将数据以二维表结构的方式进行存储。非关系型数据可以将数据以键值对的方式进行存储。各数据库组可以为分布式也可以为集群,由电子设备对各数据库组进行管理。
步骤203,将各待写入数据写入对应的关系型数据库和非关系型数据库中。
本实施例中,电子设备可以调用各数据库组中关系型数据库和非关系型数据库各自的数据写入接口,将一份待写入数据存储为关系数据库中的一份数据记录以及非关系数据库的中一份数据记录。并且,在写入成功之后,关系型数据库和非关系型数据库各自的数据写入接口均可以向电子设备返回写入成功信息。
同一份待写入数据写入关系型数据库之后的数据记录的标识号与写入非关系数据库中之后的数据记录的标识号相同。
在待写入数据是由二维表结构表示的数据时,可以直接将待写入数据写入关系型数据库。同时,可以遍历二维表结构中各行各列对应的数据,将各行各列的数据转换为键值对之后,再写入非关系型数据库中。其中,待写入数据的标识号可以作为关系型数据库中数据记录的主键。
本实施例提供的数据同步方法,通过接收至少一个数据提供端发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据;根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;将各待写入数据写入对应的关系型数据库和非关系型数据库中。由于各数据提供端对应不同的目标数据库组,在确定出各数据提供端对应的目标数据库组之后,可以由各数据库组将各自对应的待写入数据写入其关系型数据库和非关系型数据库,各数据库组向数据库中写入数据时只占用自身的资源,不会影响其他数据库组,数据同步包括数据写入、数据删除、数据修改和数据查询,因此,本申请的方案能够高效地同步大量并发数据。
作为一种可选的实施方式,在实施例一的基础上,步骤203之后还包括步骤1101至步骤1102。
步骤1101,根据各数据写入请求确定至少一个对应的待通知数据消费端。
本实施例中,电子设备中可以预先存储有各数据库组与其对应的数据消费端之间的映射关系。在数据库组中新增数据之后,电子设备需要及时通知该数据库组对应的数据消费端。数据库组对应的数据消费端可以是有权限访问该数据库组的数据消费端。
电子设备在接收到各数据写入请求,并确定各待写入请求对应的目标数据库组之后,可以根据各数据库组与其对应的数据消费端之间的映射关系,将目标数据库组对应的数据消费端确定为待通知数据消费端。
步骤1102,向各待通知数据消费端发送数据新增消息,若确定数据新增消息发送失败,则将数据新增消息放入新增消息队列中,并在预设时间间隔之后再次向待通知数据消费端发送数据新增消息,直至向待通知数据消费端发送数据新增消息的次数达到预设次数或者确定数据新增消息发送成功,新增消息队列用于临时存储数据新增消息。
本实施例中,电子设备与数据消费端通信连接,在电子设备接收到关系型数据库返回的写入成功信息之后,可以向各目标数据库对应的待通知数据消费端发送数据新增消息。数据新增消息用于通知数据消费端其对应的授权数据库组中增加了新的数据记录,并且用于指示数据消费端向电子设备发送新增知悉消息。
在电子设备向数据消费端发送数据新增消息之后的预设时间段内,若接收到数据消费端发送的新增知悉消息,则确定数据新增消息发送成功;若未接收到数据消费端发送的新增知悉消息,则确定数据新增消息发送失败。
这里,数据消费端可能由于自身负载过大、网络不好等情况未能够收到数据新增消息。因此,电子设备可以多次向数据消费端推送数据新增消息,直至向数据消费端推送数据新增消息的次数达到预设次数或者确定数据新增消息推送成功,以保证数据消费端及时接收到数据新增消息、数据消费端可以及时获取新增的数据记录,实现数据提供端和数据消费端之间高效及时的数据同步。其中,预设次数可以为5次。
实施例二
图3是根据本申请实施例二提供的数据同步方法的流程示意图。如图3所示,本实施例在实施例一的基础上,对步骤203进行细化,则步骤203细化包括步骤301至步骤302。
步骤301,确定各待写入数据的数据序列号,各待写入数据的数据序列号依次递增。
本实施例,电子设备可以根据接收到待写入请求的先后顺序确定各待写入数据的数据序列号。并可以在接收到新的待写入请求后,在上次确定的数据序列号的基础上继续递增,确定出本次待写入请求中各待写入数据的数据序列号。
步骤302,以各待写入数据的数据序列号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库。
本实施例中,标识号用于区分各数据库组中的数据记录。由于待写入数据的数据序列号是依次递增且各不相同到的。因此,电子设备可以以各待写数据的序号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库。避免各待写入数据在写入对应的关系型数据和非关系型数据库时,由关系型数据库和非关系型数据库生成待写入数据的标识号,进而造成各数据库组之间的数据标识号冲突和混乱的情况。
本实施例提供的数据同步方法,通过确定各待写入数据的数据序列号,各待写入数据的数据序列号依次递增;以各待写入数据的数据序列号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库。由于各待写入数据的数据序列号依次递增且各不相同,因此,以各待写入数据的数据序列号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库能够避免各数据库组之间的数据标识号冲突和混乱的情况
作为一种可选的实施方式,在实施例二的基础上,对步骤301中的“确定各待写入数据的数据序列号”进行细化,则细化包括步骤401至步骤403。
步骤401,获取各数据库组的各数据记录中的最大标识号,并将最大标识号确定为缓存序列号。
本实施例中,电子设备包括非易失性内存,缓存序列号存储在非易失性内存中。在电子设备断电之后,非易失性内存中存储的缓存序列号不会丢失。
本实施例中,最大标识号是所有数据库组的所有数据集中的标识号中的最大值。由于各关系型数据库中各数据记录的标识号各不相同,各非关系型数据库中各数据记录的标识号各不相同。因此,可以将各数据库组中各数据记录的标识号进行排序,获得最大标识号,将最大标识号确定为缓存序列号并存储至非易失性内存中。
步骤402,对于各数据写入请求,执行以下操作:
根据缓存序列号确定该数据写入请求中各待写入数据的数据序列号,该待写入请求中各待写入数据的数据序列号依次递增且均大于缓存序列号;
将缓存序列号更新为该待写入请求中各待写入数据的数据序列号中的最大项。
本实施例中,对于任意一个数据写入请求,根据数据写入请求中待写入数据的数量,可以将缓存序列号依次加上预设正数后的数值确定为各待写入数据的数据序列号。
在以各待写入数据的数据序列号作为标识号,将各待写入数据写入存储至对应的数据组库之后,各数据库组的所有数据记录中的最大标识号变化为该待写入请求中最大的数据序列号。因此,可以将缓存序列号更新为该待写入请求中各待写入数据的数据序列号中的最大项,便于确定后续数据写入请求中各待写入数据的数据序列号。
重复执行步骤402,直至电子设备接收的各数据写入请求中各待写入数据均写入对应的数据库组。
作为本实施例的一个示例,缓存序列号为100,预设正数为1,数据写入请求中包括5份待写入数据时,将缓存序列号100依次加1后的数值确定为各待写入数据的数据序列号,各待写入数据的数据序列号依次为101、102、103、104和105。以数据序列号101、102、103、104和105作为标识号,将这5份待写入数据写入该数据写入请求对应的关系型数据库和非关系型数据库中。并将缓存序列号更新为这5份待写入数据的数据序列号中的最大项105。
作为一种可选的实施方式,本实施例中,电子设备可以在确定出各写入数据的数据序列号之后,调用数据写入请求对应的关系型数据库和非关系型数据库各自的数据写入接口,将待写入数据存储至对应的关系型数据库和非关系型数据库中。并且可以在接收到关系型数据库返回的写入成功信息之后,将缓存序列号更新为各待写入数据的数据序列号中的最大项。
本实施例提供的数据同步方法,通过获取各数据库组的各数据记录中的最大标识号,并将最大标识号确定为缓存序列号;对于各数据写入请求,执行以下操作:根据缓存序列号确定该数据写入请求中各待写入数据的数据序列号,该待写入请求中各待写入数据的数据序列号依次递增且均大于缓存序列号;将缓存序列号更新为该待写入请求中各待写入数据的数据序列号中的最大项。由于各待写入数据的数据序列号是根据缓存序列号确定的,而缓存序列号存储在非易失性内存中,断电不丢失,因此,能够使得各待写入数据的数据序列号各不相同,避免各数据库组之间的标识号相互冲突,同时,在电子设备断电重启后,也能够快速获取到断电前最新的缓存序列号。
实施例三
图4是根据本申请实施例三提供的数据同步方法的流程示意图。如图4所示,本实施例提供的数据同步方法,在上述任意一个实施例的基础上,还包括步骤501至步骤504。
步骤501,接收至少一个数据消费端发送的数据查询请求,数据查询请求中包括查询接口类型、查询授权信息和至少一份待查询数据的标识信息。
本实施例中,数据消费端可以是数据消费者设备、也可以是需要从数据库组中读取数据的设备。数据消费端也可以与上述数据提供端为同一设备。
步骤502,根据各查询接口类型确定各数据查询请求的类型。
本实施例中,查询接口类型包括结构化查询语言(Structured Query Language,sql)和超文本传输协议(Hyper Text Transfer Protocol,http)。
查询接口类型为http时,数据格式可以为JS对象简谱,(JavaScript ObjectNotation,json)文档格式。http协议足够灵活且具有较好的网络穿透性,能够满足数据消费端和数据生产端在不同场景下对数据的需求。
步骤503,根据各查询授权信息确定各数据查询请求对应的至少一个授权数据库组。
本实施例中,查询授权信息可以为会话授权码、数据消费端识别码等。电子设备中可以预先存储有各查询授权信息与授权数据库组之间的映射关系。查询授权信息至少对应一个授权数据库组。或者,查询授权信息中可以包括授权数据库组标识,电子设备可以根据授权数据库组标识确定该数据查询请求对应的至少一个授权数据库。可以理解的是,电子设备只会在授权数据库组中查询该数据查询请求中的各待查询数据。
步骤504,根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询。
本实施例中,待查询数据的标识信息可以是关系型数据库中的字段、字段值等,也可以是非关系型数据库中的键key、键值value等。
本实施例中,数据查询请求的类型为http时,待查询数据的标识信息为非关系型数据库中的键或键值,因此,可以在该数据查询请求对应的各授权数据组中的非关系型数据库中,以待查询数据的标识信息作为关键字,对各待查询数据进行查询。
示例性地,数据查询请求的类型为http时,待查询数据的标识信息为“key=1001”,以“key=1001”作为关键字在各授权数据组中的非关系型数据库中,查询得到键1001对应的键值为name,则待查询数据的查询结果为name。
本实施例中,数据查询请求为sql时,待查询数据的标识信息为关系型数据库中的字段或字段值,因此,可以在该数据查询请求对应的各授权数据组中的关系型数据库中,以待查询数据的标识信息作为关键字,对各待查数据进行查询。
示例性地,数据查询请求的类型为sql时,待查询数据的标识信息为字段u.cid=10011027且字段d.cid=10011027。因此,可以在该数据查询请求对应的各授权数据组中的关系型数据库中,查询字段u.cid的字段值为10011027,并且字段d.cid的字段值10011027的数据记录,并且可以将该数据记录确定为待查询数据的查询结果。
本实施例提供的数据同步方法,通过接收至少一个数据消费端发送的数据查询请求,数据查询请求中包括查询接口类型、查询授权信息和至少一份待查询数据的标识信息;根据各查询接口类型确定各数据查询请求的类型;根据各查询授权信息确定各数据查询请求对应的至少一个授权数据库组;根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询。由于根据数据查询请求的类型将带查询数据分配至关系型数据库和非关系型数据库中进行查询,因此,能够在满足数据消费端的需求的前提下,尽可能地提高查询速度,进而实现更高效地同步大量并发数据。
作为一种可选的实施方式,在实施例四的基础上,数据查询请求的类型包括复杂查询和简单查询,并且对步骤504进行细化,则步骤504细化包括步骤601至步骤602。
步骤601,若确定数据查询请求的类型为简单查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询。
本实施例中,简单查询可以是查询数据库中某个键对应的值,也可以查询键值为某个预设值的数据记录的标识号。
复杂查询可以是查询某个字段对应的值、字段值为某个预设值的数据记录中的其他字段值、某几个预设字段值为预设值的数据记录的标识号等。
本实施例,可以将查询接口类型为http的数据查询请求的类型确定为简单查询,将查询接口类型为sql的数据查询请求的类型确定为复杂查询。
本实施例中,非关系型数据库可以包括一个主库和至少一个从库。对于简单查询,可以在非关系型数据库的多个从库中对各待查询数据进行查询。各非关系型数据从库中待查询数据的数量可以由从库数量和待查询数据的数量确定。示例性地,可以将各待查询数据平均分配至各非关系型数据从库中进行查询,以快速获取查询结果,提高数据同步效率。
步骤602,若确定数据查询请求的类型的复杂查询,则在数据查询请求对应的各授权数据库组的关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询。
本实施例中,关系型数据库包括一个主库和至少一个从库。对于复杂查询,可以在关系型数据库的多个从库中对各待查询数据进行查询。各关系型数据从库中待查询数据的数量可以由从库数量和待查询数据的数量确定。示例性地,可以将各待查询数据平均分配至各关系型数据从库中进行查询,以快速获取查询结果,提高数据同步效率。
本实施例提供的数据同步方法,通过数据查询请求的类型包括复杂查询和简单查询,若确定数据查询请求的类型为简单查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询;若确定数据查询请求的类型的复杂查询,则在数据查询请求对应的各授权数据库组的关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询。由于在非关系型数据库中进行简单查询,在关系型数据库中进行复杂查询,因此,对于不同类型的数据查询结果,均能够尽快获取到查询结果,进而提高数据同步效率。
作为一种可选的实施方式,在上述任意一个实施例的基础上,数据查询请求的类型包括综合查询,待查询数据的标识信息包括至少一个待查询项的标识信息,并且对步骤504进行细化,则步骤504细化包括步骤701至步骤702。
步骤701,若确定数据查询请求的类型为综合查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照各待查询项的标识信息进行查询,并确定各待查询项的查询结果;各待查询项的查询结果为有结果或无结果。
本实施例中,数据查询请求的类型包括综合查询。本实施例中,可以将查询接口类型为sql查询的数据查询请求的类型确定为综合查询。
待查询数据的表示信息包括至少一个待查询项的标识信息。待查询项可以为字段、字段值、主键值等等。其中,字段包括行字段和列字段中的至少一项。
本实施例中,可以优先在数据查询请求对应的各授权数据库的非关系型数据库中对待查询项的标识信息进行查询,并判断查询结果为有结果或无结果。这里,由于非关系型数据库中的数据不如关系型数据库中全面,因此,可能存在无查询结果的情况。
步骤702,若确定存在任意一个待查询项的结果为无结果,则在数据查询请求对应的各授权数据库组的关系型数据中对无结果的待查询项按照对应的标识信息进行查询。
本实施例中,对于任意一条待查询数据,若确定存在任意一个待查询项的结果为无结果,则在该数据查询请求对应的授权关系型数据库中,将这些无结果的待查询项按照对应的标识信息进行查询,获得各待查询项的查询结果。
将各待查询项的查询结果进行组合,获得该查询数据的查询结果,并可以将该待查询项的查询结果发送给对应的数据消费端。
本实施例提供的数据同步方法,通过若确定数据查询请求的类型为综合查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照各待查询项的标识信息进行查询,并确定各待查询项的查询结果;各待查询项的查询结果为有结果或无结果;若确定存在任意一个待查询项的结果为无结果,则在数据查询请求对应的各授权数据库组的关系型数据中对无结果的待查询项按照对应的标识信息进行查询。由于首先在非关系型数据库中进行查询,快速确定出能够在非关系型数据库查询到结果的待查询项,再将无结果的待查询项在关系型数据库中进行查询,因此,能够快速且完整的确定出待查询数据的查询结果,提高数据同步效率。
实施例四
图5是根据本申请实施例四提供的数据同步方法的流程示意图。如图5所示,本实施例提供的数据同步方法,在上述任意一个实施例的基础上,还包括步骤801至步骤802。
步骤801,获取各关系型数据库中的各关系型数据记录的校验码和各非关系型数据库中的各非关系型数据记录的校验码。
本实施例中,电子设备在向关系型数据库和非关系型数据库中写入数据时,可以生成对应的数据校验码。示例性地,可以利用循环冗余校验(Cyclic Redundancy Check,CRC)的算法生成校验码。
本实施例中,电子设备可以按照预设时间周期生成全量校验任务,全量校验任务用于对非关系型数据中的各非关系型数据进行校验和订正。
电子设备执行全量校验任务,依次从各数据库组中获取标识号相同的关系型数据记录和非关系型数据记录的校验码。并将关系型数据记录的校验码和非关系型数据记录的校验码进行对比。
步骤802,采用各关系型数据对各非关系型数据进行校验和订正。
本实施例中,若对比结果相同,则完成校验,并获取下一组标识号相同的关系型数据记录和非关系型数据记录的校验码再进行对比。若对比结果不同,则以关系型数据中的数据记录对非关系型数据库中的数据记录进行订正。
本实施例提供的数据同步方法,通过获取各关系型数据库中的各关系型数据记录的校验码和各非关系型数据库中的各非关系型数据记录的校验码;采用各关系型数据对各非关系型数据进行校验和订正。由于以关系型数据库中的关系型数据记录对非关系型数据库中的非关系型数据记录进行校验,因此,能够保证各数据库组中数据的实时一致性和最终一致性。
作为一种可选的实施方式,本实施例提供的数据同步方法,在上述任意一个实施例的基础上,还包括901至步骤902。
步骤901,接收至少一个数据提供端发送的数据修改请求,数据修改请求中包括以及至少一个数据修改信息,数据修改信息可以包括至少一个待修改数据记录的标识号及其对应的至少一个待修改项。
本实施例中,电子设备在将待写入数据成功写入对应的数据库组之后,可以将各待写入数据存储在关系型数据库或非关系型数据库中的数据记录的标识号发送给对应的数据提供端。待修改项可以为字段、字段值等。
步骤902,根据待修改数据记录的标识号及其对应的至少一个待修改项对待修改数据记录所在待修改数据库组的关系型数据库中的待修改数据记录进行修改。
本实施例中,电子设备在接收到数据提供端发送的数据修改请求之后,可以根据待修改数据记录的标识号确定其所在的待修改数据库组,并对待修改数据库组中的关系型数据库中的各待修改数据记录的各待修改项进行修改。
这里,由于电子设备会按照预设时间周期生成全量校验任务,对非关系型数据中的各非关系型数据进行校验和订正。因此,在修改数据记录时可以仅修改关系型数据库的数据记录,而非关系型数据库中的数据记录可以由全量校验任务进行修改。
作为一种可选的实施方式,本实施例提供的数据同步方法,在步骤901之后,还包括步骤1001至步骤1002。
步骤1001,根据各数据修改信息确定至少一个对应的待推送数据消费端。
本实施例中,电子设备可以根据待修改数据记录的标识号确定其所在的待修改数据库组,电子设备中可以预先存储有各数据消费端与授权数据库组之间的映射关系,并可以根据各数据消费端与授权数据库组之间的映射关系确定待修改数据库组对应的待推送数据消费端。
步骤1002,向各待推送数据消费端发送数据变更消息,若确定数据变更消息发送失败,则将数据变更消息放入变更消息队列中,并在预设时间间隔之后再次向待推送数据消费端发送数据变更消息,直至向待推送数据消费端发送数据变更消息的次数达到预设次数或者确定数据变更消息发送成功,变更消息队列用于临时存储数据变更消息。
这里,变更消息队列与前文所述的新增消息队列可以为同一队列。
本实施例中,电子设备可以通过与数据消费端之间的通信连接,向数据消费端发送数据变更消息。数据变更消息用于通知数据消费端其对应的授权数据库组中的数据记录发生变更,并且,用于指示数据消费端向电子设备发送变更知悉消息。
在电子设备向数据消费端发送数据变更消息之后的预设时间段内,若接收到数据消费端发送的变更知悉消息,则确定数据变更消息发送成功;若未接收到数据消费端发送的变更知悉消息,则确定数据变更消息发送失败。
数据消费端可能由于自身原因未能够及时收到数据变更消息,因此,电子设备可以多次向数据消费端推送数据变更消息,直至向数据消费端推送数据变更消息的次数达到预设次数或者确定数据变更消息推送成功,以确定数据消费端能够及时接收到数据变更消息。其中,预设次数可以为5次。
实施例五
图6是根据本申请实施例五提供的数据同步装置的结构示意图。如图6所示,本实施例提供的数据同步装置60包括:接收模块61、确定模块62和写入模块63。
接收模块61用于,接收至少一个数据提供端发送数据写入请求,数据写入请求中包括数据提供端标识和至少一份待写入数据,
确定模块62用于,根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库,
写入模块63用于,将各待写入数据写入对应的关系型数据库和非关系型数据库中。
作为一种可选的实施方式,写入模块63具体用于,确定各待写入数据的数据序列号,各待写入数据的数据序列号依次递增;以各待写入数据的数据序列号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库。
作为一种可选的实施方式,写入模块63具体还用于,获取各数据库组的各数据记录中的最大标识号,并将最大标识号确定为缓存序列号;对于各数据写入请求,执行以下操作:根据缓存序列号确定该数据写入请求中各待写入数据的数据序列号,该待写入请求中各待写入数据的数据序列号依次递增且均大于缓存序列号;将缓存序列号更新为该待写入请求中各待写入数据的数据序列号中的最大项。
作为一种可选的实施方式,数据同步装置60还包括查询模块,查询模块用于,接收至少一个数据消费端发送的数据查询请求,数据查询请求中包括查询接口类型、查询授权信息和至少一份待查询数据的标识信息;根据各查询接口类型确定各数据查询请求的类型;根据各查询授权信息确定各数据查询请求对应的至少一个授权数据库组;根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询。
作为一种可选的实施方式,数据查询请求的类型包括复杂查询和简单查询,查询模块具体用于,若确定数据查询请求的类型为简单查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询;若确定数据查询请求的类型的复杂查询,则在数据查询请求对应的各授权数据库组的关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询。
作为一种可选的实施方式,数据查询请求的类型包括综合查询,查询模块具体还用于,若确定数据查询请求的类型为综合查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照各待查询项的标识信息进行查询,并确定各待查询项的查询结果;各待查询项的查询结果为有结果或无结果;若确定存在任意一个待查询项的结果为无结果,则在数据查询请求对应的各授权数据库组的关系型数据中对无结果的待查询项按照对应的标识信息进行查询。
作为一种可选的实施方式,数据同步装置60还包括校验模块,校验模块用于,获取各关系型数据库中的各关系型数据记录的校验码和各非关系型数据库中的各非关系型数据记录的校验码;采用各关系型数据对各非关系型数据进行校验和订正。
本实施例提供的数据同步装置可以执行上述任意一个实施例中提供的数据同步方法,具体的实现方式与原理类似,此处不再赘述。
实施例六
图7是根据本申请实施例六提供的电子设备的结构示意图。如图7所示,本实施例提供的电子设备70包括存储器71、处理器72和收发器73。
存储器71、处理器72和收发器73电路互连。
存储器71存储计算机执行指令。
收发器73用于收发数据。
处理器72执行存储器71存储的计算机执行指令,实现如上述任意一个实施例中提供的数据同步方法,具体的实现方式与原理类似,此处不再赘述。
存储器71、处理器72和收发器73之间可以通过总线实现电路互连。
存储器71可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘等。
在示例性实施例中,电子设备70可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述数据同步方法。
本申请的实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如上述任意一个实施例中提供的数据同步方法。示例性地,计算机可读存储介质可以为只读存储器(ROM)、随机存取存储器(RAM)、磁带、软盘和光数据存储设备等。
应该理解,上述的设备实施例仅是示意性的,本申请的设备还可通过其它的方式实现。例如,上述实施例中模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,多个模块可以结合,或者可以集成到另一个系统,或一些特征可以忽略或不执行。
另外,若无特别说明,在本申请各个实施例中的各功能模块可以集成在一个模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一起。上述集成的模块既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
应该理解,上述的设备实施例仅是示意性的,本申请的设备还可通过其它的方式实现。例如,上述实施例中模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,多个模块或组件可以结合,或者可以集成到另一个系统,或一些特征可以忽略或不执行。
另外,若无特别说明,在本申请各个实施例中的各功能模块可以集成在一个模块中,也可以是各个单元/模块单独物理存在,也可以两个或两个以上模块集成在一起。上述集成的单元/模块既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
进一步需要说明的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (10)

1.一种数据同步方法,其特征在于,包括:
接收至少一个数据提供端发送数据写入请求,所述数据写入请求中包括数据提供端标识和至少一份待写入数据;
根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;
将各待写入数据写入对应的关系型数据库和非关系型数据库中。
2.根据权利要求1所述的方法,其特征在于,所述将各待写入数据写入对应的关系型数据库和非关系型数据库中,包括:
确定各待写入数据的数据序列号,各待写入数据的数据序列号依次递增;
以各待写入数据的数据序列号作为标识号,将各待写入数据写入对应的关系型数据库和非关系型数据库。
3.根据权利要求2所述的方法,其特征在于,所述确定各待写入数据的数据序列号,包括:
获取各数据库组的各数据记录中的最大标识号,并将所述最大标识号确定为缓存序列号;
对于各数据写入请求,执行以下操作:
根据所述缓存序列号确定该数据写入请求中各待写入数据的数据序列号,该待写入请求中各待写入数据的数据序列号依次递增且均大于所述缓存序列号;
将所述缓存序列号更新为该待写入请求中各待写入数据的数据序列号中的最大项。
4.根据权利要求1所述的数据同步方法,其特征在于,还包括:
接收至少一个数据消费端发送的数据查询请求,所述数据查询请求中包括查询接口类型、查询授权信息和至少一份待查询数据的标识信息;
根据各所述查询接口类型确定各数据查询请求的类型;
根据各查询授权信息确定各数据查询请求对应的至少一个授权数据库组;
根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询。
5.根据权利要求4所述的方法,其特征在于,所述数据查询请求的类型包括复杂查询和简单查询;所述根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询,包括:
若确定数据查询请求的类型为简单查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询;
若确定数据查询请求的类型的复杂查询,则在数据查询请求对应的各授权数据库组的关系型数据库中按照待查询数据的标识信息对各待查询数据进行查询。
6.根据权利要求4所述的方法,其特征在于,所述数据查询请求的类型包括综合查询;所述待查询数据的标识信息包括至少一个待查询项的标识信息;所述根据各数据查询请求的类型在各数据查询请求对应的各授权数据库组中按照待查询数据的标识信息对各待查询数据进行查询,包括:
若确定数据查询请求的类型为综合查询,则在数据查询请求对应的各授权数据库组的非关系型数据库中按照各待查询项的标识信息进行查询,并确定各待查询项的查询结果;各待查询项的查询结果为有结果或无结果;
若确定存在任意一个待查询项的结果为无结果,则在数据查询请求对应的各授权数据库组的关系型数据中对无结果的待查询项按照对应的标识信息进行查询。
7.根据权利要求1-6中任一项所述的方法,其特征在于,还包括:
获取各关系型数据库中的各关系型数据记录的校验码和各非关系型数据库中的各非关系型数据记录的校验码;
采用各关系型数据对各非关系型数据进行校验和订正。
8.一种数据同步装置,其特征在于,包括:
接收模块,用于接收至少一个数据提供端发送数据写入请求,所述数据写入请求中包括数据提供端标识和至少一份待写入数据;
确定模块,用于根据各数据提供端标识确定各数据提供端对应的目标数据库组,各数据库组包括一个关系型数据库和一个非关系型数据库;
写入模块,用于将各待写入数据写入对应的关系型数据库和非关系型数据库中。
9.一种电子设备,其特征在于,包括:存储器、处理器和收发器;
所述存储器、所述处理器和所述收发器电路互连;
所述存储器存储计算机执行指令;
所述收发器用于收发数据;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-7任一项所述的方法。
CN202211190778.4A 2022-09-28 2022-09-28 数据同步方法、装置、设备及存储介质 Pending CN115510161A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211190778.4A CN115510161A (zh) 2022-09-28 2022-09-28 数据同步方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211190778.4A CN115510161A (zh) 2022-09-28 2022-09-28 数据同步方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115510161A true CN115510161A (zh) 2022-12-23

Family

ID=84506335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211190778.4A Pending CN115510161A (zh) 2022-09-28 2022-09-28 数据同步方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115510161A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116204542A (zh) * 2023-04-28 2023-06-02 广东广宇科技发展有限公司 一种数据库快速读写处理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116204542A (zh) * 2023-04-28 2023-06-02 广东广宇科技发展有限公司 一种数据库快速读写处理方法

Similar Documents

Publication Publication Date Title
CN111338766B (zh) 事务处理方法、装置、计算机设备及存储介质
US20170031948A1 (en) File synchronization method, server, and terminal
CN115033722B (zh) 一种加速图数据库数据查询的方法、系统、装置和介质
CN111414403A (zh) 数据访问方法和装置、数据存储方法和装置
US20230102617A1 (en) Repeat transaction verification method, apparatus, and device, and medium
US20230359628A1 (en) Blockchain-based data processing method and apparatus, device, and storage medium
CN113704790A (zh) 一种异常日志信息汇总方法及计算机设备
CN115510161A (zh) 数据同步方法、装置、设备及存储介质
CN113704359A (zh) 一种时序数据库多数据副本的同步方法、系统以及服务器
WO2023207529A1 (zh) 数据处理方法、装置及设备、介质、产品
CN111752941B (zh) 一种数据存储、访问方法、装置、服务器及存储介质
CN107967265B (zh) 文件的访问方法、数据服务器和文件访问系统
CN111428114A (zh) Elasticsearch搜索引擎的索引创建方法及装置
CN110597808B (zh) 分布式数据库表连接方法、装置、系统、服务器及介质
WO2023142605A1 (zh) 一种基于区块链的数据处理方法和相关装置
CN111367948A (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
CN116303789A (zh) 多分片多副本数据库并行同步方法、装置及可读介质
CN112527900B (zh) 一种数据库读多副本一致性的方法、装置、设备及介质
CN113779052A (zh) 数据更新方法、装置、设备及存储介质
CN113590711A (zh) 一种高弹性可扩展的多链数据分级共享存储系统及方法
CN117390078B (zh) 数据处理方法、装置、存储介质和计算机设备
WO2023160040A1 (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
CN102314505A (zh) 基于偏序关系的缓冲区版本产生方法
WO2023143061A1 (zh) 一种数据访问方法及其数据访问系统
CN115604667A (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