一种数据抽取方法及装置制造方法及图纸

技术编号:32965940 阅读:18 留言:0更新日期:2022-04-09 11:22
本申请提供一种数据抽取方法及装置,应用于ETL工具;所述方法包括:响应于针对待抽取数据的数据交换任务的开始指令,向数据源端发送针对所述待抽取数据的数据抽取请求;其中,所述数据源端是基于分布式文件系统、以数据块为单位实现数据存储的;接收并记录所述数据源端返回的与所述待抽取数据对应的若干数据块的数据块信息;分别接收与所述若干数据块中的每个数据块对应的抽取开始消息以及抽取结束消息;如果接收到与所述若干数据块中的每个数据块对应的抽取开始消息和抽取结束消息,则确定所述待抽取数据已完成抽取,从而确定所述数据交换任务已执行成功。交换任务已执行成功。交换任务已执行成功。

【技术实现步骤摘要】
一种数据抽取方法及装置


[0001]本申请涉及数据交换
,尤其涉及一种数据抽取方法、装置、电子设备及机器可读存储介质。

技术介绍

[0002]ETL(Extract

Transform

Load,抽取

转换

加载),可以用来描述将数据从数据源端经过抽取、转换、加载至目的端的过程。ETL是BI(Business Intelligence,商业智能)项目的重要环节,可以将企业中分散、零乱、标准不统一的数据整合在一起,为企业的决策提供分析依据。
[0003]在实际应用中,可以利用ETL工具来创建并执行数据交换任务,实现数据源端与目的端之间的数据交换;还可以通过ETL工具记录的日志,获知所述数据交换任务的任务开始时间、任务结束时间、以及任务执行结果。
[0004]在相关技术中,如果网络异常等原因导致所述数据交换任务中断,重启所述数据交换任务后,需要删除已完成交换的部分数据,并重新执行所述数据交换任务,导致时间浪费。

技术实现思路

[0005]本申请提供一种数据抽取方法,应用于ETL工具;所述ETL工具用于执行将数据源端存储的数据经过抽取、转换、加载到目的端的数据交换任务;其中,所述数据源端是基于分布式文件系统、以数据块为单位实现数据存储的;所述方法包括:
[0006]响应于针对待抽取数据的数据交换任务的开始指令,向所述数据源端发送针对所述待抽取数据的数据抽取请求;以使所述数据源端获取与所述待抽取数据对应的若干数据块的数据块信息,并向所述ETL工具返回所述数据块信息;
[0007]接收并记录所述数据源端返回的与所述待抽取数据对应的若干数据块的数据块信息;
[0008]分别接收与所述若干数据块中的每个数据块对应的抽取开始消息以及抽取结束消息;其中,所述抽取开始消息用于指示开始抽取对应的数据块中存储的数据;所述抽取结束消息用于指示已完成抽取对应的数据块中存储的数据;
[0009]如果接收到与所述若干数据块中的每个数据块对应的抽取开始消息和抽取结束消息,则确定所述待抽取数据已完成抽取,从而确定所述数据交换任务已执行成功。
[0010]可选的,所述如果接收到与所述若干数据块中的每个数据块对应的抽取开始消息和抽取结束消息,则确定所述待抽取数据已完成抽取,包括:
[0011]如果接收到与所述若干数据块中的任一数据块对应的抽取开始消息和抽取结束消息,则确定该数据块已完成抽取;
[0012]如果所述若干数据块均已完成抽取,则确定所述待抽取数据已完成抽取。
[0013]可选的,所述方法还包括:
[0014]如果接收到与所述若干数据块中的任一数据块对应的抽取开始消息,且未接收到与该数据块对应的抽取结束消息,确定该数据块未完成抽取。
[0015]可选的,所述方法还包括:
[0016]响应于接收到与该数据块对应的抽取开始消息,确定在预设时长内是否接收到与该数据块对应的抽取结束消息;
[0017]如果在预设时长内接收到与该数据块对应的抽取结束消息,则确定该数据块已完成抽取;
[0018]如果在预设时长内未接收到与该数据块对应的抽取结束消息,则确定该数据块抽取异常。
[0019]可选的,所述方法还包括:
[0020]如果所述若干数据块中的部分数据块抽取异常,则确定所述待抽取数据抽取异常,从而确定所述数据交换任务执行异常。
[0021]可选的,所述方法还包括:
[0022]如果确定所述数据交换任务执行异常,则按照预设周期向所述数据源端周期性地发送针对所述待抽取数据的恢复抽取请求;其中,所述恢复抽取请求中携带有所述若干数据块中未完成抽取的数据块的数据块信息;以使所述数据源端基于所述未完成抽取的数据块的数据块信息,继续针对所述待抽取数据进行抽取。
[0023]可选的,所述方法还包括:
[0024]如果确定所述数据交换任务执行异常,则响应于针对所述数据交换任务的重启指令,向所述数据源端发送针对所述待抽取数据的恢复抽取请求;其中,所述恢复抽取请求中携带有所述若干数据块中未完成抽取的数据块的数据块信息;以使所述数据源端基于所述未完成抽取的数据块的数据块信息,继续针对所述待抽取数据进行抽取。
[0025]可选的,所述数据源端包括大数据平台。
[0026]本申请还提供一种数据抽取装置,应用于ETL工具;所述ETL工具用于执行将数据源端存储的数据经过抽取、清洗转换之后加载到目的端的数据交换任务;其中,所述数据源端是基于分布式文件系统、以数据块为单位实现数据存储的;所述装置包括:
[0027]发送单元,用于响应于针对待抽取数据的数据交换任务的开始指令,向所述数据源端发送针对所述待抽取数据的数据抽取请求;以使所述数据源端获取与所述待抽取数据对应的若干数据块的数据块信息,并向所述ETL工具返回所述数据块信息;
[0028]接收单元,用于接收并记录所述数据源端返回的与所述待抽取数据对应的若干数据块的数据块信息;
[0029]所述接收单元,还用于分别接收与所述若干数据块中的每个数据块对应的抽取开始消息以及抽取结束消息;其中,所述抽取开始消息用于指示开始抽取对应的数据块中存储的数据;所述抽取结束消息用于指示已完成抽取对应的数据块中存储的数据;
[0030]确定单元,用于如果接收到与所述若干数据块中的每个数据块对应的抽取开始消息和抽取结束消息,则确定所述待抽取数据已完成抽取,从而确定所述数据交换任务已执行成功。
[0031]本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
[0032]所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述方法。
[0033]本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。
[0034]通过以上实施例,ETL工具在执行针对待抽取数据的数据交换任务时,通过获取与所述待抽取数据对应的若干数据块的数据块信息,以及分别接收与所述若干数据块中的每个数据块对应的抽取开始消息以及抽取结束消息,可以确定每个数据块的抽取结果,进一步可以确定所述待抽取数据的抽取结果、以及所述数据交换任务的执行结果;从而实现了通过ETL工具获知数据交换任务的执行进度,并使能断点续传能力。
[0035]后续,如果所述数据交换任务执行异常,ETL工具可以基于已接收到的所述数据块信息、抽取开始消息和抽取结束消息,确定与所述待抽取数据对应的若干数据块中未完成抽取的数据块,并向所述数据源发送针对所述待抽取数据的恢复抽取请求,以使所述数据源端可以基于所述恢复抽取请求中携带的未完成抽取的数据块的数据块信息,继续针对所述待抽取数据进行抽取;从而生效断点续传能力,无需删除已完成抽取的部分数据块,也无需针对所述待抽取数据重本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据抽取方法,其特征在于,应用于ETL工具;所述ETL工具用于执行将数据源端存储的数据经过抽取、转换、加载到目的端的数据交换任务;其中,所述数据源端是基于分布式文件系统、以数据块为单位实现数据存储的;所述方法包括:响应于针对待抽取数据的数据交换任务的开始指令,向所述数据源端发送针对所述待抽取数据的数据抽取请求;以使所述数据源端获取与所述待抽取数据对应的若干数据块的数据块信息,并向所述ETL工具返回所述数据块信息;接收并记录所述数据源端返回的与所述待抽取数据对应的若干数据块的数据块信息;分别接收与所述若干数据块中的每个数据块对应的抽取开始消息以及抽取结束消息;其中,所述抽取开始消息用于指示开始抽取对应的数据块中存储的数据;所述抽取结束消息用于指示已完成抽取对应的数据块中存储的数据;如果接收到与所述若干数据块中的每个数据块对应的抽取开始消息和抽取结束消息,则确定所述待抽取数据已完成抽取,从而确定所述数据交换任务已执行成功。2.根据权利要求1所述的方法,其特征在于,所述如果接收到与所述若干数据块中的每个数据块对应的抽取开始消息和抽取结束消息,则确定所述待抽取数据已完成抽取,包括:如果接收到与所述若干数据块中的任一数据块对应的抽取开始消息和抽取结束消息,则确定该数据块已完成抽取;如果所述若干数据块均已完成抽取,则确定所述待抽取数据已完成抽取。3.根据权利要求2所述的方法,其特征在于,还包括:如果接收到与所述若干数据块中的任一数据块对应的抽取开始消息,且未接收到与该数据块对应的抽取结束消息,确定该数据块未完成抽取。4.根据权利要求3所述的方法,其特征在于,还包括:响应于接收到与该数据块对应的抽取开始消息,确定在预设时长内是否接收到与该数据块对应的抽取结束消息;如果在预设时长内接收到与该数据块对应的抽取结束消息,则确定该数据块已完成抽取;如果在预设时长内未接收到与该数据块对应的抽取结束消息,则确定该数据块抽取异常。5.根据权利要求4所述的方法,其特征在于,还包括:如果所述若干数据块中的部分数据块抽取异常,则确定所述待抽取数据抽取异常,从而确定所述数据交换任务执行异常。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果确定所述数据交换任务执行异常,则按照预设周期向所述数据源端周期性地发送针对所...

【专利技术属性】
技术研发人员:林鹏程叶姣荣
申请(专利权)人:杭州数梦工场科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1