System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据仓的文件处理方法、装置及电子设备制造方法及图纸_技高网

数据仓的文件处理方法、装置及电子设备制造方法及图纸

技术编号:40661828 阅读:3 留言:0更新日期:2024-03-18 18:54
本发明专利技术提供了一种数据仓的文件处理方法、装置及电子设备,其中,基于第一用户指令获取数据仓的目标库表范围;获取目标库表范围对应的目标分区信息;对目标分区信息按照预设的排序逻辑进行排序和筛选,以获得结果分区;获取结果分区对应的分区内存值和结果分区中的全部文件的总内存值;计算分区内存值和总内存值的差值,以得到分区内存差值,并将结果分区按照分区内存差值大小降序排列得到待处理分区;基于第二用户指令对待处理分区下的文件进行合并处理;通过增量文件探查与合并的方式,减小了数据仓存储压力,并让整个文件合并的过程变得简单高效,直接保证了合并后仅有一个文件,而且保留了原始文件格式。

【技术实现步骤摘要】

本专利技术涉及文件控制,尤其是涉及一种数据仓的文件处理方法、装置及电子设备


技术介绍

1、目前,hive数仓广泛应用于超大规模结构化数据的存储与分析过程,其底层文件系统hdfs本身的高容错性和高吞吐量为hive数仓提供了有力的支持。但是,hdfs文件系统本身并不是为小文件的存储而设计的,如果这个系统中存在大量的小文件,那么文件系统的命名空间也会占据大量的内存空间,同时,由于存在大量的小文件,也会对文件系统的算力进行占用,导致整体系统的运算能力降低,因此需要通过对文件进行合理的管理以使小减少文件系统内的小文件数量。

2、对于小文件的管理,目前可以通过hdfs自带的小文件存储工具:来实现,但是这两种方案仍然存在这许多不足。其中,现有的小文件管理工具虽然可以通过归档的方法或者合并分区的方法打包减少小文件数量,但是,这两种方法的操作过程比较复杂,并且同时合并后的文件的可读性也比较差,不方便查看合并后的文件,同时也无法实现在对小文件在归档前进行探查的过程,因此,采用这种方法对小文件进行管理的效率较低。


技术实现思路

1、有鉴于此,本专利技术的目的在于提供一种数据仓的文件处理方法装置及电子设备,以减小数据仓存储压力,并让整个文件合并的过程变得简单高效。

2、第一方面,本专利技术实施例提供了一种数据仓的文件处理方法,包括:

3、基于第一用户指令获取数据仓的目标库表范围;

4、获取目标库表范围对应的目标分区信息;

5、对目标分区信息按照预设的排序逻辑进行排序和筛选,以获得结果分区;

6、获取结果分区对应的分区内存值和结果分区中的全部文件的总内存值;

7、计算分区内存值和总内存值的差值,以得到分区内存差值,并将结果分区进行排序,得到待处理分区;

8、基于第二用户指令对待处理分区下的文件进行合并处理。

9、进一步的,获取结果分区对应的分区内存值,包括:

10、统计结果分区下包含的每个文件的文件大小值;

11、基于下列公式确定结果分区的分区内存值;

12、b=sum((文件大小值/block值+1)×副本数+1)×150byte;

13、其中,b为分区内存值。

14、进一步的,获取结果分区中的全部文件的总内存值,包括:

15、统计结果分区下包含的全部文件的总大小值;

16、基于下列公式确定结果分区中的全部文件的总内存值;

17、a=((总大小值/block值+1)×副本数+1)×150byte;

18、其中,a为总内存值。

19、进一步的,基于第一用户指令获取数据仓的目标库表范围,包括:

20、接收到第一用户指令并进行响应,获取目标库表的数仓名称以及表名清单;

21、通过直连元数据库,在表名清单中查询目标库表的数仓名称,以确定目标库表范围。

22、进一步的,基于第二用户指令对待处理分区下的文件进行合并处理,包括:

23、接收到第二用户指令并进行响应,调用待处理分区;

24、对待处理分区进行重写,以对待处理分区下的文件进行合并处理。

25、进一步的,方法还包括:

26、基于第三用户指令,判断合并处理的过程是否结束;

27、如果否,则继续调用待处理分区。

28、进一步的,对目标分区信息按照预设的排序逻辑进行排序和筛选,以获得结果分区,包括:

29、对目标分区信息按文件数量降序排列;

30、获取前100个且文件数量大于1目标分区信息,以获得结果分区。

31、第二方面,本专利技术实施例提供了一种数据仓的文件处理装置,包括:

32、第一获取模块,用于基于第一用户指令获取数据仓的目标库表范围;

33、第二获取模块,用于获取目标库表范围对应的目标分区信息;

34、筛选模块,用于对目标分区信息按照预设的排序逻辑进行排序和筛选,以获得结果分区;

35、第三获取模块,用于获取结果分区对应的分区内存值和结果分区中的全部文件的总内存值;

36、计算模块,用于计算分区内存值和总内存值的差值,以得到分区内存差值,并将结果分区按照分区内存差值大小降序排列得到待处理分区;

37、处理模块,用于基于第二用户指令对待处理分区下的文件进行合并处理。

38、第三方面,本专利技术实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现上述任一项的数据仓的文件处理方法。

39、第四方面,本专利技术实施例提供了一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述任一项的数据仓的文件处理方法。

40、本专利技术提供的数据仓的文件处理方法、装置及电子设备,其中,基于第一用户指令获取数据仓的目标库表范围;获取目标库表范围对应的目标分区信息;对目标分区信息按照预设的排序逻辑进行排序和筛选,以获得结果分区;获取结果分区对应的分区内存值和结果分区中的全部文件的总内存值;计算分区内存值和总内存值的差值,以得到分区内存差值,并将结果分区按照分区内存差值大小降序排列得到待处理分区;基于第二用户指令对待处理分区下的文件进行合并处理;通过增量文件探查与合并的方式,减小了数据仓存储压力,并让整个文件合并的过程变得简单高效,直接保证了合并后仅有一个文件,而且保留了原始文件格式。

41、本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

42、为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

本文档来自技高网...

【技术保护点】

1.一种数据仓的文件处理方法,其特征在于,包括:

2.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述获取所述结果分区对应的分区内存值,包括:

3.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述获取所述结果分区中的全部文件的总内存值,包括:

4.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述基于第一用户指令获取数据仓的目标库表范围,包括:

5.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述基于第二用户指令对所述待处理分区下的文件进行合并处理,包括:

6.根据权利要求5所述的数据仓的文件处理方法,其特征在于,所述方法还包括:

7.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述对所述目标分区信息按照预设的排序逻辑进行排序和筛选,以获得结果分区,包括:

8.一种数据仓的文件处理装置,其特征在于,包括:

9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1至7任一项所述方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1-7所述的方法。

...

【技术特征摘要】

1.一种数据仓的文件处理方法,其特征在于,包括:

2.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述获取所述结果分区对应的分区内存值,包括:

3.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述获取所述结果分区中的全部文件的总内存值,包括:

4.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述基于第一用户指令获取数据仓的目标库表范围,包括:

5.根据权利要求1所述的数据仓的文件处理方法,其特征在于,所述基于第二用户指令对所述待处理分区下的文件进行合并处理,包括:

6.根据权利要求5所述的数据仓的文件处理方法,其特征在于,所...

【专利技术属性】
技术研发人员:曾岸林王卓李冰李胜军邵长宏范文祥邢凯赵美亮孙杨刘铸澎陈炳印金龙刘艳艳
申请(专利权)人:阳光保险集团股份有限公司
类型:发明
国别省市:

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

1