一:美团金融服务部
1讲一下主要是工作内容
2hashmap的结构,数组+链表.如果其中某一个数组过长怎么?办
3线程和进程的区别.线程如何共享数据,进程如何共享数据
4八种各种排序及其时间复杂度
5mysql几种索引
6计算机网络tcp,udp,区别如何用udp实现tcp
7数据仓库的一些概念
美团金融服务部(另一位同学)
1.先自我介绍
2.手写冒泡排序,按正序输出会给个数组[10,7,9,6,5,2,1,3,8]
3.hive的问题主要靠udf、udaf、udtf会举个例子考我的是udaf的row_numberover(orderby)
4.我简历上写着kylin,所以聊了下kylin
5.GC回收机制,新生代、老年代、永久代
6.mapreduce的执行过程
7.你觉得你的优势是什么
8.有没有创新点
9.离职原因
10.job的提交过程
11.sparksql,sparkstreaming,我说了下现在做什么,sparksql的api,做计算之类的,streaming做实时的kafka日志落地
12.数据仓库的概念,缓慢变化维。我说了下工作当中的仓库构建的层次,ods、mds、sds的处理流程(概念的东西可以好好看看)
二:高德(地图定位相关部门)
1waitsynchronized深入对象,方法,静态方法reentrantlock
2两个文件各有50亿条数据,存的是cookie,每个cookie32个字节,在单机环境下匹配
3一个链表,线性时间复杂度查询中间的元素
4hdfs模块
5hiveorderby,sortby,distributeby,clusterby
6如何压缩日志
7mrsuffer,map端数据倾斜
8hash一致性三个节点热点key不均匀
9二叉树二叉排序树(中序遍历有序)平衡二叉树(左右深度绝对值小于1)
三:阿里妈妈面试
1.会问一些工作中的内容,先介绍一下自己的工作,然后会问一些工作相关的东西
2.问题环节
(1)两个文件各有50亿条数据,存的是cookie,每个cookie32个字节,在单机环境下匹配
(2)2亿条整数数据,如果快速匹配出指定的一个整数是否在文件当中,在单机环境
(3)hashmap和treemap的区别
(4)java值和引用的区别在堆还是栈中
3一个20T数据,分a,b,c三种类型数据混合,求a中设备id数据去重汇总,b中设备id不在a中的去重汇总,c也以此类推
先设备id排序,设备id相同按类型排序取第一个,(二次排序)
四:搜狐新媒体电话面试
1.先自我介绍
2.都用过哪些大数据的框架(重复问了好多次)
3.hbase最适合的应用场景
4.工作中mr或hive印象最深刻的问题及怎么解决的
5.看过哪些hadoop源码(如果说看过哪块,他会让你说)
6.做的工作中,整条链路,最关键的点是什么或者说最大的坑是什么
7.如何保证数据一致性(这是数据仓库的东西)
8.druid、kylin、impala、presto(这个可以了解一下,他简单问了问我)
五:一点咨询面试
1.工作内容介绍,会针对工作内容问些问题
2.姓名,课程,成绩sql,至少两科及格的总人数
3.ip访问次数top10单机环境,内存有限,日志量比较的情况下如何快速取出top10
4.实时程序如果算一天的uv,有啥解决方案
5.random(5)如何用等概率实现random(10)
6.用过哪些OLAP框架,会让讲原理
7.看过哪些源码,可以随便讲哪块都行
8.二叉树
9.如果啥服务都没有,从头搭一套的流程设计是什么样的,一直到数据报表可视化
其实面试只要好好准备,通过率还是挺高的.
对于大数据面试基本上以下几个方向吧(大概写写,不是系统性的总结):
1java基础(gc,jvm,map,volatile,多线程锁相关)
2数据结构(数组,链表,树,二叉树!)算法(八大排序算法必会)
基本上做业务的算法不会问太难,以后会分享一些面试中的简单算法
3hadoop各个模块,如何高可用,suffer(必问),mapreduce过程(必问)
4zookeeper相关,分布式锁
5spark相关为什么比hadoop快
6kafaka