您的位置: 小王聊社会 > 多肉

北京 快手 大数据研发技术面经

2019-07-26来源:小王聊社会

作者:LMagic

来源:牛客网


*本文首发于牛客网,著作权全归原作者所有,如需转载,请联系原作者。



昨天面的, 下午2点到6点多, 全程见了2位HR和4位研发, 其中2位研发是比较高级的leader. 目前等HR回复中


自己之前在小公司做了2年大数据, 人手少, 哪里需要哪里搬, 所以这次被考察的面也有点广


题目做了一下简单记录, 会有遗漏, 并且没有按顺序哈. 个人觉得大概回答下来80%多吧


Java

1. HashMap的底层数据结构, 为什么JDK8要用红黑树. ConcurrentHashMap的底层数据结构, 如何保证线程安全

2. synchronized关键字的本质, 作用是什么. volatile关键字的作用, 哪些情况下会用它

3. Java线程的几大状态及转换. 线程可重入是什么概念, 可重入锁呢

4. 如果要设计一个线程池, 需要考虑哪些要素. Executors工厂类能创建哪些线程池, 用过哪些

5. 讲一讲熟悉的设计模式. 单例模式及工厂模式的实现方法. 装饰器模式是怎么一回事

6. 讲一讲熟悉的JVM GC算法, 常用的垃圾收集器. CMS有什么优缺点

7. 一个Java应用上线后, 关注哪些性能指标. 如果响应时间过长或者CPU占用过高, 如何排查, 用哪些工具或命令


大数据组件


1. 是否自己搭建的集群, 集群节点数及配置

2. Hadoop的XML配置文件有哪些, 改过哪些参数, 分别代表什么含义

3. HDFS NameNode高可用如何实现, 需要哪些角色. YARN有哪些组件, 如何分配资源

4. Spark RDD有哪些特点, 宽依赖和窄依赖. RDD的缓存级别

5. DAGScheduler及stage如何划分. 给一个比较复杂的RDD lineage, 手动划分stage和task

6. Spark Streaming以一定的时间窗口统计PV/UV, 如果窗口内数据量暴涨, 如何保证稳定性. 如果会延迟上报, 如何保证实时性

7. Kafka与Spark Streaming集成, 如何保证exactly once语义

8. Spark/Hive中大表join小表的优化方法. 数据倾斜和shuffle调优方法

9. 调整过Hive的哪些参数, 用什么执行引擎. Hive UDF怎么写, 写过哪些. HiveQL是怎样解析成MR/Spark job的

10. HBase的数据在HDFS上是怎样存储的, 写入数据的流程是怎样的. 为什么HBase适合写多读少业务

11. HBase的一个region由哪些东西组成. RegionServer宕机之后如何感知, 如何迁移数据

12. 为什么选用Kudu作为HBase和Hive的折中方案, 它有什么特点. 如果不用Kudu, HBase的二级索引能解决问题吗

13. Impala的查询及执行与Hive有什么不同 [PS. 我之前的项目里用了Kudu+Impala]


数据仓库设计


1. 之前业务中的数据仓库是如何分层的, 怎样建模, 主题如何划分

2. 从ODS到DW层的ETL, 做了哪些工作

3. 1~3NF的含义. 维度建模中星型模型和雪花模型的不同. 代理键是什么, 支架表是什么

4. 如何处理缓慢变化维. 怎样建设拉链表, 如何在拉链表中恢复最新数据


算法和应用题


1. 最长公共子序列(LCS)问题. 动态规划

2. 找出二叉树中任意两个节点的最低公共根节点, 如果树是BST呢. 深度优先搜索+二分查找树性质

3. 10亿条64B长的URL, 限定1G内存, 做计数, 如果要TopN的话呢. 哈希分桶+堆排序时间复杂度

4. 用户行为日志有UID和时间戳, 设定一个session间隔. 离线及在线地计算用户的平均session长度

5. 之前做过标签推荐系统, 详细讲一下架构和自己设计的算法. 算法流程是行为评分+指数衰减+线性归一化+余弦相似度/皮尔逊相关性+TF-IDF打压





秋招已大规模开启!

牛客精品面经为你保驾护航!

▼▼▼

 阿里图像算法工程师面经

 19阿里秋招3面知识与实际相结

19校招阿里菜鸟Java开发

腾讯offerAI技术方向产品经理

更多互联网校招面试经验查看面经大全

▼▼▼




点击“阅读原文”和作者交流吧~


本文由小王聊社会整理,内容仅供参考,未经书面授权禁止转载!图片来源图虫创意,版权归原作者所有。