System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及大数据,特别是涉及一种数据的批量计算方法、系统、装置、设备和可读存储介质。
技术介绍
1、随着大数据技术的发展,出现了批量计算技术,该技术用于数据分析,大量应用于风险监测、金融风控等场景。
2、传统技术中,在进行批量计算时,通常是先从文件系统中读取数据表然后根据sql(structured query language,结构化查询语言)的计算逻辑完成计算工作。
3、然而,在每次批量计算时,都需要从文件系统中全量读取sql计算所需的所有数据进行计算导致大量的重复计算,从而造成了计算资源的浪费同时由于庞大的数据量导致了计算风险增高,如由于io(input/output,输入/输出)、网络等波动导致计算失败。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高计算资源的利用率以及降低计算风险的数据的批量计算方法、系统、装置、设备和可读存储介质。
2、第一方面,本申请提供了一种数据的批量计算方法,应用于分布式系统的任一计算节点,包括:
3、响应于接收到批量计算子任务,扫描所述批量计算子任务对应的第一时间区间在文件系统中对应的桶,得到扫描结果;
4、基于所述扫描结果判断是否存在数据缺失;
5、若存在数据缺失,则基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充;所述第二时间区间小于或等于所述第一时间区间;其中,补充的数据是基于所述多笔第一原始业务数据进行数据转换以及合
6、基于数据补充后的文件系统处理所述批量计算子任务。
7、在其中一个实施例中,所述基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充包括:
8、从所述文件系统中加载数据缺失对应的第二时间区间的多笔第一原始业务数据;各所述第一原始业务数据按照所属的第二时间区间分区存储于所述文件系统中;
9、将各所述第一原始业务数据转换为初始中间态数据;
10、基于各所述初始中间态数据得到至少一个目标中间态数据;
11、基于每一笔所述目标中间态数据分别得到一个第一中间态表,并将各所述第一中间态表存储于所述文件系统中。
12、在其中一个实施例中,所述基于各所述初始中间态数据得到至少一个目标中间态数据包括:
13、获取各所述初始中间态数据的第一主键和所属的第二时间区间;
14、基于各所述第一主键和对应的第二时间区间分别进行哈希计算,得到多个哈希值;
15、基于所述多个哈希值对各所述初始中间态数据在所述分布式系统的各计算节点之间进行重分布;
16、将重分布后的初始中间态数据按照唯一主键以及唯一时间区间的规则,分别以各所述初始中间态数据对应的时间戳顺序进行排序并合并,得到至少一个目标中间态数据。
17、在其中一个实施例中,所述基于每一个所述目标中间态数据分别得到一个第一中间态表,并将各所述第一中间态表存储于所述文件系统中包括:
18、分别从每个所述目标中间态数据中拆分得到一个第一中间态表;
19、以各所述目标中间态数据对应的时间区间对各所述第一中间态表进行分桶,得到分桶目录;
20、从所述目标中间态数据中提取特征键,得到特征键目录;所述特征键目录为所述分桶目录下的子目录;
21、将各所述第一中间态表分别存储于所述文件系统中对应的分桶目录下的特征键目录中。
22、在其中一个实施例中,所述基于数据补充后的文件系统处理所述批量计算子任务包括:
23、从文件系统中加载得到多个第二中间态表;
24、对各所述第二中间态表进行重分区,得到多个第三中间态表;
25、基于所述多个第三中间态表处理所述批量计算子任务。
26、在其中一个实施例中,所述对各所述第二中间态表进行重分区,得到多个第三中间态表包括:
27、获取各所述第二中间态表的第二主键;
28、基于各所述第二主键对各所述第二中间态表在所述分布式系统的各计算节点上进行表重新分布,得到多个第三中间态表,以使一个所述第二主键对应的全部中间态表分布在同一个计算节点上。
29、第二方面,本申请还提供了一种数据的批量计算系统,包括分布式系统和文件系统;所述分布式系统包括多个计算节点;
30、各所述计算节点,用于响应于接收到批量计算子任务,扫描所述批量计算子任务对应的第一时间区间在文件系统中对应的桶,得到扫描结果;基于所述扫描结果判断是否存在数据缺失;若存在数据缺失,则基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充;所述第二时间区间小于或等于所述第一时间区间;其中,补充的数据是基于所述多笔第一原始业务数据进行数据转换以及合并得到的至少一个第一中间态表;基于数据补充后的文件系统处理所述批量计算子任务;
31、所述文件系统,用于存储各所述第一原始业务数据、各所述第一中间态表以及与所述分布式系统进行数据交互。
32、本申请还提供了一种数据的批量计算装置,包括:
33、扫描模块,用于响应于接收到批量计算子任务,扫描所述批量计算子任务对应的第一时间区间在文件系统中对应的桶,得到扫描结果;
34、判断模块,用于基于所述扫描结果判断是否存在数据缺失;
35、数据补充模块,用于若存在数据缺失,则基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充;所述第二时间区间小于或等于所述第一时间区间;其中,补充的数据是基于所述多笔第一原始业务数据进行数据转换以及合并得到的至少一个第一中间态表;
36、处理模块,用于基于数据补充后的文件系统处理所述批量计算子任务。
37、第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
38、响应于接收到批量计算子任务,扫描所述批量计算子任务对应的第一时间区间在文件系统中对应的桶,得到扫描结果;
39、基于所述扫描结果判断是否存在数据缺失;
40、若存在数据缺失,则基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充;所述第二时间区间小于或等于所述第一时间区间;其中,补充的数据是基于所述多笔第一原始业务数据进行数据转换以及合并得到的至少一个第一中间态表;
41、基于数据补充后的文件系统处理所述批量计算子任务。
42、第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
43、响应于接收到批量计算子任务,扫描所述批量计算子任务对应的第一时间区间在文件系统中对应的桶,得到扫描结果;
44、基本文档来自技高网...
【技术保护点】
1.一种数据的批量计算方法,应用于分布式系统的任一计算节点,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充包括:
3.根据权利要求2所述的方法,其特征在于,所述基于各所述初始中间态数据得到至少一个目标中间态数据包括:
4.根据权利要求2所述的方法,其特征在于,所述基于每一个所述目标中间态数据分别得到一个第一中间态表,并将各所述第一中间态表存储于所述文件系统中包括:
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述基于数据补充后的文件系统处理所述批量计算子任务包括:
6.根据权利要求5所述的方法,其特征在于,所述对各所述第二中间态表进行重分区,得到多个第三中间态表包括:
7.一种数据的批量计算系统,其特征在于,所述系统包括分布式系统和文件系统;所述分布式系统包括多个计算节点;
8.一种数据的批量计算装置,其特征在于,所述装置包括:
9.一种计算机设备,包括存储器和处理器,所
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
...【技术特征摘要】
1.一种数据的批量计算方法,应用于分布式系统的任一计算节点,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于数据缺失对应的第二时间区间的多笔第一原始业务数据对所述文件系统进行数据补充包括:
3.根据权利要求2所述的方法,其特征在于,所述基于各所述初始中间态数据得到至少一个目标中间态数据包括:
4.根据权利要求2所述的方法,其特征在于,所述基于每一个所述目标中间态数据分别得到一个第一中间态表,并将各所述第一中间态表存储于所述文件系统中包括:
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述基于数据补充后的文件系统处理所述批量计算子任务包...
【专利技术属性】
技术研发人员:周岚亭,王刚,陈伟,王新根,彭聪,
申请(专利权)人:浙江邦盛科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。