一种用于doris的数据增量统计方法、装置、设备及存储介质与流程

文档序号:37003923发布日期:2024-02-09 12:49阅读:20来源:国知局
一种用于doris的数据增量统计方法、装置、设备及存储介质与流程

本发明涉及数据处理的,尤其涉及一种用于doris的数据增量统计方法、装置、设备及存储介质。


背景技术:

1、现有的数据仓库是基于doris实现的,doris是一个mpp架构实时性分析性数据库,在doris内部进行了分层,分成了三层,包括:ods(明细层)存放原始的明细数据,数据来源业务数据库;dws(数据服务层)为了不同报表的复用,所以包含多个维度字段,数据来源于ods层;ads(应用层)根据不同报表的统计需求,从dws层group by维度字段重新聚合,得到聚合统计结果,最终用户通过查询ads层的数据展示报表。

2、各层之间通过定时调度sql的方式,从下层抽取数据到上层,各层之间的调度任务分为两种任务类型,一种是增量统计,为了保证实时性,增量统计每分钟运行一次,另一种是全量统计,为了保证数据的准确性和程序的健壮性,每天会运行一次,重跑前几天的数据。

3、增量统计时,从ods层到dws层,由于每次只统计前几分钟的数据,所以统计速度是很快的,平均几秒就可以完成,可以满足分钟级别统计要求,但是从dws层到ads层,需要根据所需的统计维度进行group by,调用bitmap_union_count函数得到统计结果,所述bitmap_union_count函数先根据group by字段把相同维度值的bitmap数据结构先聚合起来求交集,这个过程需要重新聚合数据,解析bitmap求数据的交集,需要耗费大量的时间,降低数据增量统计的效率,无法满足分钟级别的实时统计要求。


技术实现思路

1、为了解决上述技术问题,本发明公开了一种用于doris的数据增量统计方法、装置、设备及存储介质,提高数据增量统计的效率。

2、为了实现上述目的,第一方面,本发明公开了一种用于doris的数据增量统计方法,包括:

3、根据获取的统计报表进行字段的划分,确定所述统计报表对应的统计指标字段和统计维度字段;

4、根据所述统计维度字段及所述统计指标字段,通过调用doris中预设的聚合模型对存储在所述doris的明细层中的数据进行聚合,获得所述统计报表对应的统计数据;

5、根据所述统计数据,通过调用所述doris中预设的数据统计函数计算所述统计数据的个数,获得所述统计报表对应的数据统计结果。

6、本发明公开了一种用于doris的数据增量统计方法,根据不同的当前的统计报表的表结构定制统计指标字段和统计维度字段,再根据所述统计指标字段和统计维度字段从所述doris的ods层中获取数据,并利用所述doris的聚合模型进行数据的聚合,由于使用的是聚合模型,所以数据新增时,维度列相同的数据即属于同一统计维度字段的数据就会先聚合成一行,再利用所述doris的数据统计函数统计数据个数时,因为同一维度列中已经是统计所需的字段,所以不需要再进行维度列的聚合,只需要统计当前统计维度字段对应的行中有多少个统计数据,即可得到统计结果,降低了数据统计的时间,提高了数据统计的效率。

7、作为优选例子,在所述通过调用doris中预设的聚合模型对存储在所述doris的明细层中的数据进行聚合,包括:

8、从所述doris的明细层中增量同步当前时刻前一段时间内的数据,获得待聚合的数据;

9、通过所述聚合模型遍历所述待聚合的数据并获取所述待聚合的数据中每一个第一数据的维度字段;

10、根据所述统计维度字段,通过所述聚合模型选取所述维度字段与所述统计维度字段相同时对应的第一数据,获得所述统计报表对应的统计数据。

11、本发明利用所述聚合模型及所述统计维度字段进行数据的聚合,使得聚合后获得数据已经按照统计维度字段进行分类,以此解决现有技术中的group by操作,降低数据解析的时间,提高数据统计的效率。

12、作为优选例子,在所述根据所述统计维度字段及所述统计指标字段,通过调用doris中预设的聚合模型对存储在所述doris的明细层中的数据进行聚合,还包括:

13、根据所述统计指标字段对所述统计数据进行分类,获得不同统计指标字段中每一个统计指标字段分别对应的若干个统计数据。

14、本发明根据所述统计指标字段对所述统计数据进行分类,以使得在后续的过程中进行不同指标数据的统计时,不再需要进行数据结构的解析,只需要统计当前指标字段中包含的数据个数即可,可有效提高数据统计的效率。

15、作为优选例子,在所述通过调用所述doris中预设的数据统计函数计算所述统计数据的个数,获得所述统计报表对应的数据统计结果,包括:

16、通过预设在所述doris中的bitmap_count函数计算所述若干个第一统计数据对应的数据个数,获得不同统计指标字段中每一个统计指标字段分别对应的第一数据统计结果;

17、根据所述统计维度字段、所述统计指标字段及所述第一数据统计结果,获得所述统计报表对应的统计数据。

18、本发明中根据统计维度字段对数据进行维度的划分,每一个维度行中对应的已经是聚合后获得的同一维度的数据,由此不再需要group by操作,减少了这个耗时的过程,由此提升了数据统计的速度。

19、第二方面,本发明还公开了一种用于doris的数据增量统计装置,所述装置包括字段划分模块、数据聚合模块及数据统计模块;

20、所述字段划分模块用于根据获取的统计报表进行字段的划分,确定所述统计报表对应的统计指标字段和统计维度字段;

21、所述数据聚合模块用于根据所述统计维度字段及所述统计指标字段,通过调用doris中预设的聚合模型对存储在所述doris的明细层中的数据进行聚合,获得所述统计报表对应的统计数据;

22、所述数据统计模块用于根据所述统计数据,通过调用所述doris中预设的数据统计函数计算所述统计数据的个数,获得所述统计报表对应的数据统计结果。

23、本发明公开了一种用于doris的数据增量统计装置,根据不同的当前的统计报表的表结构定制统计指标字段和统计维度字段,再根据所述统计指标字段和统计维度字段从所述doris的ods层中获取数据,并利用所述doris的聚合模型进行数据的聚合,由于使用的是聚合模型,所以数据新增时,维度列相同的数据即属于同一统计维度字段的数据就会先聚合成一行,再利用所述doris的数据统计函数统计数据个数时,因为同一维度列中已经是统计所需的字段,所以不需要再进行维度列的聚合,只需要统计当前统计维度字段对应的行中有多少个统计数据,即可得到统计结果,降低了数据统计的时间,提高了数据统计的效率。

24、作为优选例子,所述数据聚合模块包括增量同步单元及维度划分单元;

25、所述增量同步单元用于从所述doris的明细层中增量同步当前时刻前一段时间内的数据,获得待聚合的数据;

26、所述维度划分单元用于通过所述聚合模型遍历所述待聚合的数据并获取所述待聚合的数据中每一个第一数据的维度字段;根据所述统计维度字段,通过所述聚合模型选取所述维度字段与所述统计维度字段相同时对应的第一数据,获得所述统计报表对应的统计数据。

27、本发明利用所述聚合模型及所述统计维度字段进行数据的聚合,使得聚合后获得数据已经按照统计维度字段进行分类,以此解决现有技术中的group by操作,降低数据解析的时间,提高数据统计的效率。

28、作为优选例子,所述数据聚合模块还包括指标划分单元;

29、所述指标划分单元用于根据所述统计指标字段对所述统计数据进行分类,获得不同统计指标字段中每一个统计指标字段分别对应的若干个第一统计数据。

30、本发明根据所述统计指标字段对所述统计数据进行分类,以使得在后续的过程中进行不同指标数据的统计时,不再需要进行数据结构的解析,只需要统计当前指标字段中包含的数据个数即可,可有效提高数据统计的效率。

31、作为优选例子,所述数据统计模块包括指标统计单元及结合单元;

32、所述指标统计单元用于通过预设在所述doris中的bitmap_count函数计算所述若干个第一统计数据对应的数据个数,获得不同统计指标字段中每一个统计指标字段分别对应的第一数据统计结果;

33、所述结合单元用于根据所述统计维度字段、所述统计指标字段及所述第一数据统计结果,获得所述统计报表对应的统计数据。

34、本发明中根据统计维度字段对数据进行维度的划分,每一个维度行中对应的已经是聚合后获得的同一维度的数据,由此不再需要group by操作,减少了这个耗时的过程,由此提升了数据统计的速度。

35、第三方面,本发明公开了一种用于doris的数据增量统计设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现如第一方面所述的一种用于doris的数据增量统计方法。

36、第四方面,本发明公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的一种用于doris的数据增量统计方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1