Results 7 comments of Lin

I fix it Here: https://github.com/idning/giraffe try it

see https://github.com/idning/redis-rdb-tools

不一致可能是replset 发生选举的时候导致的? 一般每次选举丢2-10s的写入. 我们做过大量导入, 目前没看到你说的导入变慢的情况. toku也有坑:)

我用 mongoimport 做导入, 一般限制在单replset 导入速度2000/s, 超过2000就会导致主从同步跟不上. 我们导入数据是为了在多个集群之间做迁移 (https://github.com/idning/mongomigrate) 我们一般用多个worker 每个全速用safe方式导入(这里原生的mongoimport 是非safe 导入的, 也就是说在导入过程中, 如果发生主动切换, 丢数据是不可知的, 我们做了修改, 每次insert后调用getlasterrror(), 所以单线程大约500/s), 这么说来,我们没遇到你描述的'导入变慢', 是因为我们 **本来就很慢** :) tokumx 的坑主要是它的oplog不是capped collection, oplog 过期后需要逐条删除, 这个删除的时候,对线上影响很大. 特别是在update多, 或者record...

我们也是在十亿级别, 我们是导入到一个sharding+replset的线上集群,你们只用一个Mongod实例来做导入, 就不存在replset主从切换的问题, 确实可以用最大速度导入. 我们提高速度是靠并发, 但是最终还是受限在主从同步上. 你们的思路很赞啊, 呵呵

1.3 是逐条删, 1.4改成了一天一个collection. 我们还在用1.3, 1.4 以后就没有这个问题了, 不过我们这里没有试过.