持续写入 10 亿条哈希到 MongoDB 其中一半重复 先建 Unique 索引每次检测重复还是最后统一检测一次重复性能更好?

2018-09-26 14:36:55 +08:00
 whereabouts
数据仓库类的应用,有 10 亿条 Hash 数据要插入到数据库中,就 Hash 一个字段,其中一半是会重复插入的,需求是最后 Hash 字段要唯一。
方法 1.如果一开始直接对 Hash 字段做 Unique 唯一索引,那么数据库自己检测是否重复了,但是随着数据量增大,每次检测重复的性能开销是否值得?
方法 2.插入完成后做一次去重处理,把唯一的 Hash 值导入到新的表里。
机器硬件配置一般,所以想问一下哪种方法性能上好一点。
另外 MySQL 和 MongoDB 哪个更适合做这项任务吗?
1121 次点击
所在节点    程序员
3 条回复
fireapp
2018-09-26 15:07:11 +08:00
bulong
fireapp
2018-09-26 15:10:13 +08:00
@fireapp 上面意外发错了🙀
bloom 过滤器啊,2G 内存能搞定,使用加强版的
luckychenhaha
2018-09-26 15:17:12 +08:00
bloomfilter

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/492775

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX