MongoDB插入速度突然变得极慢

西安鲲之鹏 发布于 2013/11/03 12:30
阅读 9K+
收藏 1

客户端用的pymongo,程序运行一个周了,之前插入速度都非常快,大概半个小时1千万条,今天突然发现插入速度变得非常慢。

插入目标是goods集合,goods集合现在有1.2亿条数据。

> db.goods.count()

123535156

goods集合的索引如下。

> db.goods.getIndexes();
[
        {
                "v" : 1,
                "key" : {
                        "_id" : 1
                },
                "ns" : "shop.goods",
                "name" : "_id_"
        },
        {
                "v" : 1,
                "key" : {
                        "item_id" : 1,
                        "updated_at" : -1
                },
                "unique" : true,
                "ns" : "shop.goods",
                "name" : "item_id_1_updated_at_-1"
        },
        {
                "v" : 1,
                "key" : {
                        "updated_at" : 1
                },
                "ns" : "shop.goods",
                "name" : "updated_at_1"
        },
        {
                "v" : 1,
                "key" : {
                        "item_id" : 1
                },
                "ns" : "shop.goods",
                "name" : "item_id_1"
        }
]

机器目前有足够的内存,CPU使用率也不高。

qi@ubuntu :~$ free -m
             total       used       free     shared    buffers     cached
Mem:         32162      31965        196          0         37      19739
-/+ buffers/cache:      12189      19972
Swap:         8177         59       8118

Tasks: 198 total,   1 running, 197 sleeping,   0 stopped,   0 zombie
Cpu0  :  2.4%us,  1.3%sy,  0.0%ni, 15.2%id, 80.8%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  0.3%us,  0.0%sy,  0.0%ni, 99.3%id,  0.3%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu4  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  : 20.5%us,  2.0%sy,  0.0%ni, 76.8%id,  0.0%wa,  0.0%hi,  0.7%si,  0.0%st
Cpu8  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu9  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu10 :  0.3%us,  0.0%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu11 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu12 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu13 :  1.0%us,  1.0%sy,  0.0%ni, 97.7%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu14 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu15 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  32934196k total, 30379792k used,  2554404k free,    37928k buffers
Swap:  8374268k total,    61388k used,  8312880k free, 17884864k cached

是什么原因造成的呢?

加载中
0
zachary124
zachary124
数据量大了,而且插入时还需要建立索引,固然越来越慢,如果是分片集群,可以把 chunksize设置大点,默认是64,太小会频繁的进行主从交互
0
昏鸦
昏鸦
mangodb 的大数据的情况下,吃内存比较厉害,建议i观察一下内存使用的上升情况
0
zhanggt
zhanggt

我们也遇到类似的问题,求交流。

QQ:871162177

0
xuchao
xuchao
兄弟在这里遇上你了
xuchao
xuchao
回复 @西安鲲之鹏 : 是啊
西安鲲之鹏
西安鲲之鹏
龘锁螺丝?
0
lindychan556666
lindychan556666

io 使用率呢

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部