Vvio总共就一轮技术面+一轮HR面,技术面整体而言,比较宽泛,比较看中基础,面试的全程没有涉及简历上的东西(都准备好跟他扯项目了,感受是抽取的题库。。。)具体内容以下:面试
1.熟悉Hadoop哪些组件?算法
答:hdfs、yarn、MapRedue、Hive网络
2.讲一讲yarn的调度过程?app
答:blabla。。。oop
3.yarn的调度器有哪些?学习
答:FIFO、多队列分开调度、CapacityScheduler、FairScheduler。。。(当时没答全)大数据
4.讲讲Hive内部表和外部表的区别?spa
答:(1)内部表彻底受Hive管理,外部表除了受Hive管理外,还受HDFS的管理计算机网络
(2)删除内部表数据的话,元数据和存储数据都会被删除,而删除外部表的话,只有元数据会被删除,而存储在hdfs中的数据不会被删除。排序
(3)外部表经过external关键字来建立,内部表不须要。
(4)对内部表的结构进行修改后,会同步给元数据;而对外部表的结构进行修改后,须要进行修复。
5.Hive的join操做怎么写?
答:blabla....
6.Mapper和Reducer写过吗?
答:很久没写了,忘记了。。。
问:udf呢?
答:。。。。
7.熟悉哪些排序?
答:堆排序、快排、归并排序、直接插入排序、简单选择排序
问:那手写下快排
答:。。。(幸亏前一天晚上又了遍)
8.MapReduce的哪一个过程用到了排序?
答:shuffle过程用到了归并排序(这里说错了个地方,把shuffle过程说成了是在Reduce阶段的刚开始,其实是在Map阶段的结尾处)。。。
9.Linux熟悉吗?
答:基本的经常使用命令比较熟悉...
问:如何找出最近三天修改过的文件?
答:find命令,具体参数忘记了,囧。。。
问:如何显示各个程序占用的端口?
答:我。。。netstat?(这一块仍是要增强。。。)
10.计算机网络熟悉吗?TCP的三次握手和四次挥手讲一下?
答:blabla。。。。
问:为何要三次握手而不用两次握手,举个实际的例子说明下》
答:(这不分答得很差,主要是很久没看计算机网络了。。)
11.给你一个1G的文件,机器的内存只有1M,如何利用机器找出出现次数最多的100个字符串?
答:将大文件分红小文件,每一个小文件进行统计,找出最大的100个字符串出来,而后将每一个小文件统计的前100个出现次数最多的字符串存放到一个文件中,在该文件中找出出现次数最多的100个字符串出来即最终的出现次数最多的100个字符串。
问:具体是如何划分的呢?
答:感受这里答的不是很好,我是按照单词的个数进行划分的,若是单词的数量凑够1M的话,就分割成一个小文件(感受面试官不是很满意,这种题型以前看的少,没有很深刻的思考过,结果弊端就显现出来了。。。)
=========================================================分割线===================================================================
基本上就这些问题了,整体而言问的实际上并非很难,一方面因为第一次面试大数据开发相关岗位,没搞清楚知识点的懂点(其实这些问题都见过,只不过有些就一带而过了,没有深刻的去学习思考;花费大量的时间在算法题上了,结果并无怎么问算法题);另外一方面秋招到春招好几个月了,已经没啥面试状态了。。。