作者:C’Thun
链接:https://www.nowcoder.com/discuss/639034?source_id=discuss_experience_nctrack&channel=-1
来源:牛客网
百度
一面
4.12被捞,4.13面试
自我介绍
然后开始问项目
问两个项目的流程,数据流,简要介绍中间组件的原理
然后问hive
感觉数据倾斜以及对数据倾斜的优化是面试官最喜欢问的
说了一下hive的join问题
同时给了一个场景题
比如在一个表有个u_id数量特别大怎么办
说修改hive参数或者可以考虑加个tag
面试官引导说还有别的方法并且和我介绍了一下
然后是一个算法题
求有序数组中绝对值最小的数
二分查找
接下来反问阶段
当场说了有二面,需要好好准备准备二面了
二面
时间4.14
自我介绍
之后也是介绍简历上的两个项目,数据流,技术栈,中间遇到的困难
接下来开始问hive
问了order by,sort by,cluster by,distribute by的区别
hive的内表和外表
sql问题(某一天登录了但是后一天没有登录的用户)
有没有用mapreduce完成过hive-sql计算,能不能简述一下流程
mapreduce在两表join的时候是怎样的
知道哪些linux命令
java的一些面向对象问题
除了java还会哪些语言
同时问了一下能实习多久,能不能到场实习
接下来是反问,并介绍了一下部门的业务
OC
4.15百度oc
度小满
度小满也是4.12捞的,然后4.13一面
自我介绍完了以后就开始问项目
项目流程,组件原理(MR,kafka)
这个项目当时的数据量很大吗?如果不用kafka用redis或者mysql能否支撑?
然后问了线程池的问题
接下来就是问我一些数据挖掘的东西
比如最小二乘回归,lasso,ridge在数学上怎么实现的
如果是那代码怎么实现?
如果不使用学习率有没有什么其他方法?
然后结合建模经验,介绍了一下多元回归比如LR
后面是几个算法题
给出三个点形成的矩阵,返回三角形面积
m个相同盘子,n个相同苹果,可以有空盘,有几种排列方式(递归,但是当时没想出来)
删除链表倒数第k个节点
接下来就是反问,说实时,离线和数据挖掘都会涉及
晚上就得到消息有二面了,继续好好准备吧