面试真题

大数据 · 困难 · 阿里巴巴

4 亿行数据怎么去重?

困难 大数据 🎤 阿里巴巴
参考答案
结论:分治+排序/哈希,或借助分布式框架。核心要点:若内存小,按去重键哈希分片到多个文件,每文件加载进内存用Set去重;或外部排序(多路归并)使相同键相邻后去重;分布式用Spark SQL SELECT DISTINCT或GROUP BY,Hive同理;数据库可用ROW_NUMBER() OVER(PARTITION BY key)删重复行;布隆过滤器可辅助判重但有误判。示例:Linux下awk sort uniq处理文本;4亿行约数十GB,需分片到不同节点并行。关键在于减少重复比较和IO。
题目整理自公开面经,答案由校招宝自研生成,仅供参考