CN115617570A - 增量数据的备份方法、装置、电子设备及存储介质 - Google Patents
增量数据的备份方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115617570A CN115617570A CN202110807934.6A CN202110807934A CN115617570A CN 115617570 A CN115617570 A CN 115617570A CN 202110807934 A CN202110807934 A CN 202110807934A CN 115617570 A CN115617570 A CN 115617570A
- Authority
- CN
- China
- Prior art keywords
- data
- incremental data
- incremental
- relational database
- cache pool
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000008569 process Effects 0.000 claims abstract description 16
- 238000004590 computer program Methods 0.000 claims description 18
- 230000002159 abnormal effect Effects 0.000 claims description 12
- 238000001914 filtration Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 6
- 238000009795 derivation Methods 0.000 claims 4
- 230000000977 initiatory effect Effects 0.000 claims 2
- 238000012545 processing Methods 0.000 abstract description 7
- 238000013523 data management Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000009825 accumulation Methods 0.000 description 3
- 235000013361 beverage Nutrition 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- 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/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出了一种增量数据的备份方法、装置、电子设备及存储介质,涉及数据处理领域。该方法包括:从非关系型数据库中批量导出文档的增量数据;对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据;按照类别将各类增量数据缓存至本地进程内存中的缓存池中;从缓存池中批量读取各类增量数据,并写入数据备份设备。本申请实施例中,通过分类定义增量数据的类型,方便数据管理,增强了数据的安全性,通过增加缓存池对各类增量数据进行缓存,实现批量读取增量数据写入数据备份设备,从而提高数据备份速度,缩小存储空间,降低备份成本,提高数据的安全性。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种增量数据的备份方法、装置、电子设备及存储介质。
背景技术
在实际应用中,为了防止数据丢失,通常需要对数据进行备份。相关技术中,在需要处理的数据量较大时,单条导出增量数据的方法备份速度较慢。因此,如何提高增量数据的备份速度,已经成为重要的研究方向之一。
发明内容
本申请提供一种增量数据的备份方法、装置、电子设备及存储介质,以至少解决相关技术中存在的安全性差、备份速度慢以及成本高的技术问题。本申请的技术方案如下:。
第一方面,本申请实施例提出了一种增量数据的备份方法,包括:
从非关系型数据库中批量导出文档的增量数据;
对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据;
按照类别将各类增量数据缓存至本地进程内存中的缓存池中;
从缓存池中批量读取各类增量数据,并写入数据备份设备。
本申请实施例通过增加缓存池对增量数据进行缓存,实现批量读取增量数据写入数据备份设备,从而提高数据备份速度,缩小存储空间,降低备份成本,提高数据的安全性。
第二方面,本申请实施例提出了一种增量数据的备份装置,包括:
导出模块,用于从非关系型数据库中批量导出文档的增量数据;
分类模块,用于对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据;
缓存模块,用于按照类别将各类增量数据缓存至本地进程内存中的缓存池中;
写入模块,用于从缓存池中批量读取各类增量数据,并写入数据备份设备。
第三方面,本申请实施例提出了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请第一方面实施例中提供的增量数据的备份方法。
第四方面,本申请实施例提出了一种计算机可读存储介质,其上存储有计算机指令,其中,计算机指令用于使计算机执行根据本申请第一方面实施例中提供的增量数据的备份方法。
第五方面,本申请实施例提出了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本申请第一方面实施例中提供的增量数据的备份方法。
附图说明
图1是本申请一个实施例的增量数据的备份方法的流程图;
图2是本申请一个实施例的增量数据的备份方法的示意图;
图3是本申请一个实施例的增量数据的备份方法的流程图;
图4是本申请一个实施例的增量数据的备份方法的流程图;
图5是本申请一个实施例的增量数据的备份方法的流程图;
图6是本申请一个实施例的增量数据的备份方法的示意图
图7是本申请一个实施例的增量数据的备份装置的结构框图;
图8是本申请一个实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
在实际的工作中对于用户要求备份的数据情况有所不同,采取的备份方法也有所不同。有的用户为了提高数据安全性需要备份数据库中的所有数据,而有的用户只需要备份其中的一部分数据。从备份策略来讲,现在的备份可以分为四种:完全备份、增量备份、差异备份及累加备份,其中,增量备份即为只对增量数据进行备份,增量备份的备份速度较快、成本较低,因此一直被广泛使用。
非关系型数据库(MongoDB)是一个基于分布式文件存储的数据库,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,因此可以存储比较复杂的数据类型。MongoDB最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
下面结合附图来描述本申请实施例的增量数据的备份方法、装置、电子设备及存储介质。
图1是本申请一个实施例的增量数据的备份方法的流程图,如图1所示,该方法包括以下步骤:
S101,从非关系型数据库中批量导出文档的增量数据。
本申请实施例中,增量数据的备份方法可以由增量数据的备份装置执行,也可以为能实现该增量数据的备份方法的电子设备执行。
增量数据即为上一次备份后增加、改动的文档的数据,本申请实施例中,从非关系型数据库中批量导出用户需要备份的文档的增量数据,也就是说,在一次操作中从非关系型数据库导出多条文档的增量数据。相同时间段内,增量数据相比于全量数据占用空间更小,从而可以加快备份速度,降低备份成本。
可选地,为了保证数据同步,每次操作数据库,都会生成对应的一条或多条数据库操作日志(Oplog)即增量数据。Oplog里面包含操作的对象、操作的类型、操作的时间。
本申请实施例中,在从非关系型数据库中批量导出文档的增量数据之前,需要与非关系型数据库中存储增量数据所在节点之间建立长链接,通过该长链接从节点上批量导出增量数据。在MangoDB数据库中隐节点(Hidden)为存储数据增量数据的节点,与该隐节点之间建立长链接。
S102,对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据。
可选地,对Oplog包括数据定义语言操作日志和数据操纵语言操作日志,即增量数据包括数据定义语言增量数据和数据操纵语言增量数据。在获取到增量数据后可以对增量数据行分类或筛选,以获取数据定义语言增量数据和数据操纵语言增量数据。
S103,按照类别将各类增量数据缓存至本地进程内存中的缓存池中。
本申请实施例中,本地进程内存中预先分配用于高速缓存增量数据的存储区域,也就是缓存池,利用缓存池来对批量导出的增量数据进行缓存,可以减少访问数据库的次数,降低磁盘的输入/输出(Input/Output,IO)次数,避免逐条导出增量数据带来的IO资源浪费,从而加快数据读取的速度,便于后续读取增量数据。
可选地,缓存池的存储空间至少需要满足存储一次批量导出的增量数据的数据量。实现中,缓存池的存储空间往往大于一次批量导出的增量数据的数据量。
可选地,将批量导出的增量数据分类后,可以按照分类将各类增量数据缓存至本地进程内存中的缓存池中。在一些实现中,可以为不同类型的增量数据在缓存池中设置不同的存储区域,将各类增量数据分别存储到对应的存储区域中。
S104,从缓存池中批量读取各类增量数据,并写入数据备份设备。
从缓存池中读取数据定义语言增量数据和数据操纵语言增量数据,并将读取到的增量数据写入数据备份设备。可选地,可以读取缓存池的存储日志,基于该存储日志从缓存池中批量读取各类增量数据,并将读取到的增量数据写入数据备份设备,也就是说从缓存池同步读取多条增量数据,并同步将该多条增量数据写入磁盘中。
可选地,数据备份设备可以是各种存储设备,例如磁带、硬盘、闪存卡、各式存储器等。
如果系统的硬件或存储媒体发生故障,数据备份设备可以帮助保护数据免受意外的损失。例如,硬盘上的原始数据被意外删除或覆盖,或因为硬盘故障而不能访问该数据,可以十分方便的从数据备份设备中还原该数据。
图2是本申请一个实施例的增量数据的备份方法的示意图,如图2所示,通过导出装置将增量数据从非关系型数据库中批量导出,缓存至缓存池中,进而从缓存池中批量读取增量数据,写入数据备份设备,实现增量数据的备份。
本申请实施例中,从非关系型数据库中批量导出文档的增量数据,对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据;按照类别将各类增量数据缓存至本地进程内存中的缓存池中,从缓存池中批量读取各类增量数据,并写入数据备份设备。本申请实施例中,通过分类定义增量数据的类型,方便数据管理,增强了数据的安全性,通过增加缓存池对各类增量数据进行缓存,实现批量读取增量数据写入数据备份设备,从而提高数据备份速度,缩小存储空间,降低备份成本,提高数据的安全性。
由于非关系型数据库应用的业务服务类型不同,业务服务的当前每秒操作次数也不相同,为了确定批量导出增量数据的目标数据量,接下来进一步对本申请实施例的增量数据的备份方法进行介绍。图3是本申请一个实施例的增量数据的备份方法的流程图,如图3所示,在上述实施例的基础上,该方法还包括以下步骤:
S301,获取非关系型数据库应用的业务服务的当前每秒操作次数,并基于当前每秒操作次数确定需要批量导出的目标数据量。
获取非关系型数据库应用的业务服务的当前每秒操作次数(Open PluggableSpecification,OPS),也就是说,获取每秒从非关系型数据库中批量导出文档的增量数据的数量,基于当前OPS确定需要批量导出的目标数据量。
本申请实施例中,OPS的数量与目标数据量呈正相关关系。举例说明,在一些实现中,非关系型数据库应用的业务服务为数字货币交易,由于数字货币全天都可能频繁进行交易,因此,对应的OPS数量较大,进一步地,基于OPS确定的需要批量导出的目标数据量也随之增加;在一些实现中,非关系型数据库应用的业务服务为餐饮服务,由于餐饮服务在用餐时间会接收频繁的点餐,从而产生大量的增量数据,非用餐时间的点餐较少,对应需要导出的增量数据也较少,OPS数量较小,因此,为了提高备份的灵活性及备份速度,在用餐时间,OPS数量较大,进一步地,基于OPS确定的需要批量导出的目标数据量也随之增加,在非用餐时间,OPS数量较小,进一步地,基于OPS确定的需要批量导出的目标数据量也随之减少。
可选地,还可以保存OPS与批量导出数据量之间的映射关系。在获取到服务的当前OPS后,可以查询该映射关系,根据当前OPS,确定需要批量导出的目标数据量。
S302,从非关系型数据库中按照目标数据量,批量导出增量数据。
在一些实现中,用户发出数据导出指令,根据目标数据量从非关系型数据库中批量导出数据定义语言增量数据和数据操纵语言增量数据。
在另一些实现中,生成多个数据导出指令,其中,数据导出指令包括增量数据的时间戳范围,时间戳范围用于确定读取数据库操作日志的时间。为了提高效率,可以启动导出线程,由导出线程同步执行多个数据导出指令,针对每个数据导出指令,从非关系型数据库中批量导出处于时间戳范围内的增量数据。
S303,对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据。
S304,按照类别将各类增量数据缓存至本地进程内存中的缓存池中。
S305,从缓存池中批量读取各类增量数据,并写入数据备份设备。
步骤S303、步骤S304、步骤S305的内容可以参考上述实施例中的相关介绍,此处不再赘述。
本申请实施例中,获取非关系型数据库应用的业务服务的当前每秒操作次数,并基于当前每秒操作次数确定需要批量导出的目标数据量,从非关系型数据库中按照目标数据量,批量导出增量数据。本申请实施例根据每秒操作次数确认的目标数据量批量导出增量数据,从而减少可能的等待时间,从而提高数据备份速度,缩小存储空间,降低备份成本。
缓存池的大小可能对数据库的性能产生重要影响,进而也会对增量数据的备份速度产生影响。因此,为了提高备份速度,接下来进一步对本申请实施例的增量数据的备份方法进行介绍。
作为一种可能的实现方式,获取非关系型数据库中虚拟机的配置信息,并基于配置信息,确定缓存池的大小。例如,在一些实现中,虚拟机的配置信息支持较大空间的缓存池,在一些实现中,虚拟机的配置信息不支持较大空间的缓存池,因此,为了提高数据库的性能,需要根据配置信息确定缓存池的大小。
作为一种可能的实现方式,获取非关系型数据库应用的业务服务的属性信息,根据属性信息,确定缓存池的大小。例如,在一些实现中,非关系型数据库应用的业务服务类型指示业务服务的OPS数量较大,则确定的缓存池的也较大,在一些实现中,非关系型数据库应用的业务服务类型指示业务服务的OPS数量较小,则确定的缓存池的也较小。
本申请实施例中,通过虚拟机的配置信息或业务服务的属性信息确认缓存池的大小,可以提高非关系型数据库的性能,加快备份速度。
在一些场景中,用户总量较大,非关系型数据库运维成本也会随之提高。为了进一步的平衡备份成本与备份速度,下面结合该场景进一步对本申请实施例提供的增量数据的备份方法进行解释。图4是本申请一个实施例的增量数据的备份方法的流程图,如图4所示,该方法包括以下步骤:
S401,从非关系型数据库中批量导出文档的增量数据。
S402,对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据。
S403,按照类别将各类增量数据缓存至本地进程内存中的缓存池中。
步骤S401、步骤S402、步骤S403的内容可以参考上述实施例中的相关介绍,此处不再赘述。
S404,获取缓存池中缓存的增量数据的数据量。
在缓存池对增量数据进行缓存时,实时监控缓存的增量数据的数据量。
S405,响应于数据量达到缓存池的最大承载量,则从缓存池中批量读取各类增量数据。
缓存的增量数据的数据量达到缓存池的最大承载量后,从缓存池中批量读取数据定义语言增量数据和数据操纵语言增量数据。
为了避免OPS的数量较小时,等待读取的时间过长,在一些实现中,还可以增设定时器,从上一次写入结束之后开始计时,响应于缓存增量数据的时间满足预设时间阈值,从缓存池中批量读取增量数据。
本申请实施例中,获取缓存池中缓存的增量数据的数据量,响应于数据量达到缓存池的最大承载量,则从缓存池中批量读取增量数据,从而平衡备份成本与备份速度,提高备份效率。
在数据备份的过程中,由于某些异常数据的存在,可能造成显著的累计误差。为了避免增量数据的备份过程中出现异常数据的累积而导致的备份误差较大的问题,提高备份的可靠性,下面进一步对本申请实施例的增量数据的更新方法进行介绍,图5是本申请一个实施例的增量数据的备份方法的流程图,图6是本申请一个实施例的增量数据的备份方法的示意图。如图5、图6所示,该方法包括以下步骤:
S501,从非关系型数据库中批量导出文档的增量数据。
步骤S501的内容可以参考上述实施例中的相关介绍,此处不再赘述。
S502,对批量导出的增量数据进行异常增量数据过滤,以获取目标增量数据,并对目标增量数据进行分类。
对批量导出的增量数据进行异常增量数据过滤,例如,在一些实现中,对重复的增量数据进行去重处理,从而实现异常增量数据过滤,获取目标增量数据;在一些实现中,对缺失的增量数据标记缺失位置,并重新导出缺失位置的增量数据,从而实现异常增量数据过滤,获取目标增量数据。
获取目标增量数据后,将目标增量数据进行分类,并缓存至缓存池中。对目标增量数据进行分类的介绍可以参见上述实施例中对批量导出的增量数据进行分类的相关内容,此处不再赘述。
可选地,在批量导出的增量数据中可能包含数据库自动生成的内部数据,这些多余的数据对用户的业务服务没有实际意义,因此,获取目标增量数据之前,将这些多余的数据进行过滤,从而达到避免浪费存储空间的目的。
S503,从缓存池中批量读取各类增量数据,并写入数据备份设备。
步骤S503的内容可以参考上述实施例中的相关介绍,此处不再赘述。
本申请实施例中对批量导出的增量数据进行异常增量数据过滤,获取目标增量数据,将目标增量数据缓存至缓存池中。本申请实施例通过过滤异常增量数据,从而避免浪费存储空间,并且避免增量数据的备份过程中出现异常数据的累积而导致的备份误差较大的问题,提高备份的可靠性。
如图7所示,基于同一申请构思,本申请实施例还提供了一种增量数据的备份装置700,包括:
导出模块710,用于从非关系型数据库中批量导出文档的增量数据;
分类模块720,用于对批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据。
缓存模块730,用于按照类别将各类增量数据缓存至本地进程内存中的缓存池中;
写入模块740,用于从缓存池中批量读取各类增量数据,并写入数据备份设备。
本申请实施例中,通过分类定义增量数据的类型,方便数据管理,增强了数据的安全性,通过增加缓存池对增量数据进行缓存,实现批量读取增量数据写入数据备份设备,从而提高数据备份速度,缩小存储空间,降低备份成本,提高数据的安全性。
进一步地,在本申请实施例一种可能的实现方式中,写入模块740,还用于:获取缓存池中缓存的增量数据的数据量;响应于数据量达到缓存池的最大承载量,则从缓存池中批量读取各类增量数据。
进一步地,在本申请实施例一种可能的实现方式中,分类模块720,还用于:对批量导出的增量数据进行异常增量数据过滤,以获取目标增量数据,并对目标增量数据进行分类。
进一步地,在本申请实施例一种可能的实现方式中,缓存模块730,还用于:获取非关系型数据库中虚拟机的配置信息,并基于配置信息,确定缓存池的大小。
进一步地,在本申请实施例一种可能的实现方式中,缓存模块730,还用于:获取非关系型数据库应用的业务服务的属性信息;根据属性信息,确定缓存池的大小。
进一步地,在本申请实施例一种可能的实现方式中,导出模块710,还用于:获取非关系型数据库应用的业务服务的当前每秒操作次数,并基于当前每秒操作次数确定需要批量导出的目标数据量;从非关系型数据库中按照目标数据量,批量导出各类增量数据。
进一步地,在本申请实施例一种可能的实现方式中,导出模块710,还用于:生成多个数据导出指令,其中,数据导出指令包括增量数据的时间戳范围;启动导出线程,由导出线程同步执行多个数据导出指令;针对每个数据导出指令,从非关系型数据库中导出处于时间戳范围内的增量数据。
基于同一申请构思,本申请实施例还提供了一种电子设备。
图8为本申请实施例提供的电子设备的结构示意图。如图8所示,该电子设备800,包括存储介质810、处理器820及存储在存储器810上并可在处理器820上运行的计算机程序产品,处理器执行计算机程序时,实现前述的增量数据的备份方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
基于同一申请构思,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,其中,该计算机指令用于使计算机执行上述实施例中的增量数据的备份方法。
基于同一申请构思,本申请实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时上述实施例中的增量数据的备份方法。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本申请可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (17)
1.一种增量数据的备份方法,其特征在于,包括:
从非关系型数据库中批量导出文档的增量数据;
对所述批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据;
按照类别将各类增量数据缓存至本地进程内存中的缓存池中;
从所述缓存池中批量读取所述各类增量数据,并写入数据备份设备。
2.根据权利要求1所述的方法,其特征在于,所述从所述缓存池中批量读取所述各类增量数据,包括:
获取所述缓存池中缓存的所述增量数据的数据量;
响应于所述数据量达到所述缓存池的最大承载量,则从所述缓存池中批量读取所述各类增量数据。
3.根据权利要求2所述的方法,其特征在于,所述对所述批量导出的增量数据进行分类,包括:
对所述批量导出的增量数据进行异常增量数据过滤,以获取目标增量数据,并对所述目标增量数据进行分类。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述从非关系型数据库中批量导出文档的增量数据之前,还包括:
获取所述非关系型数据库中虚拟机的配置信息,并基于所述配置信息,确定所述缓存池的大小。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述从非关系型数据库中批量导出文档的增量数据之前,还包括:
获取所述非关系型数据库应用的业务服务的属性信息;
根据所述属性信息,确定所述缓存池的大小。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述从非关系型数据库中批量导出文档的增量数据,包括:
获取所述非关系型数据库应用的业务服务的当前每秒操作次数并基于所述当前每秒操作次数确定需要批量导出的目标数据量;
从所述非关系型数据库中按照所述目标数据量,批量导出所述增量数据。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述从非关系型数据库中批量导出文档的增量数据,包括:
生成多个数据导出指令,其中,所述数据导出指令包括所述增量数据的时间戳范围;
启动导出线程,由所述导出线程同步执行所述多个数据导出指令;
针对每个所述数据导出指令,从所述非关系型数据库中导出处于所述时间戳范围内的所述增量数据。
8.一种增量数据的备份装置,其特征在于,包括:
导出模块,用于从非关系型数据库中批量导出文档的增量数据;
分类模块,用于对所述批量导出的增量数据进行分类,获取数据定义语言增量数据和数据操纵语言增量数据;
缓存模块,用于按照类别将各类增量数据缓存至本地进程内存中的缓存池中;
写入模块,用于从所述缓存池中批量读取所述各类增量数据,并写入数据备份设备。
9.根据权利要求8所述的装置,其特征在于,所述写入模块,还用于:
获取所述缓存池中缓存的所述增量数据的数据量;
响应于所述数据量达到所述缓存池的最大承载量,则从所述缓存池中批量读取所述各类增量数据。
10.根据权利要求9所述的装置,其特征在于,所述分类模块,还用于:
对所述批量导出的增量数据进行异常增量数据过滤,以获取目标增量数据,并对所述目标增量数据进行分类。
11.根据权利要求8-10任一项所述的装置,其特征在于,所述缓存模块,还用于:
获取所述非关系型数据库中虚拟机的配置信息,并基于所述配置信息,确定所述缓存池的大小。
12.根据权利要求8-10任一项所述的装置,其特征在于,所述缓存模块,还用于:
获取所述非关系型数据库应用的业务服务的属性信息;
根据所述属性信息,确定所述缓存池的大小。
13.根据权利要求8-10任一项所述的装置,其特征在于,所述导出模块,还用于:
获取所述非关系型数据库应用的业务服务的当前每秒操作次数,并基于所述当前每秒操作次数确定需要批量导出的目标数据量;
从所述非关系型数据库中按照所述目标数据量,批量导出所述增量数据。
14.根据权利要求8-10任一项所述的装置,其特征在于,所述导出模块,还用于:
生成多个数据导出指令,其中,所述数据导出指令包括所述增量数据的时间戳范围;
启动导出线程,由所述导出线程同步执行所述多个数据导出指令;
针对每个所述数据导出指令,从所述非关系型数据库中导出处于所述时间戳范围内的所述增量数据。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-7中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110807934.6A CN115617570A (zh) | 2021-07-16 | 2021-07-16 | 增量数据的备份方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110807934.6A CN115617570A (zh) | 2021-07-16 | 2021-07-16 | 增量数据的备份方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115617570A true CN115617570A (zh) | 2023-01-17 |
Family
ID=84855087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110807934.6A Pending CN115617570A (zh) | 2021-07-16 | 2021-07-16 | 增量数据的备份方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115617570A (zh) |
-
2021
- 2021-07-16 CN CN202110807934.6A patent/CN115617570A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107391628B (zh) | 数据同步方法及装置 | |
CN104794123B (zh) | 一种为半结构化数据构建NoSQL数据库索引的方法及装置 | |
US9183268B2 (en) | Partition level backup and restore of a massively parallel processing database | |
CN108959400B (zh) | 银行系统历史数据清理方法及装置 | |
WO2016004813A1 (zh) | 数据存储方法、查询方法及设备 | |
CN106649828B (zh) | 一种数据查询方法及系统 | |
CN110555770B (zh) | 一种基于增量哈希的区块链世界状态校验和恢复方法 | |
CN102609337A (zh) | 一种内存数据库快速数据恢复方法 | |
WO2024021362A1 (zh) | 一种流量回放的数据验证方法及装置 | |
CN107992492B (zh) | 一种数据区块的存储方法、读取方法、其装置及区块链 | |
EP3089051B1 (en) | Database rollback using wal | |
CN112487083B (zh) | 一种数据校验方法和设备 | |
CN111506559A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN112597153A (zh) | 一种基于区块链的数据存储方法、装置及存储介质 | |
CN110096509A (zh) | 大数据环境下实现历史数据拉链表存储建模处理的系统及方法 | |
CN110413631B (zh) | 一种数据查询方法及装置 | |
JP6450865B2 (ja) | 多数の重複するソースからの大量の時間データの集計 | |
CN113934713A (zh) | 一种订单数据索引方法、系统、计算机设备以及存储介质 | |
CN104408097A (zh) | 一种基于字符段热更新的混合索引方法及系统 | |
CN109710698B (zh) | 一种数据汇聚方法、装置、电子设备及介质 | |
CN115617570A (zh) | 增量数据的备份方法、装置、电子设备及存储介质 | |
CN111414382A (zh) | 一种基于MongoDB的慢SQL聚合展示方法和系统 | |
CN115712654A (zh) | 一种交易状态查询的方法及装置 | |
CN112699129A (zh) | 一种数据处理系统、方法及装置 | |
CN110019507B (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 |