大数据开发面经

-- 我的论文相关、spark

1、网格怎么划分的
2、基于spark做的吗,使用了哪些算子?
这个转换类的:map、flatmap、mapPartitions、filter、reduceByKey
action: reduce、collect、count(eg分发到各个节点网格数目统计)
3、spark有哪些组件?组件之间怎么进行数据联通的?
回答了,master、DAG生成、依赖关系、worker等等。答得不是很好
4、yarn资源管理的工作机制
(简历自己写的给忘了)
5、yarn那些resouce manager、node manager 、application master、container角色?他们之间什么关系?每一个组件起的什么作用?
6、spark有哪些shuffle?什么场景下用哪些shuffle?
回答的hash shuffle和sort based shuffle。主要是中间文件太多。好像偏题了
7、spark中出现数据倾斜,怎么解决?
背的这个 https://blog.csdn.net/Aaron_ch/article/details/122224043
两阶段聚合没说清楚。

-- sql

1、班级表、学生表;统计每个班级的平均分
不需要考虑班级表left join学生表,只考虑学生表即可,班级表是一个迷惑条件。
我中间意识到好像不用班级表,但是有一个班级名称重复的情况,面试官赞同了。
面试官很好,还跟我讲了一下班级表是没用的。

-- java基础

1、线程安全保证的方式。答的四种关键字修饰 synchronized、volatile、atomic、final
2、讲一下synchronized和volatile区别。
没答上
3、共享屏幕写一下synchronized单例模式。
4、final、finally、finalize区别。
只说了final修饰的变量必须初始化,后面不能被赋值;其他没打上来┭┮﹏┭┮,java基础忘背了。。。
5、java线程池是什么,有哪些优势?
没答上
6、java8的lambda表达式是什么,说明一下优点、应用场景
只回答了lambda匿名函数,方便...
全部评论

相关推荐

7 30 评论
分享
牛客网
牛客企业服务