CN115858486A - 数据处理方法以及相关设备 - Google Patents
数据处理方法以及相关设备 Download PDFInfo
- Publication number
- CN115858486A CN115858486A CN202211581110.2A CN202211581110A CN115858486A CN 115858486 A CN115858486 A CN 115858486A CN 202211581110 A CN202211581110 A CN 202211581110A CN 115858486 A CN115858486 A CN 115858486A
- Authority
- CN
- China
- Prior art keywords
- merged
- target
- file
- merging
- data
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了数据处理方法以及相关设备,用于提升数据处理效率。本申请实施例方法包括:响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,所述目标合并任务用于从目标数据库获取所述目标业务数据对应的多个待合并文件,并将所述多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含所述目标业务数据的变更业务数据的文件;按照预设合并周期执行所述目标合并任务;响应于针对所述目标业务数据的处理请求,对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作。
Description
技术领域
本申请实施例涉及数据处理领域,尤其涉及数据处理方法以及相关设备。
背景技术
Flink CDC是一种开源的变更数据捕获方案,可以实时拉取业务数据库中与目标业务数据相关的变更业务数据,并同步至指定的数据仓中。
Flink CDC每次同步目标业务数据相关的变更业务数据到Iceberg时,会生成包含变更业务数据的文件,生成的文件可以作为目标业务数据对应的文件。随着同步次数的不断增加,会产生大量的与目标业务数据对应的文件。
但大量文件十分影响用户对目标业务数据的处理效率比如查询效率,无法实现高性能的业务数据查询。
发明内容
本申请实施例提供了数据处理方法以及相关设备,用于提升数据处理效率。
本申请实施例第一方面提供一种数据处理方法,包括:
响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,所述目标合并任务用于从目标数据库获取所述目标业务数据对应的多个待合并文件,并将所述多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含所述目标业务数据的变更业务数据的文件;
按照预设合并周期执行所述目标合并任务;
响应于针对所述目标业务数据的处理请求,对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作。
在一种具体实现方式中,每个所述待合并文件包括待合并数据文件和待合并元数据文件,所述将所述多个待合并文件合并为至少一个合并文件,包括:
将每个所述待合并文件的待合并数据文件合并为至少一个合并数据文件,并将每个所述待合并文件的待合并元数据合并为至少一个合并元数据文件,每个所述合并文件包括一个合并数据文件以及对应的一个合并元数据文件。
在一种具体实现方式中,在所述响应于针对目标业务数据的合并任务发起请求,生成目标合并任务之前,所述方法还包括:
若建立针对目标业务数据的变更同步任务,则生成所述合并任务发起请求,所述变更同步任务用于将业务数据库中的所述目标业务数据同步至所述目标数据库。
在一种具体实现方式中,所述方法还包括:
若所述变更同步任务的状态发生改变,则将所述目标合并任务的状态变更为所述变更同步任务改变后的状态。
在一种具体实现方式中,所述方法还包括:
响应于针对所述目标合并任务的状态改变请求,将所述目标合并任务的状态更新为所述状态改变请求指示的状态。
在一种具体实现方式中,所述目标数据库中的数据格式为Iceberg表,所述将所述多个待合并文件合并为至少一个合并文件,包括:
调用Iceberg表的合并接口将述多个待合并文件合并为至少一个合并文件。
在一种具体实现方式中,所述对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作,包括:
根据所述处理请求指示的处理范围,对在所述处理范围内且与所述目标业务数据对应的合并文件,执行所述处理请求对应的处理操作。
本申请实施例第二方面提供一种数据处理装置,包括:
生成单元,用于响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,所述目标合并任务用于从目标数据库获取所述目标业务数据对应的多个待合并文件,并将所述多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含所述目标业务数据的变更业务数据的文件;
合并单元,用于按照预设合并周期执行所述目标合并任务;
处理单元,用于响应于针对所述目标业务数据的处理请求,对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作。
在一种具体实现方式中,每个所述待合并文件包括待合并数据文件和待合并元数据文件,所述合并单元,具体用于将每个所述待合并文件的待合并数据文件合并为至少一个合并数据文件,并将每个所述待合并文件的待合并元数据合并为至少一个合并元数据文件,每个所述合并文件包括一个合并数据文件以及对应的一个合并元数据文件。
在一种具体实现方式中,所述生成单元,还用于若建立针对目标业务数据的变更同步任务,则生成所述合并任务发起请求,所述变更同步任务用于将业务数据库中的所述目标业务数据同步至所述目标数据库。
在一种具体实现方式中,所述装置还包括:变更单元;
所述变更单元,用于若所述变更同步任务的状态发生改变,则将所述目标合并任务的状态变更为所述变更同步任务改变后的状态。
在一种具体实现方式中,所述装置还包括:更新单元;
所述更新单元,用于响应于针对所述目标合并任务的状态改变请求,将所述目标合并任务的状态更新为所述状态改变请求指示的状态。
在一种具体实现方式中,所述合并单元,具体用于调用Iceberg表的合并接口将述多个待合并文件合并为至少一个合并文件。
在一种具体实现方式中,所述处理单元,具体用于根据所述处理请求指示的处理范围,对在所述处理范围内且与所述目标业务数据对应的合并文件,执行所述处理请求对应的处理操作。
本申请实施例第三方面提供一种数据处理装置,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行第一方面所述的方法。
本申请实施例第四方面提供一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面所述的方法。
本申请实施例第五方面提供一种计算机存储介质,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如第一方面所述的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:可以根据针对目标业务数据的合并任务发起请求,生成目标合并任务。然后按照预设合并周期执行目标合并任务,定时将未合并的多次同步生成的多个包含目标业务数据的变更业务数据的待合并文件合并为至少一个合并文件。最后,在处理目标业务数据时,可获取相应的合并文件,而无需获取相应的大量待合并文件,可显著提升数据处理效率。
附图说明
图1为本申请实施例公开的数据处理方法的一种流程示例图;
图2为本申请实施例公开的数据处理方法的一种系统架构图;
图3为本申请实施例公开的数据处理装置一个结构示意图;
图4为本申请实施例公开的数据处理装置另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了解决使用Flink CDC进行同步时文件过多问题,现有技术提供了以下两种方案:
1、每日定时将业务数据库中目标业务数据的增量或全量数据同步到HIVE数仓,实现第二天可查的效果。HDFS分布式文件系统进行追加写入性能远远高于更新文件性能,所以HDFS存储一般不考虑对文件进行频繁更新。因此,HIVE不支持事务,只能进行批量同步,不支持数据库行级别的更新和/或删除,也就是无法对目标业务数据进行行级别的处理。这样一来HIVE在业务数据库中的目标业务数据有删除和/或更新的时候,无法实时保持和业务数据库中的目标业务数据的一致性,只能离线同步,每天同步的(增量的或全量的)目标业务数据只有第二天才能够看到。
2、使用Flink-CDC实时同步数据到Iceberg表,并写程序定时合并小文件。Iceberg表没有大小限制,但是Iceberg实现实时同步的方式是微批量同步,即每隔一段时间,将收集到的变更数据写成新的文件记录到HDFS中,新的文件包括这段时间源数据库中目标业务数据插入,更新,删除的所有数据,当需要查询目标业务数据的时候,会将存储目标业务数据的Iceberg表进行合并,也就是合并存储有目标业务数据的每个文件,形成一整张“逻辑表”进行查询。但这种合并方式需要用户手动为存储每个业务数据的Iceberg表写合并程序,缺乏易用性,且难以维护。
本申请实施例提供了文件处理方法以及相关设备,用于改善现有技术方案中导致数据处理效率低下的问题。
为了更好的说明本申请实施例的数据处理方法,下面先对本申请实施例涉及的部分概念进行解释。
变化数据捕获(CDC,change data capture)是指对于变化数据的捕获,数据库进行数据备份的一种方式。CDC常用于进行大量数据的备份。在广义的概念中,所有能够捕获到变更数据的技术,都可以称为CDC技术,CDC技术常用于备份、容灾以及将同一数据源产生的不同数据分发至不同的下游数据库中等场景中。
Debezium是一个开源的CDC引擎,能够取到MySQL、Oracle以及SQLServer的变更数据,并将这些变更数据都重做为统一的数据格式。
Flink-CDC是一个开源项目,使用了Debezium引擎以及Flink计算框架。可以实时拉取MySQL数据库、Oracle数据库以及Postgresql数据库中的变更数据,并将变更数据同步到不同的下游数据库或者数据仓库中。
X-Scheduler是一种执行调度框架,能够在友好地在界面调度各种离线任务,包括但不限于spark程序以及python程序等。
Iceberg是一种用于追踪超大型分析型数据表的新格式,是物理数据文件以及他们如何构建形成表格之间的抽象层。与现有的HIVE数仓不同,Iceberg既能够完成PB级数据表格的存储,又能完成对这些表的行级更新和/或删除操作。
请参阅图1,本申请实施例提供一种数据处理方法,包括:
101、响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,目标合并任务用于从目标数据库获取目标业务数据对应的多个待合并文件,并将多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含目标业务数据的变更业务数据的文件。
当接收到针对目标业务数据的合并任务发起请求时,就会生成相应的目标合并任务,目标合并任务主要是用于合并与目标业务数据相关的同步产生的多个文件(即后述待合并文件),详见后述步骤102中相关实施例。需要说明的是,合并任务发起请求和目标合并任务可以包括:合并周期(如后述预设合并周期)、合并对象(如后述与目标业务数据对应的多个待合并文件)以及合并文件大小阈值中的至少一个。
在一些具体实现方式中,合并任务发起请求可以由用户手动发起,或者在建立针对目标业务数据的变更同步任务时,就生成该合并任务发起请求。
具体的,若建立了针对目标业务数据的变更同步任务,则生成针对该目标业务数据的合并任务发起请求。无需手动作触发合并任务发起请求,可以在用户无感知的情况下,实现文件合并以提升查询性能。其中,针对目标业务数据的变更同步任务用于按照预设同步周期将目标业务数据在每个同步周期内产生的变更业务数据从源数据库(即目标业务数据对应的业务数据库)同步至目标数据库。
102、按照预设合并周期执行目标合并任务。
生成目标合并任务后,按照目标合并任务包含的预设合并周期,可以定时根据目标合并任务的要求,进行文件合并。
具体的,可以将存储合并对象的数据库作为目标数据库,并根据目标合并任务的要求从目标数据库中筛选出满足待合并条件的,也就是需要进行合并的,与目标业务数据相关的未合并的待合并文件作为目标业务数据对应的多个待合并文件。然后,将多个待合并文件合并为至少一个合并文件,需要注意的是,若目标合并任务包括合并文件大小阈值,则合并产生的每个合并文件都应该小于等于该合并文件大小阈值。其中,存储有至少部分目标业务数据且未被合并过的文件都可以视作与目标业务数据相关的未合并文件。需要说明的是,待合并文件并非指未被合并过至任一合并文件的数据。每个待合并文件是指一次同步后产生的文件,也就是每个待合并文件仅存储有一次同步的数据(如变更数据以及相应的元数据)。
可以理解的是,若采用Flink CDC对目标业务数据进行增量同步,则每次进行数据同步时都会产生一个文件,以记录上次同步后至本次同步时的一段时间内,发生过增删改的目标业务数据,即本次同步需要同步的变更业务数据,
需要说明的是,本申请前述以及后述实施例中所述的数据库可以是任一数据库或者数据仓库,此处不做具体限定。
103、响应于针对目标业务数据的处理请求,对目标业务数据对应的合并文件执行处理请求对应的处理操作。
当执行过目标合并任务后,接收到针对目标业务数据的处理请求,可以依照处理请求中指示需要处理的至少部分目标业务数据,获取相应的合并文件,并对获得的合并文件执行处理请求中指示的处理操作,处理操作包括但不限于:查询以及删除中的至少一个。
进一步的,本步骤中根据处理请求指示的处理范围,对在处理范围内且与目标业务数据对应的合并文件,执行处理请求对应的处理操作。
具体的,处理请求中可以指示需要处理哪次同步之前或之后的目标业务数据(即处理范围),然后便可以对于目标业务数据对应的合并文件中(即存储了目标业务数据的合并文件中)该次同步之前或之后的目标业务数据进行处理操作。
本实施例中,可以根据针对目标业务数据的合并任务发起请求,生成目标合并任务。然后按照预设合并周期执行目标合并任务,定时将未合并的多次同步生成的多个包含目标业务数据的变更业务数据的待合并文件合并为至少一个合并文件。最后,在处理目标业务数据时,可获取相应的合并文件即可,而无需获取相应的大量待合并文件,可显著提升数据处理效率。
在实际应用中,每次通过Flink CDC技术进行变更数据同步时,会产生两个文件,一个文件用于存储本次需要进行同步的变更数据,另一个文件用于存储描述本次需要进行同步的变更数据的元数据。因此,在一种具体实现方式中,前述步骤102中,将多个待合并文件合并为至少一个合并文件可以通过以下方式实现:将每个待合并文件的待合并数据文件合并为至少一个合并数据文件,并将每个待合并文件的待合并元数据合并为至少一个合并元数据文件,每个合并文件包括一个合并数据文件以及对应的一个合并元数据文件。
具体的,每个合并文件对应一个待合并数据文件(用于存储变更数据)以及一个待合并元数据文件(用于存储描述前述变更数据的元数据)。因此,需要按照存储内容(可以是变更数据或元数据)的不同将多个待合并文件合并为至少一个合并文件。同理,每个合并文件也包含一个合并数据文件以及一个合并元数据文件。
需要说明的是,一般情况下,变更数据的大小远大于描述该变更数据的元数据大小,因此,若存在合并文件大小阈值,则合并文件大小阈值可以是仅用于限制合成的合并文件中的合并数据文件的大小,或者合并文件大小阈值可以是用于限制合并文件中合并数据文件以及合并元数据文件的大小,此处不作具体限定。
在一些具体实现方式中,可以根据合并文件大小,不断从未被合并的多个待合并文件包括的多个待合并数据文件中,尽可能多的选择总大小不大于预设的合并文件大小阈值的至少两个待合并数据文件。然后,将这两个待合并数据文件合并为一个合并数据文件,并将这两个待合并数据文件分别对应的待合并元数据文件合并为一个合并元数据文件,就得到了一个包含合并数据文件和合并元数据文件的合并文件。如此循环处理未被合并过的每个待合并文件,直至确定出的多个待合并文件均被合并,则本轮次(即这个合并周期)的目标合并任务完成。
需要说明的是,在另一些实现方案中,为了释放存储空间,还可以在根据多个待合并文件合成合并文件后将多个待合并文件删除、或者定时删除已经被合并过的待合并文件,以提升存储资源的利用率。
在前述实施例的基础上,进一步的,在生成目标合并任务之后,还可以对目标合并任务的状态进行修改,也就是可以将目标合并任务终止、暂停或启动,具体可以通过以下两种方式实现:
方式一,当变更同步任务的状态发生改变时应当同步改变目标合并任务的状态。目标合并任务就是用于合并多个变更同步任务产生的待合并文件的,所以若变更同步任务终止或暂停,则不会出现因同步产生的大量的与目标业务数据相关的文件,也无需执行目标合并任务。
方式二,直接响应于针对目标合并任务的状态改变请求,将目标合并任务的状态修改为状态改变请求所指示的状态。可以理解的是,在数据库的计算资源紧张时,为了更好的释放计算资源,可以暂缓目标合并任务的进行,此时可以发起针对目标合并任务的状态改变请求,暂停目标合并任务的进行,以释放计算资源。
在实际应用中,还可以结合方式一以及方式二,在保证目标合并任务的状态会跟随变更同步任务的状态改变的基础上,还可以随时响应于状态改变请求对目标合并任务的状态进行更改,本申请实施例不对目标合并任务的状态改变作具体限定。
前面描述了本申请实施例提供的数据处理方法,下面在实际场景下,描述本申请实施例的具体实现细节。
首先说明实现本申请实施例的技术架构,请参阅图2,合并任务的产生依赖于Flink CDC任务(即变更同步任务)的创建,每创建一个Flink CDC任务,就会自动构建一个对于相应的目标业务数据的合并任务。Fink CDC任务每次都会将该次的变更数据写入到Iceberg表中,每次将该次的变更数据写入到Iceberg表中都会产生一个合并文件,Iceberg表依赖于Flink CDC任务的创建。合并任务用于对Iceberg表中的每个未合并的待合并文件进行合并,X-Scheduler调度程序可以调度合并任务的执行。整个系统的底层由hadoop平台支持,负责Iceberg表的存储和计算资源的分配。
然后,用户仅需要手动构建CDC任务(同Flink CDC任务),合并任务的job以及X-Scheduler调度程序将会自动构建。另外,还需要将X-Scheduler调度程序上传至后台,以使得X-Scheduler调度程序可以定期调用合并任务的job来执行合并任务。
具体的,用户可以在CDC任务构建界面输入同步对象(即目标业务数据)所在的来源数据库、来源表、以及目标数据库和目标表,便可以构建出一个CDC任务,将变更数据从来源表同步到目标表,也就是将目标业务数据从业务数据库同步到目标数据库。合并任务的job可以是spark job,输入表名后执行该job,能够调用Iceberg的相关合并接口将Iceberg表包含的未被合并的待合并文件合并为一个或多个合并文件。需要说明的是,Iceberg表包含的文件分为data和manifest文件,data文件用于存储变更数据,manifest用于存储描述变更数据的元数据,所以合并时需要分别合并两种文件(具体可参照前述相关实施例),最后删除相应的待合并文件,完成文件合并。
最后,用户可以在CDC任务的状态控制界面启动或停止任意CDC任务。启动CDC任务后,X-Scheduler调度程序可以定期调用合并任务的job,将目标业务数据的变更数据从源数据库(即对应的业务数据库)同步到目标数据库,并记录同步的数据量,整个合并任务执行过程用户无感知。
需要说明的是,本申请实施例方案应用于三节点256G,48core物理机以及tpch数据集的情况下,在源数据库中写入了1千万条数据,并对这1千万条数据进行增删改查操作,在合并前有三百个小文件时查询耗时为5.2s,在合并后仅有十个大文件时查询耗时为0.8s,说明本申请实施例的技术方案为读取Iceberg表带来了数倍的性能提升。
请参阅图3,本申请实施例提供一种数据处理装置,包括:
生成单元301,用于响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,目标合并任务用于从目标数据库获取目标业务数据对应的多个待合并文件,并将多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含目标业务数据的变更业务数据的文件;
合并单元302,用于按照预设合并周期执行目标合并任务;
处理单元303,用于响应于针对目标业务数据的处理请求,对目标业务数据对应的合并文件执行处理请求对应的处理操作。
在一种具体实现方式中,每个待合并文件包括待合并数据文件和待合并元数据文件,合并单元302,具体用于将每个待合并文件的待合并数据文件合并为至少一个合并数据文件,并将每个待合并文件的待合并元数据合并为至少一个合并元数据文件,每个合并文件包括一个合并数据文件以及对应的一个合并元数据文件。
在一种具体实现方式中,生成单元301,还用于若建立针对目标业务数据的变更同步任务,则生成合并任务发起请求,变更同步任务用于将业务数据库中的目标业务数据同步至目标数据库。
在一种具体实现方式中,装置还包括:变更单元;
变更单元,用于若变更同步任务的状态发生改变,则将目标合并任务的状态变更为变更同步任务改变后的状态。
在一种具体实现方式中,装置还包括:更新单元;
更新单元,用于响应于针对目标合并任务的状态改变请求,将目标合并任务的状态更新为状态改变请求指示的状态。
在一种具体实现方式中,合并单元302,具体用于调用Iceberg表的合并接口将述多个待合并文件合并为至少一个合并文件。
在一种具体实现方式中,处理单元303,具体用于根据处理请求指示的处理范围,对在处理范围内且与目标业务数据对应的合并文件,执行处理请求对应的处理操作。
图4是本申请实施例提供的一种数据处理装置结构示意图,该数据处理装置400可以包括一个或一个以上中央处理器(central processing units,CPU)401和存储器405,该存储器405中存储有一个或一个以上的应用程序或数据。
其中,存储器405可以是易失性存储或持久存储。存储在存储器405的程序可以包括一个或一个以上模块,每个模块可以包括对数据处理装置中的一系列指令操作。更进一步地,中央处理器401可以设置为与存储器405通信,在数据处理装置400上执行存储器405中的一系列指令操作。
数据处理装置400还可以包括一个或一个以上电源402,一个或一个以上有线或无线网络接口403,一个或一个以上输入输出接口404,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该中央处理器401可以执行前述图1至图3所示实施例中数据处理装置所执行的操作,具体此处不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述的数据处理方法。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,所述目标合并任务用于从目标数据库获取所述目标业务数据对应的多个待合并文件,并将所述多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含所述目标业务数据的变更业务数据的文件;
按照预设合并周期执行所述目标合并任务;
响应于针对所述目标业务数据的处理请求,对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作。
2.根据权利要求1所述的方法,其特征在于,每个所述待合并文件包括待合并数据文件和待合并元数据文件,所述将所述多个待合并文件合并为至少一个合并文件,包括:
将每个所述待合并文件的待合并数据文件合并为至少一个合并数据文件,并将每个所述待合并文件的待合并元数据合并为至少一个合并元数据文件,每个所述合并文件包括一个合并数据文件以及对应的一个合并元数据文件。
3.根据权利要求1或2所述的方法,其特征在于,在所述响应于针对目标业务数据的合并任务发起请求,生成目标合并任务之前,所述方法还包括:
若建立针对目标业务数据的变更同步任务,则生成所述合并任务发起请求,所述变更同步任务用于将业务数据库中的所述目标业务数据同步至所述目标数据库。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述变更同步任务的状态发生改变,则将所述目标合并任务的状态变更为所述变更同步任务改变后的状态。
5.根据权利要求1或2所述的方法,其特征在于,在所述生成目标合并任务之后,所述方法还包括:
响应于针对所述目标合并任务的状态改变请求,将所述目标合并任务的状态更新为所述状态改变请求指示的状态。
6.根据权利要求1或2所述的方法,其特征在于,所述目标数据库中的数据格式为Iceberg表,所述将所述多个待合并文件合并为至少一个合并文件,包括:
调用Iceberg表的合并接口将述多个待合并文件合并为至少一个合并文件。
7.根据权利要求1或2所述的方法,其特征在于,所述对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作,包括:
根据所述处理请求指示的处理范围,对在所述处理范围内且与所述目标业务数据对应的合并文件,执行所述处理请求对应的处理操作。
8.一种数据处理装置,其特征在于,包括:
生成单元,用于响应于针对目标业务数据的合并任务发起请求,生成目标合并任务,所述目标合并任务用于从目标数据库获取所述目标业务数据对应的多个待合并文件,并将所述多个待合并文件合并为至少一个合并文件,其中每个待合并文件为一次同步生成的包含所述目标业务数据的变更业务数据的文件;
合并单元,用于按照预设合并周期执行所述目标合并任务;
处理单元,用于响应于针对所述目标业务数据的处理请求,对所述目标业务数据对应的合并文件执行所述处理请求对应的处理操作。
9.一种数据处理装置,其特征在于,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行权利要求1至7中任一项所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211581110.2A CN115858486A (zh) | 2022-12-09 | 2022-12-09 | 数据处理方法以及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211581110.2A CN115858486A (zh) | 2022-12-09 | 2022-12-09 | 数据处理方法以及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115858486A true CN115858486A (zh) | 2023-03-28 |
Family
ID=85671616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211581110.2A Pending CN115858486A (zh) | 2022-12-09 | 2022-12-09 | 数据处理方法以及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115858486A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116880993A (zh) * | 2023-09-04 | 2023-10-13 | 北京滴普科技有限公司 | 用于Iceberg中的大量小文件处理方法及装置 |
-
2022
- 2022-12-09 CN CN202211581110.2A patent/CN115858486A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116880993A (zh) * | 2023-09-04 | 2023-10-13 | 北京滴普科技有限公司 | 用于Iceberg中的大量小文件处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853242B2 (en) | Deduplication and garbage collection across logical databases | |
JP6553822B2 (ja) | 分散システムにおける範囲の分割および移動 | |
CN107111533B (zh) | 虚拟机集群备份 | |
EP2288975B1 (en) | Method for optimizing cleaning of maps in flashcopy cascades containing incremental maps | |
US11379492B2 (en) | Internal resource provisioning in database systems | |
US20160103845A1 (en) | Enhanced Handling Of Intermediate Data Generated During Distributed, Parallel Processing | |
CN107003890B (zh) | 高效地提供虚拟机参考点 | |
US20160162562A1 (en) | Database system, computer program product, and data processing method | |
CN106610876A (zh) | 数据快照的恢复方法及装置 | |
CN112965951A (zh) | 用于数据库中数据重分布的系统和方法 | |
US20240061712A1 (en) | Method, apparatus, and system for creating training task on ai training platform, and medium | |
US20200104216A1 (en) | Fileset passthrough using data management and storage node | |
US11226878B1 (en) | Accelerator-based database recovery | |
CN111930716A (zh) | 一种数据库扩容方法、装置及系统 | |
US20140324928A1 (en) | Large-scale data transfer | |
US10789087B2 (en) | Insight usage across computing nodes running containerized analytics | |
US20190179565A1 (en) | Global occupancy aggregator for global garbage collection scheduling | |
CN111666266A (zh) | 一种数据迁移方法及相关设备 | |
CN115858486A (zh) | 数据处理方法以及相关设备 | |
CN106250501B (zh) | 报表处理方法及报表系统 | |
US20220019465A1 (en) | Systems and methods for batch job execution in clustered environments | |
CN113297159B (zh) | 数据存储方法以及装置 | |
US20230376357A1 (en) | Scaling virtualization resource units of applications | |
CN109992575B (zh) | 大数据的分布式存储系统 | |
US11579978B2 (en) | Fileset partitioning for data storage and management |
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 |