求职刷题神器

funit.cn

讨论区 > 求职面经 > 百度 大数据开发 面经附录答案

百度 大数据开发 面经附录答案

骨子里、忧伤
发布于2020-12-08 10:26:25 252浏览

1、自我介绍 ?
2、聊一下最近的项目,项目过程中遇到哪些问题,是怎样解决的 ?
3、Linkedhashmap和hashmap的区别?

LinkedHashMap是继承于HashMap,是基于HashMap和双向链表来实现的; HashMap无序,LinkedHashMap有序,可分为插入顺序和访问顺序两种,可基于访问顺序实现缓存 

4、说一下java虚拟机垃圾回收机制?

对象回收算法包括引用计数法和可达性分析算法。引用计数法简单高效,唯一缺点是当两个对象互相引用时无法被回收。可达性分析算法是通过一系列gc root的对象作为起点,搜索走过的路径形成引用链,当一个对象没有与任何引用链相连,表示对象不可达,可以内存回收

垃圾回收算法包括标记、清理算法、复制算法,标记整理算法,分代回收算法,其中新生代一般采用复制算法,老生代采用标记整理算法

5、Final修饰的int .sting map可以改变吗?

Final修饰基本数据类型值不可以改变,但是String,Map,数组等,都可以改变其内部的值,因为他们隶属于类,而类里面的属性还是可更改的。

6、Spark工作中你会用到哪些rdd?

工作中常用到map、flatmap、filter、sortBy、join

7、Map和mapPartition的区别?

Map整体遍历,mapPartition按照每一个分区进行遍历,效率更高

8、Spark有遇到过内存溢出吗?

Map过程中产生大量对象会导致内存溢出; 数据分布不平衡在Shuffer过程中会导致内存溢出 

9、Spark调优有了解吗?

基本调优和高级调优

10、讲一下mr shuffer 的过程?

首先map生成k.v键值对会收集在环形缓冲区中,当缓冲区达到80%会溢出到本地磁盘,在溢出过程中会按照key进行分区以及排序,然后reducer会根据自己的分区号去本地读取数据文件,读到后会进行合并以及排序,然后进入reducer流程

11、Shuffer过程中的排序算法了解吗?

Map溢出过程中用到的是快排,时间复杂度是nlogn,空间复杂度最优为logn

12、来写个sql吧,不记得具体的sql了......

13、有什么想了解的吗?

本文首次发布于趣IT ,转载请注明出处,谢谢合作

百度 大数据开发 面经附录答案

全部评论1
  1. 骨子里、忧伤 2020-12-08 10:29:12
    我个人写的答案仅供参考,很多是个人拙见,如果有更好的答案或者建议,可以下方评论哈!
    0 全部回复(1) 举报
    • 骨子里、忧伤 2020-12-08 10:29:53
      部分问题有答案,复盘的内容还是有缺失的,还得及时复盘才行。
      0 举报

还可以上传7

表情
  • 快速扫码进群
    加入职友圈
下一步
知道了