当收集增加时,写入性能会降低

时间:2016-03-25 03:11:04

标签: mongodb performance

我的问题:MongoDB在大型集合上的写入性能不佳

开始:性能是70,000 doc / sec(空集合)
有一段时间,我的收藏品越来越大了 结束:性能<&lt; 10,000 doc / sec(收集4亿个文档)

我的记录如下:
Write Performance with Time
Write Performance with Collection

然后,我在同一个数据库中创建一个新集合,
我同时写了两个收藏 大集合(ns:&#34; rf1.case1&#34;)性能仍然很慢,
但新收集(ns:&#34; rf1.case2&#34;)表现非常快。

我已经阅读了MongoDB poor write performance on large collections with 50.000.000 documents plus,但我仍然不知道!

我的配置错了吗?

3台服务器的硬件规格相同:

  • CPU:8核心
  • 内存:32GB
  • 磁盘:2TB硬盘(7200rpm)

我的情景:

    There are 3 shards(Replica Set):
    Server1 : primary(sh01) + secondary(sh03) + arbiter(sh02) + configsvr + mongos
    Server2 : primary(sh02) + secondary(sh01) + arbiter(sh03) + configsvr + mongos
    Server3 : primary(sh03) + secondary(sh02) + arbiter(sh01) + configsvr + mongos

Mongod样本:

    /usr/local/mongodb/bin/mongod --quiet --port 20001 --dbpath $s1 --logpath $s1/s1.log --replSet sh01 --shardsvr --directoryperdb --fork --storageEngine wiredTiger --wiredTigerCollectionBlockCompressor snappy --wiredTigerCacheSizeGB 8

两个收藏:

(chunksize = 64MB) 
            rf1.case1
                    shard key: { "_id" : "hashed" }
                    chunks:
                            host1   385
                            host2   401
                            host3   367
                    too many chunks to print, use verbose if you want to force print
            rf1.case2
                    shard key: { "_id" : "hashed" }
                    chunks:
                            host1   11
                            host2   10
                            host3   10

0 个答案:

没有答案