mongodb 内存占用到底要吃多少内存

(okmajdye)
(星星点灯)
第三方登录:MongoDB 索引数据类型优化,节省60%内存
作者: on 星期五, 六月 17, 2011 & &【阅读:5,394 次】
最近trunk.ly的工程师通过mongostat发现了大量的,然后通过检查发现,他们的已经超出限制了(没有)。于是他们决定开始减小索引大小,通过测试得出了如下的数据,不同的数据类型的索引大小有2到3倍的差距。
虽然能够想像得到,但是直观的数据图可能让我们更深刻的认识到。他们的测试再一次告诉我们:给索引定一个好的数据结构是多么重要。
这是测试结果图,分别是用int、的ObjectID、base64和md5的字符串做索引产生的索引大小:
测试过程也非常简单,首先用下面脚本将各种不同数据结构的数据写入到不同的collection里:
#!/usr/bin/env python
import pymongo
import bson
from pymongo import Connection
db = connection.test_database
print('ObjectID')
for i in range(1, 1000000):
db.objectids.insert({'i': i})
print('int')
for i in range(1, 1000000):
db.ints.insert({'_id': i, 'i': i})
print('Base64 BSON')
for i in range(1, 1000000):
db.base64s.insert({'_id': \
bson.Binary(hashlib.md5(str(i)).digest(),
bson.binary.MD5_SUBTYPE), 'i': i})
print('string')
for i in range(1, 1000000):
db.strings.insert({'_id': hashlib.md5(str(i)).digest(), 'i': i})
然后获取每个collection的index大小,得到如下的结果,画成上面的图:
& db.base64s.stats()
"totalIndexSize" : ,
& db.objectids.stats()
"totalIndexSize" : ,
& db.ints.stats()
"totalIndexSize" : ,
& db.strings.stats()
"totalIndexSize" : ,
原文链接:
anyShare据说看到好文章不转的人,服务器容易宕机!
& tag , , ,
关注与订阅
NoSQLFan图书频道MongoDB 这么吃内存,怎么救_百度知道
MongoDB 这么吃内存,怎么救
别的进程不用内存的话;别的进程需要内存的时候,操作系统会释放mongodb占的内存mongodb用多少内存是操作系统控制的,mongodb就占内存多
知道智能回答机器人
我是知道站内的人工智能,可高效智能地为您解答问题。很高兴为您服务。
其他类似问题
为您推荐:
mongodb的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁MongoDB 到底要吃多少内存_百度知道
MongoDB 到底要吃多少内存
我有更好的答案
这个~~~看起来貌似是木有上限,不过你可以考虑多优化优化,一般超过最大内存的60%就是属于有很大优化空间的。
其他类似问题
为您推荐:
mongodb的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 mongodb 3.2 内存释放 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信