快手—数据开发面经
面试公司:快手
面试岗位:数据开发
时间:10.31
面试官:你简单做个自我介绍吧。
面试官:做数据爬虫会遇到什么问题?反爬机制严重吗? 验证码这类怎么处理?
面试官:数据清洗怎么做?
面试官:项目做了湖仓一体,介绍一下,面向什么业务?
面试官:数据来源是什么?
面试官:数据采集完之后怎么给到你们?
面试官:数据量大概是什么规模?
面试官:你觉得Iceberg对比Hive的优势是什么?
面试官:Hive也能存大量数据,性能差距在哪?
面试官:项目落地过程中最大的挑战是什么,怎么解决?
面试官:有没有改进思路?
面试官:聊下大表Join的数据倾斜,热点Key加盐打散怎么做?
面试官:怎么在Spark UI定位异常task?
面试官:SQL经过优化器优化,原始SQL和执行计划不一样,多处Join的时候怎么定位是哪一处Join出问题?
面试官:定位到倾斜Key之后怎么修改SQL?举个例子,A表和B表Join,A表id倾斜。
面试官:A表id加后缀之后,B表id没有后缀,匹配不上,B表怎么处理?
面试官:另一种思路,A表拆成十份,B表也拆成十份,小份之间Join,这个思路怎么实现?
面试官:ORC和Parquet压缩、分桶了解吗?
面试官:ORC和Parquet区别是什么?
面试官:开启AQE主要作用是什么?
面试官:你觉得自己设置分区比AQE自动设置性能更高,高的点在哪?
面试官:Flink、ClickHouse这些了解程度怎么样?
面试官:写SQL。一张表有user_id、登录日期,写出SQL找出连续七天登录的用户id。
面试官:算法题:再说说链表反转。
参与讨论