滴滴大数据开发实习一面面经
1. 简历深挖
2. mysql binlog了解吗
3. shell脚本写过吗
4. 两个集群,一张hive表如何进行数据共享,A集群如何同步到B集群中
5. 一张订单表,支付状态会发生变化,如何采集到ods?
面试官说由于每张mysql表都是在系统上有应用的,所以应该用update的方式更新支付状态,不能采用数仓的方式去思考问题,不能用拉链表。数仓可以保存历史数据,但是mysql表必须要用update的方式,不然在系统上数据会显示错误。
用户角度:如果数据状态没有更新就会出现,用户界面就会显示未支付。
6. sql执行流程
7. 数据倾斜,9999w条id为1的数据,如何处理数据倾斜问题
8. 数仓的分层
9. hadoop是什么
10. spark和mapreduce的应用场景。
11. 三个sql题
第一道:b left join a表的返回结果是什么
a:
id name
1 a
1 a
2 b
3 e
b:
id name
1 a
1 a
2 b
第二道:忘了,简单的累计开窗函数
第三道:列转行
tab:
t_1 t_2 t_3
a c 1
a d 2
a e 3
a c 4
a d 5
a e 6
结果表
t_1 res_2 res_3 res_4
a 1 2 3
b 4 5 6
select
t_1
,max(case when t_2 = 'c' then t_3 end) as res_2
,max(case when t_2 = 'd' then t_3 end) as res_3
,max(case when t_2 = 'e' then t_3 end) as res_4
from tab
group by t_1
#滴滴##滴滴实习##滴滴数据开发#
2. mysql binlog了解吗
3. shell脚本写过吗
4. 两个集群,一张hive表如何进行数据共享,A集群如何同步到B集群中
5. 一张订单表,支付状态会发生变化,如何采集到ods?
面试官说由于每张mysql表都是在系统上有应用的,所以应该用update的方式更新支付状态,不能采用数仓的方式去思考问题,不能用拉链表。数仓可以保存历史数据,但是mysql表必须要用update的方式,不然在系统上数据会显示错误。
用户角度:如果数据状态没有更新就会出现,用户界面就会显示未支付。
6. sql执行流程
7. 数据倾斜,9999w条id为1的数据,如何处理数据倾斜问题
8. 数仓的分层
9. hadoop是什么
10. spark和mapreduce的应用场景。
11. 三个sql题
第一道:b left join a表的返回结果是什么
a:
id name
1 a
1 a
2 b
3 e
b:
id name
1 a
1 a
2 b
第二道:忘了,简单的累计开窗函数
第三道:列转行
tab:
t_1 t_2 t_3
a c 1
a d 2
a e 3
a c 4
a d 5
a e 6
结果表
t_1 res_2 res_3 res_4
a 1 2 3
b 4 5 6
select
t_1
,max(case when t_2 = 'c' then t_3 end) as res_2
,max(case when t_2 = 'd' then t_3 end) as res_3
,max(case when t_2 = 'e' then t_3 end) as res_4
from tab
group by t_1
#滴滴##滴滴实习##滴滴数据开发#
全部评论
第五题,用maxwell监视mysql的binlog来同步数据,如果mysql的操作是update,接收到的json里面会有old字段来记录更新之前的数据
什么时候投的呀
求问数据倾斜这个题怎么回答呀
佬,请问第4题怎么回答呀?
你笔试了吗,都的什么部门呀
相关推荐
点赞 评论 收藏
分享
11-24 14:20
北京大学 Java CoderEcho:虽然我没去大厂,但是待过俩家初创,我的感觉是厉害的初创很舍得给钱,也很看你的产出,产出不行直接把你开了。当然大厂也可能有这个问题。建议还是去大厂,如果被裁员了最起码还有大厂的title,这年头不确定的事儿太多了。
点赞 评论 收藏
分享