小米大数据开发二面面经

前天面一面之前就牛客好多人在说小米劝退面,都招满了走流程,一面面的确实时间也很短,所以本来都觉得没有然后了,发了一面的凉经。没想到昨天收到了二面的通知,发一下面经造福一下大众,攒攒人品,希望早日突破0offer。

二面:

1、自我介绍

2、Hive里面count的用法?count(*)和count(列名的区别)。一般算数量怎么算。

3、Hive里面union和union all的区别?

4、join操作,left join、right join、inner join、outer join的异同?

5、where、having、group by、order by出现在同一个语句中的执行顺序是什么?having和where除了执行顺序还有什么的区别?where中能否用聚合的数,例如count(*)作为条件?

6、hive语句的运行机制,例如包含上面的where、having、group by、order by,整个的执行过程?

7、MapReduce作业执行的过程中,中间的数据会存在什么地方?不会存在内存中么?

8、MapReduce和Spark各自的优缺点?

9、若Spark要保存数据到HDFS上,要用什么算子?

10、Spark的***()和persist(),他们的区别是什么?他们和上面问题里的saveAsTextFile的区别又是什么?

11、Spark里面的transform和action你都用过哪些?列举一下。

12、Spark里的map和flatMap的区别?

13、将RDD中”1\t2\t3\t4\t5”这样的数据用flatMap展平。

14、HDFS若要将本地文件拷贝到远程的HDFS上用什么命令?答-put。还有没有其他的方法?从远程往本地拉文件用什么?若有一个文件夹d1,d1下有很多文件,将d1下所有文件聚合起来拉到本地的一个文件中。

15、HBase里面的RowKey的设计。

①有哪些要遵循的原则?不会,扯了一下项目里的RowKey设计。能不能写几个例子看一下?9位”id” + “timestamp”。

②若现在遇到id前缀基本一样的话在HBase里存储的话,会引发什么问题,例如“4009192~4010000”?

③如果让你去设计一下均匀分布,或者说优化一下这个rowkey的设计,你有什么好的方法么?扯了一下设计新key值使Hash尽量均匀。面试官说Hash有32位,原本id是9位,问会不会增加rowkey占用的空间大小。如果限制一下空间大小也要和之前尽可能的接近,还有没有其他的设计?

④如果从某一天开始,id增加了一位变成了10位,此时再用之前的规则是否会有问题,若继续增加位数呢?

16、算法题:有一个int数组{1,-5,6,5,0,2,-1,9,6,7},用最优的时间和空间复杂度,得到一个二元组a+b=0。求所有这样的a、b数据对。

①先用了HashMap实现。问时间复杂度?

②如果不允许使用工具类呢?考察底层的算法知识。扯了下先排序,然后双指针,问时间复杂度?问面试官得知数据有可能存在重复。然后让写双指针遍历的过程。说一下思路吧?

17、你有什么要问我的么?






#小米##大数据开发工程师##面经##校招#
全部评论
大佬,北京大数据开发工程师应届生刚进月薪一般多少啊😂
点赞 回复
分享
发布于 2019-09-12 02:20
11号二面的话现在收到恭喜函或者oc了吗?武汉还是北京呢?
点赞 回复
分享
发布于 2019-09-19 10:59
联想
校招火热招聘中
官网直投
楼主拿到 小米大数据的offer了吗
点赞 回复
分享
发布于 2019-09-24 16:26
楼主是视频面还是电话
点赞 回复
分享
发布于 2019-09-25 15:54
老哥的每一个面经都是我学习的课件
点赞 回复
分享
发布于 2019-09-25 16:07
哎,二面之后就没信了。渴望上岸啊。求小米offer
点赞 回复
分享
发布于 2019-09-27 10:54
昨天小米二面,面了一个多小时,求offer~
点赞 回复
分享
发布于 2019-09-27 10:56

相关推荐

#软件开发2024笔面经# 小米 4.10 线上面试前一天通知,第二天面试,连夜针对简历进行复习。以简历为主进行提问:自我介绍技术:1. 介绍面向对象编程思想2. 重写和重载的区别3. list和数组的区别,arraylist和linkedlist的区别4. 并发:了解过cas吗(⭐)5. 了解tcp/ip吗?tcp的三次握手过程,为什么挥手是四次,比握手要多一次(⭐)6. mysql有哪些索引,什么情况会用到索引7. mysql事务的四大特性,如何上锁了解过吗(⭐)8. springboot流程,如何理解依赖注入和控制反转9. redis五大数据类型,在项目中用到了哪些,redis的应用场景10. 为什么要用到redis?仅仅因为redis访问数据快就使用redis吗?(⭐)11. redis缓存穿透、缓存击穿、缓存雪崩12. redis数据淘汰策略13. redis为什么快项目(外卖项目)14. jwt令牌是如何实现的15. 如何使用md5加密16. 项目中如何保持redis与数据库保持一致17. 项目是如何进行开发的,开发流程18. 写一道算法题(链表反转)(⭐)19. 对小米公司有没有了解(随便说了不多,其实可以多扯一些,我尊贵小米用户的身份也没有展示出来)20. 反问ps:(⭐)是没有回答上来的总结:有了上次实习,确实积累了一些经验,只要面试官针对简历进行提问,基本上准备的东西都能用上,但是自己没有学习的内容,就不要往简历上写(作死写上了并发、多线程,结果回答不上来),可能也是线上面试的原因,自己相对来说没有这么紧张,大体上都可以回答上来。算法方面还要着重加强,一个链表反转不知道怎么动手,估计要挂了,算法真的好难啊,写项目感觉还有点意思,算法是真想不出来。再接再厉吧。官网显示流程终止,还是去试试中小厂吧😢
点赞 评论 收藏
转发
3 68 评论
分享
牛客网
牛客企业服务