分享到

百万量级数据不要怕,一招教你精准锁定

用户分享 2022-4-14 16:13 1052人浏览 1人回复
摘要

在做数据分析时你有没有遇到这些问题:数据量大,怎么也找不到特定日期的文件老板要看某年某月的销售数据,你要从百万量级数据中一条条寻找……要是使用永洪BI,会不会有一种方法,让我们在百万量级的数据中,一眼锁 ...

在做数据分析时你有没有遇到这些问题:


数据量大,怎么也找不到特定日期的文件


老板要看某年某月的销售数据,你要从百万量级数据中一条条寻找

……


要是使用永洪BI,会不会有一种方法,让我们在百万量级的数据中,一眼锁定要找的那一条


有的,那便是文件过滤


首先,我们来说一下什么是meta,什么是文件过滤。


01

什么是meta


meta是集市文件上打的标签,可以大致理解为这个集市文件的属性


比如,某个集市数据,我们是按天入的,每天生成的集市文件是前一天的数据,给这个集市文件添加了一个属性(属性名:date,属性值:昨天的日期),这个就叫做meta。


这个举个常见例子,有某个部门的销售数据,每天的销售数据存储在一个excel中,这个excel的文件名上带上这天的日期。集市文件的meta就相当于excel文件的文件名上的日期


02

什么是文件过滤


先说说文件,这里的“文件”,指的是增量任务生成的集市文件,这个文件是存储在m节点,安装目录/Yonghong/cloud下,也就是存储在m节点磁盘上的。


文件过滤,接着上面excel的比喻讲,大致就是每天的销售数据,存储在一个excel文件中,这个excel的文件名还带上了这天的日期。


要查询某天的销售数据就很快了,根据日期直接定位到要查询的这天,快速准确找到这天的数据,不需要所有的excel数据都打开去查一下。


回到文件过滤也是类似的效果,给每个集市文件打上了meta,meta的值是每个集市文件对应的数据的日期,那么要查询某天,或者某段时间的数据,就可以快速定位并查询,不需要所有的集市文件都查一遍,然后去找到想要的日期的数据。


说到这里是不是有个大概的概念,接下来说说为什么要什么文件过滤。


03

为什么做文件过滤


举个例子,某个部门的销售数据,每天大概有100万左右,一年大概就是3亿+。如果存储在excel中,一个excel文件假设存储的是100万左右,那么1年就有365个excel。


如果不把每天的数据存储在同一个excel,且文件名上标上每天的日期,那么当要查某天,或者某段时间的数据,是不是一个很大的工作量,需要把这365个excel都打开查一遍


对应到产品的集市中也是一样,一个集市文件最大存储的行数大概100万行,如果这些数据都是按天增量的,且在集市文件生成的时候就给这些文件打上了meta。


meta值是数据对应的日期,那么当查询某一天的数据的时候,就可根据meta的值进行过滤,只查meta值为这天的这一个集市文件,那么计算量就是100万


再来看一下如果不使用文件过滤,就需要把这365个集市文件都查询一遍,最终再过滤出这一天的数据,计算量是3亿+


使用文件过滤是为了减少实际计算量,减少计算量后计算需要的时间也可以大幅减少,那么报表打开也就更快了。


下面做个比较,可以看到使用文件过滤与否,查询相同的时间的数据,实际的后台计算量和计算时间的巨大差别。


前面已经了解了,文件过滤是什么以及为什么要用文件过滤,接下来就是文件过滤怎么用?


文件过滤的使用前提:数据已经通过增量的方式入到集市中,且在入的时候已经按照日期打好meta。


首先来看一下咱们增量且已经打好meta的集市数据。


使用步骤:


1、在“创建数据集”模块,新建数据集市数据集,选择增量任务中设置的文件夹名称,就得到一个数据集市数据集。


2、在数据集市数据集添加文件过滤,比如查询某一天的数据,对应的文件过滤如下:



3、使用这个数据集市数据集制作报告,并将步骤2中定义的参数coffeeMonth的值,在报告中传递到数据集使用。


注意:参数的数据类型和格式一定要跟meta的数据类型和格式一致,如果不一致需要脚本处理。



4、保存报告并查看效果,在报告中筛选选择某个月,实际底层查询的集市文件只查询这个月对应,而不是集市文件。


查询效果见下图,底层实际计算情况见截图(查询2020-01月的数据,使用文件过滤和不使用文件过滤的对比)。



评论
1052人参与,1条评论

精彩评论

查看全部评论>>

9 文章13 人气
数据分析
热门问答
  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |联系社区管理员|《永洪社区协议》