摘要:存储概念是分类的存储来是数据文件的大小。这个操作会禁止数据的访问,所以不能够轻易地执行。有两个明显的缺点。必须禁止访问数据库一段时间。需要同等的硬盘及。可以通过构建来防止空间占据过大。
mongodb 存储
db.stats() { "db" : "exemplum", "collections" : 10, "objects" : 110857, "avgObjSize" : 239.9243349540399, "dataSize" : 26597292, "storageSize" : 43438080, "numExtents" : 25, "indexes" : 10, "indexSize" : 4210640, "fileSize" : 2666528768, "nsSizeMB" : 16, "dataFileVersion" : { "major" : 4, "minor" : 5 }, "extentFreeList" : { "num" : 47, "totalSize" : 2457366528 }, "ok" : 1 }概念
storgaesize 是分类的存储来hold the doc 43438080 BYTE /1024/1024-- 41M
filesize 是数据文件的大小。2666528768 -- 2.48g
收取的策略:是一旦分配了就不再回收,类似于“如果有人往里面放了1000亿条记录,那么还有可能再放入一次”。这个free space 被记录在extentFreeList,我们发现有2457366528 -- 2.28g,这就是我们大部分的filesize 的所在。
我们能对这个extentfreelist做什么呢? 跑一下db.repairDatabase() 是最好的方法。这个操作会禁止数据的访问,所以不能够轻易地执行。因为当执行的时候,会对每一个collection来执行compact命令,这个命令的作用是将collection重写到一个新的collection,重建索引,然后交换回来。
执行以下。
exemplum/19:13:10>db.stats() { "db" : "exemplum", "collections" : 10, "objects" : 110857, "avgObjSize" : 239.9301442398766, "dataSize" : 26597936, "storageSize" : 41345024, "numExtents" : 24, "indexes" : 10, "indexSize" : 3589264, "fileSize" : 117440512, "nsSizeMB" : 16, "dataFileVersion" : { "major" : 4, "minor" : 5 }, "extentFreeList" : { "num" : 0, "totalSize" : 0 }, "ok" : 1 }repairDatabase not working?
repairdatabase 有两个明显的缺点。
必须禁止访问数据库一段时间。如果是在线实例,很难接受。
需要同等的硬盘及2g plus。如果是因为磁盘慢了,清理磁盘则无法使用。
这里可以参考链接。提供了两种思路
使用compact。这里支持了原地来做,而不需要更多的空间。
通过path来做整个的repair。
Padding Powerpadding 在2.6之前的设计是用padding factor, 计算公式是 storage size = record size * padding factor. 在2.6之后出现了另一种方式就是 power of 2 . 意思就是取2的倍数附近作为storage size。
最后。。。可以通过构建capped collection 来防止空间占据过大。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/18801.html
摘要:浏览器下输入如果能正常显示数据库的信息,则表示启动成功。集合名可以是满足下列条件的条件集合名不能是空字符串。方法结果显示在一个格式化的方式,可以使用方法方法要限制中的记录,需要使用方法。命令的基本语法如下恢复数据恢复备份数据使用的命令。 概念 MongoDB 是一个跨平台的,面向文档的数据库,提供高性能,高可用性和可扩展性方便。 MongoDB 工作在收集和文件的概念。 什么是No...
摘要:浏览器下输入如果能正常显示数据库的信息,则表示启动成功。集合名可以是满足下列条件的条件集合名不能是空字符串。方法结果显示在一个格式化的方式,可以使用方法方法要限制中的记录,需要使用方法。命令的基本语法如下恢复数据恢复备份数据使用的命令。 概念 MongoDB 是一个跨平台的,面向文档的数据库,提供高性能,高可用性和可扩展性方便。 MongoDB 工作在收集和文件的概念。 什么是No...
摘要:介绍是一种数据库,它在数据存储的形态上和这类关系数据库有本质区别。存储的基本对象是,所以我们把它称为一种文档数据库,而文档的集合则组成了。 MongoDB 介绍 MongoDB 是一种 NoSQL 数据库,它在数据存储的形态上和 MySQL 这类关系数据库有本质区别。MongoDB 存储的基本对象是 Document,所以我们把它称为一种文档数据库,而文档的集合则组成了 Collect...
阅读 2380·2019-08-30 15:56
阅读 1038·2019-08-30 15:55
阅读 3202·2019-08-30 15:44
阅读 933·2019-08-30 10:53
阅读 1887·2019-08-29 16:33
阅读 2468·2019-08-29 16:13
阅读 719·2019-08-29 12:41
阅读 874·2019-08-26 13:56