大数据优化

大数据优化
zzh主维表和相关维表关联时在不影响结果的情况下,尽量用left join,避免使用join。因为要保证相关维表丢数据影响主维表数据
两表join时,先where条件过滤,再join,避免join后数据量过大。
使用union all来合并数据(不影响结果的情况下),而不是union,因为union会去重,增加负担。
用查询的方式修改数据,不用update语句
性能如何提升?
- join
- 可以减少数据量
- 存在重复计算
- 数据重复读取
所有在nd表中用1d表减少重复计算
用炸裂函数减少io次数
- 获取时间范围最大的数据集
- 将查询的数据集在内存中进行炸裂处理
- 将炸裂后的结果集筛选出有用的数据
- 将筛选后的数据照标记进行分组统计
在7d和30d表中用1d表,30d表也算了7d表,可以加if判断,在30d表中算7d,但字段会变多
[up主专用,视频内嵌代码贴在这]
