CN113934792B - 分布式数据库的处理方法、装置、网络设备和存储介质 - Google Patents
分布式数据库的处理方法、装置、网络设备和存储介质 Download PDFInfo
- Publication number
- CN113934792B CN113934792B CN202010604834.9A CN202010604834A CN113934792B CN 113934792 B CN113934792 B CN 113934792B CN 202010604834 A CN202010604834 A CN 202010604834A CN 113934792 B CN113934792 B CN 113934792B
- Authority
- CN
- China
- Prior art keywords
- sequence
- data
- information
- processed
- processing
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出一种分布式数据库的处理方法、装置、网络设备和存储介质,其中,该分布式数据库的处理方法包括:对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果;其中,待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列。使得序列处理结果仅能够被分布式数据节点使用,保证序列的唯一递增性。当用户使用序列处理结果在整个数据库集群上搜索数据时,加快了数据搜索的速度,提高用户体验度。
Description
技术领域
本申请涉及数据库管理技术领域,具体涉及一种分布式数据库的处理方法、装置、网络设备和存储介质。
背景技术
随着互联网行业迅猛发展,数据量呈爆发性增长。传统单机数据库越来越不能满足用户的业务需求,各行业用户都希望能够使用分布式数据库来进行数据的管理。但是,传统单机数据库的使用习惯已形成,用户很难适应分布式数据库的使用方法,尤其涉及到传统单机数据库中常用的自增长序列在分布式数据库中的应用问题。
序列(sequence)是数据库***中按照一定规则自增的数列,因为序列具有自增性,所以序列中的数字不会重复。序列主要为数据库***持续提供唯一的自增长的数值,序列可以作为数据表的主键,也可以作为数据操作时的唯一标识等。但是,分布式数据库中的数据搜索的效率较低,用户体验差。
发明内容
本申请提供用于分布式数据库的处理方法、装置、网络设备和存储介质,用于克服现有技术中由于分布式数据库无法提供唯一的序列而导致的数据搜索效率低的问题。
本申请实施例提供一种分布式数据库的处理方法,包括:对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果;其中,待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列。
本申请实施例提供一种分布式数据库的处理装置,包括:获取模块,用于获取数据库集群中的待处理信息;处理模块,用于对待处理信息进行排序,生成唯一递增的序列处理结果;其中,待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列。
本申请实施例提供一种网络设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本申请实施例中的任意一种分布式数据库的处理方法。
本申请实施例提供了一种存储介质,存储介质存储有计算机程序,计算机程序被处理器执行时实现本申请实施例中的任意一种分布式数据库的处理方法。
本申请实施例提供的分布式数据库的处理方法、装置、网络设备和存储介质,通过对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果,保证了序列的唯一性和自增性。由于待处理信息是来自于不同线程的信息,数据库集群包括分布式数据节点,使得序列处理结果仅能够被对应的分布式数据节点使用,保证了序列的唯一性。当用户使用序列处理结果在整个数据库集群上搜索数据时,加快了数据搜索的速度,提高用户体验度。
关于本申请的以上实施例和其他方面以及其实现方式,在附图说明、具体实施方式和权利要求中提供更多说明。
附图说明
图1示出本申请一实施例中的分布式数据库的处理方法的流程示意图。
图2示出本申请又一实施例中的分布式数据库的处理方法的流程示意图。
图3示出本申请一实施例中的分布式数据库的处理装置的结构示意图。
图4示出本申请一实施例中的分布式数据库的处理***的组成方框图。
图5示出本申请又一实施例中的分布式数据库的处理***的组成方框图。
图6a示出本申请实施例中的全局序列管理器备机对数据进行全量备份时存在异常的处理流程示意图。
图6b示出本申请实施例中的全局序列管理器主机对数据进行恢复时的处理流程示意图。
图7示出能够实现根据本发明实施例的方法和装置的计算设备的示例性硬件架构的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在分布式数据库中,由于数据是处于不同分片上的,对各个数据的操作是互相隔离的,导致各分片上的数据对应的序列不唯一,用户在整个数据库集群上搜索数据时,无法为用户提供唯一的序列,使得数据搜索的效率较低,用户体验差。
图1是本申请实施例中的分布式数据库的处理方法的流程示意图,该方法可应用于分布式数据库的处理装置。如图1所示,包括:
步骤101,获取数据库集群中的待处理信息。
其中,待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列。
需要说明的是,数据库集群中创建的分布式数据库可以有序列,也可以没有序列。一个序列对应一个分布式数据库,每个分布式数据库中可以有多个序列(例如,序列1、序列2等)。若某个分布式数据库中没有序列,则该分布式数据库无法使用序列的相关功能。
例如,应用发送多个待处理的结构化查询语言(Structured Query Language,SQL)语句给分布式数据库的处理装置,分布式数据库的处理装置通过多个不同的线程对待处理的SQL语句进行解析,获得待处理信息。该待处理信息包括多条需处理的序列信息,将一条待执行的SQL语句发送至对应的数据库节点上执行,可获得一条需处理的序列信息的处理结果。
步骤102,对待处理信息进行排序,生成唯一递增的序列处理结果。
需要说明的是,待处理信息中可包括序列创建、序列申请、序列删除等信息,使得分布式数据库的处理装置能够针对不同的序列操作,对待处理信息进行分类,然后依照不同的类别,对待处理信息进行处理,生成唯一递增的序列处理结果。
在一个具体实现中,步骤102可采用如下方式实现。依据待处理信息的到达顺序对待处理信息进行如下操作中的任意一项,生成唯一递增的序列处理结果:将待处理信息对应的序列添加至序列集合中;从序列集合中删除待处理信息对应的序列;依据待处理信息对序列集合进行修改。
其中,序列处理结果包括序列,序列是数据库集群中按照一定规则自增的数字,因为自增所以不会重复,保证了序列的唯一性。序列可以作为代理主键,用于识别数据;还可以用于记录数据库中最新变化的语句,只要数据库中的语句有变化(例如,***语句或删除语句等),序列都会随着更新,故可根据序列来筛选出更新的语句。以上对于序列的使用方式仅是举例说明,可根据具体情况具体设定,其他未说明的序列的使用方式也在本申请的保护范围之内,在此不再赘述。
例如:第一待处理信息先到达,第二待处理信息后到达,则会先处理第一待处理信息(例如,为第一待处理信息分配序列100),然后再处理第二待处理信息(例如,为第二待处理信息分配的序列为101),使得获得的序列处理结果为:序列100和序列101,以保证序列是唯一递增的,避免出现两个序列为100的序列。
在本实施例中,通过依据待处理信息的到达顺序对待处理信息进行处理,生成唯一递增的序列处理结果,保证了序列的唯一性和自增性。由于待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,该序列集合包括序列,当用户使用序列处理结果在整个数据库集群上搜索数据时,加快了数据搜索的速度,提高用户体验度。
申请实施例提供了另一种可能的实现方式,其中,在步骤101之前,还包括:
步骤103,接收应用发送的数据库处理语句。
步骤104,对数据库处理语句进行解析,获得数据定义语言和数据操纵语言。
其中,数据定义语言(Data Definition Language,DDL)是结构化查询语言(Structured Query Language,SQL)集合中负责数据结构定义与数据库对象定义的语言,DDL负责对数据库中的对象进行创建、修改、删除、索引和存储等操作。例如,建立数据库、建立数据表、建立数据表索引、建立查看表等操作。DDL须由计算机软件进行编译,转换为便于计算机存储、查询和操作的格式,完成这个转换工作的程序称为模式编译器。数据操纵语言(Data Manipulation Language,DML),用户通过它可以实现对数据库的基本操作,例如,DML负责对数据库中的数据进行***、修改和删除等操作。例如,将某个数据***到已生成的数据库或数据表中,删除数据表中的某个数据,或,对数据表中的某些数据进行修改等操作。
步骤105,对数据库定义语言和数据操纵语言进行分析,提取待处理信息。
例如,通过对DDL和DML进行分析,获得DDL中的数据表所对应的数据库节点为数据库节点A,同时,DML语句中的数据对应的数据库节点也是数据库节点A,则将以上两条信息进行合并,获得与数据库节点A对应的待处理信息。
在一个具体实现中,步骤105可采用如下方式实现。对数据库定义语言和数据操纵语言进行分析,获得N个序列处理需求;对N个序列处理需求进行批量处理,生成待处理信息,其中,N为大于或等于1的整数。
通过对N个序列处理需求进行批量处理,减少处理次数,避免消息冗余和数据库性能下降,提升了数据处理速度。
在本实施例中,通过多个不同的线程对数据库定义语言和数据操纵语言进行分析,提取待处理信息,然后将待处理信息进行批量处理,减少数据处理次数,避免消息冗余和数据库性能下降,提升了数据处理速度。
申请实施例提供了另一种可能的实现方式,其中,在步骤101之前,还包括:依据分布式数据节点的处理能力对分布式数据节点进行集群的划分,获得数据库集群。
在本实施例中,通过依据分布式数据节点的处理能力对分布式数据节点进行集群的划分,使得能够让处理能力高的分布式数据节点可以处理较复杂的数据,处理能力较低的分布式数据节点处理较简单的数据,提升了数据库的工作效率。并且,采用数据库集群的方式来对各个分布式数据节点进行管理,在数据库集群的层面上对数据进行隔离,使得每个数据库集群上的序列信息保证唯一递增性,当用户在该数据库集群中查询某些数据时,能够快速找到需要的数据,提升用户体验度。
本申请实施例提供了另一种可能的实现方式,其中,在步骤102之后,还包括如下步骤。
步骤106,依据序列处理结果,将数据库处理语句发送至分布式数据节点进行处理。
例如,序列处理结果包括多个序列,将序列1对应的待处理的SQL语句,发送至第一分布式数据节点中进行处理,生成第一数据处理结果;将序列2对应的待处理的SQL语句,发送至第二分布式数据节点中进行处理,生成第二数据处理结果;……;将序列n对应的待处理的SQL语句,发送至第n分布式数据节点中进行处理,生成第n数据处理结果。使得能够并行的对多个待处理的SQL语句进行处理,提升数据处理效率。
步骤107,响应于分布式数据节点反馈的数据处理结果,将数据处理结果转发给应用。
例如,将第一分布式数据节点反馈的第一数据处理结果,通过第1处理线程反馈至应用,将第二分布式数据节点反馈的第二数据处理结果,通过第2处理线程4212反馈至应用,……,将第n分布式数据节点反馈的第n数据处理结果,通过第n处理线程反馈至应用。并发的处理线程提升了数据处理速度,提升用户体验度。
在本实施例中,通过将序列处理结果,通过不同的处理线程发送至对应的分布式数据节点进行处理,并将各个分布式数据节点反馈的数据处理结果再通过对应的处理线程反馈至应用,提升了数据处理效率,并使得应用能够快速获得数据处理结果,提升用户体验度。
图2是本申请又一实施例中的分布式数据库的处理方法的流程示意图。该分布式数据库的处理方法包括如下步骤。
步骤201,获取数据库集群中的待处理信息。
步骤202,对待处理信息进行排序,生成唯一递增的序列处理结果。
需要说明的是,本实施例中的步骤201~202与上一实施例中的步骤101~102相同,在此步骤赘述。
步骤203,将序列处理结果同步至第二全局序列管理器中。
其中,第二全局序列管理器是第一全局序列管理器的备份管理器,第一全局序列管理器包括处理线程。
例如,第二全局序列管理器和第一全局序列管理器互为备份管理器,当第一全局序列管理器发射故障时,使用第二全局序列管理器对待处理信息进行处理,生成唯一递增的序列处理结果;对应的,当第二全局序列管理器发射故障时,可以使用第一全局序列管理器对待处理信息进行处理,生成唯一递增的序列处理结果。
在一些具体实现中,全局序列管理器还可以采用集群的形式实现,例如,全局序列管理器包括一台全局序列管理器主机和多台全局序列管理器备机,保证有多个持有完整序列备份数据的全局序列管理器备机能够在全局序列管理器主机发生故障时,接替全局序列管理器主机继续进行工作,维持数据库序列功能的正常使用。
在本实施例中,通过将序列处理结果同步至第二全局序列管理器中,使得能够对序列处理结果进行备份,避免数据的丢失,保证在第一全局序列管理器出现故障时,第二全局序列管理器可以接替在第一全局序列管理器,继续对待处理信息进行排序,维持数据库序列功能的正常使用。提升用户体验度。
在一些具体实现中,在步骤203之后,还包括:每间隔预设时长,对第一全局序列管理器中的数据进行全量备份。
例如,第一全局序列管理器每间隔10分钟,对数据进行一次全量备份,即将数据写入磁盘文件中。通过定时对第一全局序列管理器中的数据进行全量备份,保证数据的安全性。
在一些具体实现中,在步骤108之后,还包括:统计待处理信息的数量;依据待处理信息的数量和预设序列阈值,对第一全局序列管理器中的数据进行全量备份。
例如,对接收到的待处理信息的数量进行统计,若该待处理信息的数量大于预设序列阈值(例如,预设序列阈值为20000条)时,则需要对第一全局序列管理器中的数据进行全量备份,以保证实时数据的安全性。
在一些具体实现中,在对第一全局序列管理器中的数据进行全量备份的步骤之后,还包括:在第一全局序列管理器发生故障时,使用第二全局序列管理器替换第一全局序列管理器;在第一全局序列管理器的故障恢复时,使用第二全局序列管理器中的序列数据作为恢复数据,对第一全局序列管理器中的数据进行恢复,获得恢复后的序列数据;对恢复后的序列数据进行持久化处理。
需要说明的是,其中的持久化处理,包括与数据库相关的各种操作。例如,把恢复后的序列数据写入磁盘文件中,若第一全局序列管理器宕机,则第二全局序列管理器会接替第一全局序列管理器继续为数据库提供服务,待第一全局序列管理器恢复后,第一全局序列管理器会从第二全局序列管理器中获取最新的序列信息,并写入到自己的磁盘文件中,以保证恢复后的序列数据被第一全局序列管理器以磁盘文件的形式保存下来,提升容灾能力。此时若第一全局序列管理器和第二全局序列管理器均宕机,然后第一全局序列管理器恢复,则可以从磁盘文件中读出最新的序列信息,以保证序列信息的唯一递增性。
持久化处理还可以是把域对象永久保存到数据库中;更新数据库中域对象的状态;从数据库中删除一个域对象;根据特定的标识,把一个域对象从数据库加载到内存中;根据特定的查询条件,把符合查询条件的一个或多个域对象从数据库加载到内存中等等。以上对于持久化处理仅是举例说明,可根据具体情况具体设定,其他未说明的持久化处理方式也在本申请的保护范围之内,在此不再赘述。
对恢复后的序列数据进行持久化处理,不仅封装了数据访问细节,为大部分业务逻辑提供面向对象的接口函数;而且可以减少访问数据库数据的次数,增加应用程序的执行速度;并且持久化处理的代码重用性高,可以完成大部分的数据库操作;同时,持久化处理是不依赖于底层数据库和上层业务逻辑实现的,在更换数据库时只需修改该数据库对应的配置文件即可。
通过使用第二全局序列管理器替换第一全局序列管理器,使得在第一全局序列管理器发生故障时,仍能够保证对待处理信息的处理,避免数据库无法使用的情况发生。并且,在第一全局序列管理器的故障恢复时,使用第二全局序列管理器中的序列数据作为恢复数据,对第一全局序列管理器中的数据进行恢复,使得第一全局序列管理器可以继续对待处理信息进行处理,保证在第一全局序列管理器出现故障的过程中的数据不丢失,保证数据的安全性。通过对对恢复后的序列数据进行持久化处理,减少访问数据库数据的次数,增加应用程序的执行速度。
在一些具体实现中,在对第一全局序列管理器中的数据进行全量备份的步骤之后,还包括:在第一全局序列管理器发生故障,且未使用第二全局序列管理器替换第一全局序列管理器时,获取第一时刻的全局备份数据和第二时刻的全局备份数据;计算预设恢复时刻与第一时刻的第一差值,以及计算预设恢复时刻与第二时刻的第二差值,其中,第一时刻和第二时刻均小于恢复时刻;若确定第二差值小于第一差值,则使用第二时刻的全局备份数据作为恢复数据,对第一全局序列管理器中的数据进行恢复,获得恢复后的序列数据;依据数据恢复后的序列最大值和预设序列阈值,设置起始序列。
通过选取距离预设恢复时刻最近的一次全量备份数据作为备份数据,使得第一全局序列管理器能够快速将数据恢复至可用状态,保证数据的完整性,并且在完成数据恢复后,依据数据恢复后的序列最大值和预设序列阈值,设置起始序列,避免序列重复。
下面结合附图,详细介绍根据本发明实施例的节点设备。图3示出根据本发明一实施例中的分布式数据库的处理装置的结构示意图。分布式数据库的处理装置可以使用包括有全局序列管理器的计算节点来实现。如图3所示,该分布式数据库的处理装置包括如下模块。
获取模块301,用于获取数据库集群中的待处理信息;处理模块302,用于对待处理信息进行排序,生成唯一递增的序列处理结果;其中,待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列
需要说明的是,在数据库集群中创建序列集合,该序列集合包括序列,一个数据库集群中的所有分布式数据节点上均有相同的序列集合。每个database对应一个处理线程,并且,在一个线程内,根据待处理信息的到达顺序对待处理信息进行处理,并获得唯一递增的序列处理结果,保证了序列的唯一递增性。
在本实施例中,通过处理模块依据待处理信息的到达顺序对待处理信息进行处理,生成唯一递增的序列处理结果,保证了序列的唯一性和自增性。由于待处理信息是来自于不同线程的信息,数据库集群中的所有分布式数据节点上均有相同的序列集合,当用户使用序列处理结果在整个数据库集群上搜索数据时,加快了数据搜索的速度,提高用户体验度。
需要明确的是,本发明并不局限于上文实施例中所描述并在图中示出的特定配置和处理。为了描述的方便和简洁,这里省略了对已知方法的详细描述,并且上述描述的***、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图4是本申请一实施例中的分布式数据库的处理***的组成方框图。该分布式数据库的处理***包括:应用410、计算节点420、全局序列管理器430和数据库集群440。其中,计算节点420包括合并线程422和n个处理线程,例如,第1处理线程4211、第2处理线程4212、……、第n处理线程421n,其中,n为大于或等于1的整数。全局序列管理器430包括:全局序列管理器主机431和全局序列管理器备机432,在全局序列管理器主机431中包括m个处理线程,例如,第1处理线程4311、第2处理线程4312、……、第m处理线程431m,其中,m为大于或等于1的整数。在数据库集群440中创建序列集合441,一个数据库集群440中所包含的所有分布式数据节点上均有相同的序列集合441。
需要说明的是,其中的全局序列管理器430还可以采用集群的形式实现,例如,全局序列管理器包括一台全局序列管理器主机和多台全局序列管理器备机,保证有多个持有完整序列备份数据的全局序列管理器备机能够在全局序列管理器主机发生故障时,接替全局序列管理器主机继续进行工作,维持数据库序列功能的正常使用。
其中,全局序列管理器430,用于对数据库集群440中的序列进行处理。全局序列管理器430采用一台主机和多台从机的集群架构,构成多副本高可用集群架构,能够保证全局序列管理器主机在宕机时,可以有多个持有完整序列副本的全局序列管理器备机能够接替全局序列管理器主机,维持数据库序列功能的正常使用。一个全局序列管理器可以处理一个或多个数据库集群上的序列信息,保证多个数据库集群的处理的高性能,同时,保证了集群层面的隔离性,并具有较好的容灾能力。
计算节点420,用于对应用410发送的SQL语句进行解析,并发送序列处理请求给全局序列管理器。计算节点420在接收到全局序列管理器返回的序列处理结果后,将序列处理结果中的序列对应的待处理SQL语句发送至各个数据库节点进行处理。计算节点420与数据库集群440建立连接,并与全局序列管理器430建立连接。
数据库集群440包括多个分布式数据节点,对外是一个完整的存储单位,提供高可靠的数据服务,并保证数据的一致性。其中的各个分布式数据节点,用于执行计算节点420发送的SQL语句,并返回数据处理结果至计算节点420。每个分布式数据节点都具有相同的序列集合441。序列集合441对应全局序列管理器430中的一个处理线程。在全局序列管理器430中的一个处理线程内,根据序列处理请求消息的到达顺序,对待处理的序列信息进行处理并返回响应,以此保证序列的唯一递增性。
全局序列管理器430,用于为一个或多个数据库集群提供唯一递增的序列信息,保证在数据库集群中的序列是唯一递增序列。
需要说明的是,全局序列管理器430只处理与序列相关的信息。全局序列管理器430创建m个处理线程(例如,第1处理线程4311、第2处理线程4312、……、第m处理线程431m),且其中的一个处理线程用于为数据库集群440中的序列集合441提供服务,即全局序列管理器430中的一个处理线程只处理序列集合441的序列信息。
分布式数据库的处理***对应用410输入的SQL语句进行处理的方法包括步骤S401~步骤S408。
步骤S401,应用410向计算节点420发送多个待处理的SQL语句。
步骤S402,计算节点420使用第1处理线程4211、第2处理线程4212、……、第n处理线程421n等依次对各个待处理的SQL语句进行解析,获得需处理的序列信息1、需处理的序列信息2、……、需处理的序列信息n等,然后将以上多个需处理的序列信息发送至合并线程422。使得合并线程422能够将各个需处理的序列信息合并,生成并发送序列请求消息至全局序列管理器430。
其中,序列请求消息包括n个需处理的序列信息,以及需处理的序列信息的到达顺序,该到达顺序是需处理的序列信息到达全局序列管理器主机431中的某个处理线程的顺序。
步骤S403,全局序列管理器430中的全局序列管理器主机431在接收到序列请求消息后,通过筛选获得需要数据库集群440中的分布式数据节点进行处理的待处理序列信息集合,然后将该待处理序列信息的集合中的序列,依据各个待处理序列信息的到达顺序,使用第1处理线程4311依次进行处理,生成唯一递增的序列(例如,生成的序列依次为1、2、……、k),其中,k为大于或等于1的整数。以保证数据库集群440上的序列是唯一递增的序列。然后依据生成的序列1、序列2、……、序列k,生成同步消息,并发送同步消息至全局序列管理器从机432。
步骤S404,全局序列管理器从机432接收到同步消息后,将步骤S403中生成的序列信息保存至本地磁盘上,并发送同步完成消息给全局序列管理器主机431。
步骤S405,全局序列管理器主机431响应于全局序列管理器从机432反馈的同步完成消息,确定已将数据成功同步至全局序列管理器从机432中,然后,依据步骤S403中生成的序列1、序列2、……、序列k,生成并发送序列响应消息至计算节点420。
步骤S406,计算节点420依据序列响应消息中的各个序列,将各个序列与对应的SQL语句结合后,直接发送至指定的分布式数据节点上执行,获得执行结果,指定的分布式数据节点执行完成后,将执行结果反馈给计算节点420。
通过数据库集群440中的多个分布式数据节点,并行的对待处理的SQL语句进行处理,使得数据处理效率得到提升。
步骤S407,计算节点420将数据库集群440反馈的数据处理结果反馈给应用410。
在本实施例中,通过计算节点中的多个处理线程对应用发送的多个待处理的SQL语句同时进行处理,生成序列请求消息,该序列请求消息包括多个需处理的序列信息,使得数据的处理效率得到提升,提升用户体验度。并且,当全局序列管理器接收到计算节点发送的序列请求消息后,各个处理线程依据序列请求消息的到达顺序,对需处理的序列信息进行依次处理,以保证序列的唯一递增性。
图5是本申请又一实施例中的分布式数据库的处理***的组成方框图。该分布式数据库的处理***包括:应用510、计算节点520、第一全局序列管理器530、第二全局序列管理器550、第一数据库集群540和第二数据库集群560。
其中,第一全局序列管理器530包括:第一全局序列管理器主机531和第一全局序列管理器备机532,全局序列管理器主机531包括n个处理线程,例如,第1处理线程5311、第2处理线程5312、……、第n处理线程531n,其中,n为大于或等于1的整数。第二全局序列管理器550包括:第二全局序列管理器主机551和第二全局序列管理器备机552,全局序列管理器主机551包括m个处理线程,例如,第1处理线程5511、第2处理线程5512、……、第m处理线程551m,其中,m为大于或等于1的整数。计算节点520包括合并线程522和k个处理线程,例如,第1处理线程5211、第2处理线程5212、……、第k处理线程521k,其中,k大于或等于m与n的和。数据库集群540包括序列集合541。数据库集群560包括序列集合561。
需要说明的是,在本实施例中,第一全局序列管理器530仅用于处理第一数据库集群540对应的序列信息,第二全局序列管理器550仅用于处理第二数据库集群560对应的序列信息,计算节点520中的合并线程需要将应用510发送的待处理序列信息进行分类,依据待处理序列的到达顺序,以及待处理序列对应的SQL语句需要哪个数据库集群进行处理,为待处理序列分配对应的全局序列管理器,进而将不同的待处理序列分发至不同的全局序列管理器中进行处理。
例如,本实施例中的分布式数据库的处理***对应用510输入的SQL语句进行数据处理的方法包括步骤S501~步骤S509。
步骤S501,应用510向计算节点520发送多个待处理的SQL语句。
步骤S502,计算节点520使用第1处理线程5211、第2处理线程5212、……、第k处理线程521k等依次对各个待处理的SQL语句进行解析,获得需处理的序列信息1、需处理的序列信息2、……、需处理的序列信息k等,然后将以上多个需处理的序列信息发送至合并线程522。使得合并线程522依据待处理序列的到达顺序,以及处理该待处理序列对应的SQL语句的数据库集群,对各个待处理的序列信息进行分类和合并,生成第一序列请求消息和第二序列请求消息;发送第一序列请求消息至第一全局序列管理器530,发送第二序列请求消息至第二全局序列管理器550。
其中,第一序列请求消息包括n个需处理的序列信息;第二序列请求消息包括m个需处理的序列信息。需要说明的是,第一序列请求消息中的n个需处理的序列信息都属于第一数据库集群540,第二序列请求消息中的m个需处理的序列信息都属于第二数据库集群560。
步骤S503,第一全局序列管理器530中的第一全局序列管理器主机531在接收到第一序列请求消息后,将n个需处理的序列信息依次分发至第1处理线程5311上进行处理,以生成序列依次为1、2、……、n,n为大于或等于1的整数。保证第一数据库集群540上的序列是唯一递增的序列。然后依据以上生成的序列信息生成第一同步消息,并发送第一同步消息至第一全局序列管理器从机532。其中,第一同步消息包括序列1、序列2、……、序列n。
步骤S504,第一全局序列管理器从机532接收到同步消息后,将步骤S503中生成的序列信息保存至本地磁盘上,并发送同步完成消息给第一全局序列管理器主机531。
步骤S505,第一全局序列管理器主机531响应于第一全局序列管理器从机532反馈的同步完成消息,确定已将数据成功同步至第一全局序列管理器从机532中,然后,依据步骤S503中生成的序列1、序列2、……、序列n,和各个序列对应的分布式数据节点的标识,生成并发送第一序列响应消息至计算节点520。
需要说明的是,在步骤S503~步骤S505执行的同时,第二全局序列管理器550同时进行相类似的操作,具体如步骤S506~步骤S508所示。
步骤S506,第二全局序列管理器550中的第二全局序列管理器主机551在接收到第二序列请求消息后,将m个需处理的序列信息依次分发至第2处理线程5512上进行处理,生成的序列依次为1、2、……、m。保证第二数据库集群560上的序列是唯一递增的序列。然后依据以上生成的序列信息生成第二同步消息,并发送第二同步消息至第二全局序列管理器从机552。其中,第二同步消息包括序列1、序列2、……、序列m等。
步骤S507,第二全局序列管理器从机552接收到同步消息后,将步骤S506中生成的序列信息保存至本地磁盘上,并发送同步完成消息给第二全局序列管理器主机551。
步骤S508,第二全局序列管理器主机551响应于第二全局序列管理器从机552反馈的同步完成消息,确定已将数据成功同步至第二全局序列管理器从机552中,然后,依据步骤S506中生成的序列1、序列2、……、序列m,生成并发送第二序列响应消息给计算节点520。
需要说明的是,第一全局序列管理器530所生成的序列(序列1、序列2、……、序列n),保证第一数据库集群540中的序列是唯一递增的;第二全局序列管理器550所生成的序列(序列1、序列2、……、序列m),保证第二数据库集群560中的序列是唯一递增的,使得分布式数据库能够在数据库集群的层面上得到序列的隔离,保证序列的唯一递增性。
步骤S509,计算节点520接收到第一序列响应消息和第二序列响应消息后,将第一序列响应消息中的各个序列与待处理的SQL语句进行组合,生成并发送第一数据处理消息至数据库集群540进行处理,同时,将第二序列响应消息中的各个序列与待处理的SQL语句进行组合,生成并发送第二数据处理消息至数据库集群560进行处理。计算节点520在获得第一数据库集群540和第二数据库集群560中的各个分布式数据节点反馈的数据处理结果后,将各个数据处理结果转发给应用510。
需要说明的是,因第一数据库集群540和第二数据库集群560是物理上隔离的,因此,生成的各个数据处理结果对应的序列之间不会受到干扰。保证了数据库集群层面的上的序列的隔离,以及序列的唯一递增性。
在本实施例中,通过不同的全局序列管理器处理不同的数据库集群中的序列信息,使得能够从数据库集群的层面上进行序列的隔离,同时,保证每个数据库集群内部的序列的唯一性。采用多个线程对待处理信息进行并发的处理,提升了序列处理效率,保证分布式数据库***的高性能。
图6a示出本申请实施例中的全局序列管理器备机对数据进行全量备份时存在异常的处理流程示意图。如图6a所示,全局序列管理器的备机每间隔预设时长(即5分钟)5分钟就会对数据进行一次全量备份,即将数据写入磁盘文件中。但在12:05之后,12:10到来之前,接收到序列处理请求并统计获得待处理信息的数量,当待处理信息的数量大于预设序列阈值(例如,预设序列阈值设定为10000条)时(即12:06时),全局序列管理器的备机还会再次对数据进行全量备份,以确保序列信息不丢失。当12:10到来时,全局序列管理器的备机再次对数据进行全量备份。
图6b示出本申请实施例中的全局序列管理器主机对数据进行恢复时的处理流程示意图。如图6b所示,12:09时,全局序列管理器的主机由于工作人员的维修,已恢复正常工作状态,此时,全局序列管理器的主机需要启动数据恢复操作。因图6a中所示,全局序列管理器的备机分别在12:06和12:10都进行了全量备份,故全局序列管理器的主机需要向全局序列管理器的备机申请当前恢复时刻之前的数据,依此数据作为备份数据,对故全局序列管理器的主机的数据进行恢复,包括步骤S601~步骤S604。
步骤S601,全局序列管理器的主机向全局序列管理器的备机申请获取12:06时刻的备份数据,作为本次的恢复数据。
需要说明的是,全局序列管理器的主机会选择早于12:09时刻、且距离12:09时刻最近的一次全量备份数据作为本次恢复的恢复数据,以保证数据的全面性和安全性。
步骤S602,全局序列管理器的主机将12:06时刻的备份数据作为本次的恢复数据,对自己内部的数据进行恢复。
步骤S603,在数据恢复完成时,设定序列的起始值。
例如,将恢复后的序列的最大值和预设序列阈值做加和运算,获得序列的起始值;或者,先通过步长(即序列之间的间隔长度,例如,1、5等)与预设序列阈值做乘法运算,获得乘积值,然后再将恢复后的序列的最大值和该乘积值做加和运算,以获得序列的起始值。以上对于序列的起始值的设定方法仅是举例说明,可根据实际情况具体设定,其他未说明的序列的起始值的设定方法也在本申请的保护范围之内,在此不再赘述。
步骤S604,删除12:09时刻以后的备份数据,以防止数据的重复,提升存储空间的利用率。
在本实施例中,通过全局序列管理器的备机每间隔预设时长对序列信息进行全量备份,确保序列信息不丢失。在全局序列管理器的主机从宕机的故障中恢复后,通过向全局序列管理器的备机申请获取备份数据,即将距离当前时间点最近的一次全量备份数据作为备份数据,使得全局序列管理器的主机能够快速将数据恢复至当前可用状态,保证数据的完整性,并且在完成数据恢复后,删除恢复时刻之后的备份数据,以防止数据的重复,同时,提升存储空间的利用率。
图7示出能够实现根据本发明实施例的方法和装置的计算设备的示例性硬件架构的结构图。
如图7所示,计算设备700包括输入设备701、输入接口702、中央处理器703、存储器704、输出接口705、以及输出设备706。其中,输入接口702、中央处理器703、存储器704、以及输出接口705通过总线707相互连接,输入设备701和输出设备706分别通过输入接口702和输出接口705与总线707连接,进而与计算设备700的其他组件连接。
具体地,输入设备701接收来自外部的输入信息,并通过输入接口702将输入信息传送到中央处理器703;中央处理器703基于存储器704中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器704中,然后通过输出接口705将输出信息传送到输出设备706;输出设备706将输出信息输出到计算设备700的外部供用户使用。
在一个实施例中,图7所示的计算设备可以被实现为一种网络设备,该网络设备可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的分布式数据库的处理方法。
一般来说,本申请的多种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些方面可以被实现在硬件中,而其它方面可以被实现在可以被控制器、微处理器或其它计算装置执行的固件或软件中,尽管本申请不限于此。
本申请的实施例可以通过移动装置的数据处理器执行计算机程序指令来实现,例如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、光存储器装置和***(数码多功能光碟DVD或CD光盘)等。计算机可读介质可以包括非瞬时性存储介质。数据处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、可编程逻辑器件(FGPA)以及基于多核处理器架构的处理器。
通过示范性和非限制性的示例,上文已提供了对本申请的示范实施例的详细描述。但结合附图和权利要求来考虑,对以上实施例的多种修改和调整对本领域技术人员来说是显而易见的,但不偏离本发明的范围。因此,本发明的恰当范围将根据权利要求确定。
Claims (14)
1.一种分布式数据库的处理方法,其特征在于,包括:
对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果,其中,所述待处理信息是来自于不同线程的信息,所述数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列;
其中,在所述对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果的步骤之前,包括:
获取所述数据库集群中的待处理信息;所述待处理信息包括序列创建、序列申请和序列删除;
对所述待处理信息进行分类。
2.根据权利要求1所述的方法,其特征在于,所述对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果,包括:
依据所述待处理信息的到达顺序对所述待处理信息进行如下操作中的任意一项,生成所述序列处理结果:
将所述待处理信息对应的序列添加至所述序列集合中;
从所述序列集合中删除所述待处理信息对应的序列;
依据所述待处理信息对所述序列集合进行修改。
3.根据权利要求1所述的方法,其特征在于,在所述对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果的步骤之前,还包括:
接收应用发送的数据库处理语句;
对所述数据库处理语句进行解析,获得数据定义语言DDL和数据操纵语言DML;
对所述数据库定义语言和所述数据操纵语言进行分析,提取所述待处理信息。
4.根据权利要求3所述的方法,其特征在于,对所述数据库定义语言和所述数据操纵语言进行分析,提取所述待处理信息,包括:
对所述数据库定义语言和所述数据操纵语言进行分析,获得N个序列处理需求;
对所述N个序列处理需求进行批量处理,生成所述待处理信息,其中,N为大于或等于1的整数。
5.根据权利要求3所述的方法,其特征在于,在所述对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果的步骤之后,还包括:
依据所述序列处理结果,将所述数据库处理语句发送至所述分布式数据节点进行处理;
响应于所述分布式数据节点反馈的数据处理结果,将所述数据处理结果转发给所述应用。
6.根据权利要求1所述的方法,其特征在于,在所述对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果的步骤之前,还包括:
依据所述分布式数据节点的处理能力对所述分布式数据节点进行集群的划分,获得所述数据库集群。
7.根据权利要求1至6中任一项所述的方法,其特征在于,在所述对数据库集群中的待处理信息进行排序,生成唯一递增的序列处理结果的步骤之后,还包括:
将所述序列处理结果同步至第二全局序列管理器中,其中,所述第二全局序列管理器是第一全局序列管理器的备份管理器,所述第一全局序列管理器包括所述处理线程。
8.根据权利要求7所述的方法,其特征在于,在所述将所述序列处理结果同步至第二全局序列管理器中的步骤之后,还包括:
每间隔预设时长,对所述第一全局序列管理器中的数据进行全量备份。
9.根据权利要求7所述的方法,其特征在于,在所述将所述序列处理结果同步至第二全局序列管理器中的步骤之后,还包括:
统计所述待处理信息的数量;
依据所述待处理信息的数量和预设序列阈值,对所述第一全局序列管理器中的数据进行全量备份。
10.根据权利要求8或9所述的方法,其特征在于,在所述对所述第一全局序列管理器中的数据进行全量备份的步骤之后,还包括:
在所述第一全局序列管理器发生故障时,使用第二全局序列管理器替换所述第一全局序列管理器;
在所述第一全局序列管理器的故障恢复时,使用所述第二全局序列管理器中的序列数据作为恢复数据,对所述第一全局序列管理器中的数据进行恢复,获得恢复后的序列数据;
对所述恢复后的序列数据进行持久化处理。
11.根据权利要求8或9所述的方法,其特征在于,在所述对所述第一全局序列管理器中的数据进行全量备份的步骤之后,还包括:
在所述第一全局序列管理器发生故障,且未使用第二全局序列管理器替换所述第一全局序列管理器时,获取第一时刻的全局备份数据和第二时刻的全局备份数据;
计算预设恢复时刻与所述第一时刻的第一差值,以及计算所述预设恢复时刻与所述第二时刻的第二差值,其中,所述第一时刻和所述第二时刻均小于所述恢复时刻;
若确定所述第二差值小于第一差值,则使用所述第二时刻的全局备份数据作为恢复数据,对所述第一全局序列管理器中的数据进行恢复,获得恢复后的序列数据;
依据数据恢复后的序列最大值和预设序列阈值,设置起始序列。
12.一种分布式数据库的处理装置,其特征在于,所述装置包括:
获取模块,用于获取数据库集群中的待处理信息,对所述待处理信息进行分类;其中,所述待处理信息包括序列创建、序列申请和序列删除;
处理模块,用于对所述待处理信息进行排序,生成唯一递增的序列处理结果,其中,所述待处理信息是来自于不同线程的信息,所述数据库集群中的所有分布式数据节点上均有相同的序列集合,所述序列集合包括序列。
13.一种网络设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现权利要求1-11中任一项所述的方法。
14.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-11任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010604834.9A CN113934792B (zh) | 2020-06-29 | 2020-06-29 | 分布式数据库的处理方法、装置、网络设备和存储介质 |
PCT/CN2021/103095 WO2022002044A1 (zh) | 2020-06-29 | 2021-06-29 | 分布式数据库的处理方法及装置、网络设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010604834.9A CN113934792B (zh) | 2020-06-29 | 2020-06-29 | 分布式数据库的处理方法、装置、网络设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113934792A CN113934792A (zh) | 2022-01-14 |
CN113934792B true CN113934792B (zh) | 2023-03-24 |
Family
ID=79272984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010604834.9A Active CN113934792B (zh) | 2020-06-29 | 2020-06-29 | 分布式数据库的处理方法、装置、网络设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113934792B (zh) |
WO (1) | WO2022002044A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116303661B (zh) * | 2023-01-12 | 2023-09-12 | 北京万里开源软件有限公司 | 一种分布式数据库中针对序列的处理方法、装置及*** |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007028249A1 (en) * | 2005-09-09 | 2007-03-15 | Avokia Inc. | Method and apparatus for sequencing transactions globally in a distributed database cluster with collision monitoring |
CN104361065B (zh) * | 2014-11-04 | 2018-07-06 | 福建亿榕信息技术有限公司 | 基于Zookeeper的分布式***的有序序列号生成方法 |
CN107247770B (zh) * | 2017-06-05 | 2021-04-13 | 广东亿迅科技有限公司 | 基于zookeeper的全局序列生成方法及装置 |
CN109656911B (zh) * | 2018-12-11 | 2023-08-01 | 江苏瑞中数据股份有限公司 | 分布式并行处理数据库***及其数据处理方法 |
CN109977171B (zh) * | 2019-02-02 | 2023-04-28 | 中国人民大学 | 一种保证事务一致性和线性一致性的分布式***和方法 |
CN110162573B (zh) * | 2019-05-05 | 2021-04-30 | 中国银行股份有限公司 | 一种分布式序列生成方法、装置及*** |
CN111143389B (zh) * | 2019-12-27 | 2022-08-05 | 腾讯科技(深圳)有限公司 | 事务执行方法、装置、计算机设备及存储介质 |
-
2020
- 2020-06-29 CN CN202010604834.9A patent/CN113934792B/zh active Active
-
2021
- 2021-06-29 WO PCT/CN2021/103095 patent/WO2022002044A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN113934792A (zh) | 2022-01-14 |
WO2022002044A1 (zh) | 2022-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3754514B1 (en) | Distributed database cluster system, data synchronization method and storage medium | |
CN107783975B (zh) | 分布式数据库同步处理的方法和装置 | |
CN108170768B (zh) | 数据库同步方法、装置及可读介质 | |
US9760595B1 (en) | Parallel processing of data | |
CN110928851B (zh) | 处理日志信息的方法、装置、设备及存储介质 | |
US11748215B2 (en) | Log management method, server, and database system | |
CN109241182B (zh) | 大数据实时同步方法、装置、计算机设备及存储介质 | |
CN113760847A (zh) | 日志数据处理方法、装置、设备及存储介质 | |
CN110837535A (zh) | 数据同步的方法、装置、设备和介质 | |
CN108140035B (zh) | 分布式***的数据库复制方法及装置 | |
CN111680017A (zh) | 一种数据同步的方法及装置 | |
CN113934792B (zh) | 分布式数据库的处理方法、装置、网络设备和存储介质 | |
WO2021082925A1 (zh) | 一种交易处理的方法及装置 | |
CN110121712B (zh) | 一种日志管理方法、服务器和数据库*** | |
CN114020840A (zh) | 一种数据处理方法、装置、服务器、存储介质及产品 | |
CN116501700B (zh) | 一种app格式化文件离线存储方法、装置、设备及存储介质 | |
CN113157701A (zh) | 一种oracle数据库的双活机制部署方法及装置 | |
CN116303789A (zh) | 多分片多副本数据库并行同步方法、装置及可读介质 | |
CN116842244A (zh) | 搜索引擎数据同步方法、***、设备和存储介质 | |
CN116186082A (zh) | 基于分布式的数据汇总方法、第一服务器和电子设备 | |
CN115587141A (zh) | 一种数据库同步方法和装置 | |
CN114564458A (zh) | 集群间数据同步的方法、装置、设备和存储介质 | |
CN111522688B (zh) | 分布式***的数据备份方法及装置 | |
CN113535430A (zh) | 应用数据读写分离方法、装置、计算机设备和存储介质 | |
CN111797062B (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 |