百万数据量的集合,怎么去除某个字段重复的数据?
看使用场景。 我的理解,大量的数据去重,应该不会是在线服务,只是偶发性的数据离线处理。方法有很多: 1)如果没有排序要求(即重复的多条,任意取一条就可以),直接group by 就好了, 百万其实很少,我前不久刚测试过类似的,一千多万行记录的group by ,一台很一般的机器上十几二十秒就ok了。 2) 如果有排序,可以用row_numbert (oracle,pgsql有支持,mysql没有) 3)可以写程序跑,先select dinstinct,再根椐key获取其它字段
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
看使用场景。 我的理解,大量的数据去重,应该不会是在线服务,只是偶发性的数据离线处理。方法有很多: 1)如果没有排序要求(即重复的多条,任意取一条就可以),直接group by 就好了, 百万其实很少,我前不久刚测试过类似的,一千多万行记录的group by ,一台很一般的机器上十几二十秒就ok了。 2) 如果有排序,可以用row_numbert (oracle,pgsql有支持,mysql没有) 3)可以写程序跑,先select dinstinct,再根椐key获取其它字段