关注
3. 事实表关联维表 一般是大小表join 即事实表大维表小 或者 维表大 事实表属于增量数据 比较小
楼主说的情况 事实表很大 维表也很大
大数据处理其实不怕数据量大 而怕分布不均匀 数据倾斜是说事实表中数据有集中分布
情况1:
数据其实比较均匀 但经过hash后 某个分区数据就很多 可以尝试下调整分区数可能有效 虽然大多情况下没用
情况2:
事实表存在长尾效应 头部严重集中 比如淘宝的全体店铺的销售流水表 关联 店铺维表 头部店铺的销量一定是非常大的
对于这种的 可以分开处理
select
t1.*,t2.*
from
(
select * from fact_table where id in (1,2,3) -- 这三家店铺是头部单独处理
)t1
left join
(
select * from dim_table where id in (1,2,3) -- 此时维表就很小了 可以用mapjoin
)t2 on t1.id = t2.id
union all
select
t1.*,t2.*
from
(
select * from fact_table where id not in (1,2,3)
)t1
left join
(
select * from dim_table where id not in (1,2,3)
)t2 on t1.id = t2.id;
情况3:
数据量相当大 且不止是头部 头身都很大 只有少数数据比较少 想象的场景是物联网中 某个机具当天的心跳信息 关联 机具的基础信息 几乎每个机具的心跳信息都有上千万条
1.维表能不能先过滤 可能维表1kw条 但关联用到的只有100w 转为大小表join
select * from dim_table where id in (select id from fact_table group by id)
2.如果两个表都很大 那不是数据倾斜 而是数据堆积 每个任务处理时间都很长
这种的不要以天级别做join 而是小时级别 每一个小时做一次 到时候如果再数据倾斜再考虑上面的方法
#数仓开发#
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
转发
04-16 15:03
湖南工业大学 计算机类 点赞 评论 收藏
转发
牛客热帖
- 1... 携程oc了2.4W
- 2... 美团-Java后端-平台技术部-一面凉经(复活赛)8471
- 3... 31天勇闯盲审(附盲审经验5040
- 4... 我真是一个废物,废物本废,到现在也找不到实习不管回答上来,还是没回答上来,都不会有公司要我的。。。。。。。想发疯,我最最最最不理解的就是滴滴这个为啥没给我过!问的都很简单啊,我都答上来了,到底差在哪里了情绪每天都在边缘游走,精神状态好差啊,快抑郁了好了,emo完了,继续努力,总有眼瞎面试官能看上我的叭4990
- 5... 【话术建议】求职者和企业的互骗话术?4810
- 6... 微信支付二面4294
- 7... 捞简历这件事儿4235
- 8... 字节抖音电商后端日常实习一二三面已oc4025
- 9... 问一下xdm 怎么把拒绝过的Offer 再舔回来🥺3254
- 10... 美团暑期offer(我!爱!美!团!)2495
正在热议
# 牛客帮帮团来啦!有问必答 #
683376次浏览 11261人参与
# 市场营销面经 #
3902次浏览 114人参与
# 2022届毕业生现状 #
315213次浏览 4396人参与
# 你会选择考研还是直接就业 #
74564次浏览 854人参与
# 我的上岸简历长这样 #
160403次浏览 3209人参与
# 无实习如何秋招上岸 #
219016次浏览 3424人参与
# 浅聊一下我实习的辛苦费 #
79754次浏览 739人参与
# 你的简历改到第几版了 #
298581次浏览 4509人参与
# 投了多少份简历才上岸 #
55572次浏览 938人参与
# 软件开发投递记录 #
465479次浏览 7115人参与
# 运营面经 #
10392次浏览 260人参与
# 科大讯飞求职进展汇总 #
35970次浏览 364人参与
# Offer比较,你最看重什么? #
49373次浏览 479人参与
# 毕业后不工作的日子里我在做什么 #
51806次浏览 687人参与
# 夸夸我的求职搭子 #
63497次浏览 773人参与
# 租房前辈的忠告 #
32597次浏览 2067人参与
# 秋招开了,你想投哪些公司呢 #
116064次浏览 3241人参与
# 硬件人的简历怎么写 #
77159次浏览 780人参与
# 写简历别走弯路 #
285635次浏览 3509人参与
# 产品面经 #
21986次浏览 426人参与