秋招面经第六弹:理想一面-大数据开发工程师

秋招第六弹:理想一面-大数据开发工程师

写在最前:秋招以来一直在冲,因为事情比较多,对于笔试面试一直没有复盘,现在靠仅存的记忆把面试的一些问题记录下来,尽可能记录出能回忆到的问题,但可能记的不是很全。

时长:45min

  1. 自我介绍

    亘古不变的环节

  2. 平时使用的技术栈有哪些?

  3. java的string底层怎么实现的?

  4. 讲一下java的list?

  5. hashmap在1.7和1.8有什么变化?

  6. JVM内存模型?怎么找到垃圾对象?

  7. 给了一个语句,大概是 person person = new person();问在JVM中这个语句对象都放在了哪里?

    八股倒是背了,但是这个例子真没有研究。大概是对象在栈,方法在堆

  8. spark和hadoop的区别?为什么spark会快?

  9. 对spark的shuffle有什么了解?平时考虑过shuffle的调优吗?

  10. spark的内存模型?

  11. spark的执行流程?怎么切分stage和task?stage对于task的分发又是怎么做的?

    这个涉及了一些spark源码的东西,回答stage就是根据shuffle,task根据block,task的分发涉及到了优先级调度,和running task、weight、minshare三个参数有关。

  12. 数仓分层怎么做的?为什么要分层?每层要注意什么?

  13. 维度建模了解吗?星型模型和雪花模型的区别?

  14. kafka有什么优势?有什么不足?

    平时关注太多kafka的优势了,不足真的是没有关注过

  15. kafka怎么选取leader?leader宕机之后怎么选取新的?新leader选举之后follow怎么向lead同步数据?

    这个问题是个连环问,一环一环,算是把kafka的数据一致性的保持问全了,涉及了ISR队列、AR队列、HW、LEO这些东西了

  16. flink的slot有什么作用?

  17. flink ckpt讲一下?平时怎么用的?

  18. flink的富函数了解吗?

  19. 算法:给一个数组[-1,10,2,-3,8,-9],求连续最大相乘结果。

  20. 反问:问了岗位工作内容?团队规模?负责的业务线有哪些?

总结:本次面试问的可以说有史以来最全的了,涉及到了很多的大数据相关的问题,而且又会涉及到源码,问的广度和深度都比较深,而且,面试官不是你回答完就结束了,会根据你的回答接着往下问你,总之这次面试之后感触还是很大的,下来把这些问题都整理了一下,这些问题在大数据面试中的出现频率也相当高了。总体感觉这次面试的广度和深度还是可以的,符合对面试的预期。

你可能感兴趣的:(数据仓库,大数据,java,开发语言)