【面试真题】声网-第二轮面试复盘
1、介绍Hadoop
2、存数据流程
3、【海量数据处理】从一亿条数据中取最大的前1000条,使用什么解决方案
(1)找最大的,用小根堆☆
根是最小的,比根大的插入到堆中,并移除堆顶元素!!!
(2)其他方式
全部排序
分治
哈希
局部淘汰:数组首保存最小的元素,有比最小元素大的,删除首元素并将其插入
4、上述问题中,存数据占多大空间,java程序需要多少内存
(1)查找10亿个查询次(每个占8B)中出现频率最高的10个
单机单核:考虑到每个查询词占8B,则10亿个查询次所需的内存大约是【一亿】10^9 * 8B=8GB内存
多机多核:分区partition
(2)1亿个数中找最大的1000条
存数:800M
N:1000条
复杂度:m*N*logN
约为6G?
参考:https://zhuanlan.zhihu.com/p/36874277
5、大数据中最主要的硬件包括什么
答:内存、硬盘、CPU
6、你最感兴趣的事
7、反问:哪些方面需要提高
底层原理
8、反问:部门人数多少,我的岗位有多少人
数据部门 3-4 大几十
本文来自博客园,作者:哥们要飞,转载请注明原文链接:https://www.cnblogs.com/liujinhui/p/15879642.html