2

mongodb --repair过去曾使用过因文档删除而恢复稀疏空间;但在我这个时代,我从未经历过使用该--repair过程增加数据库大小的情况。

我已经对原始数据进行了 3 次修复,并且每次都增加了 DB 大小。

我从一个558 GB数据库开始。

原来的

> db.stats()
{
    “db”:“自助服务”,
    “收藏”:4,
    “对象”:2821806,
    “avgObjSize”:190351.89918229674,
    “数据大小”:537136131224,
    “存储大小”:558518763536,
    “numExtents”:291,
    “索引”:12,
    “索引大小”:1314422816,
    “文件大小”:566592798720,
    “nsSizeMB”:16,
    “数据文件版本”:{
        “主要”:4,
        “次要”:5
    },
    “范围自由列表”:{
        “数字”:17,
        “总大小”:5067198464
    },
    “好”:1
}

...最终得到了一个786 GB数据库。

已修复

> db.stats()
{
    “db”:“自助服务”,
    “收藏”:4,
    “对象”:2821806,
    “avgObjSize”:277948.7895397487,
    “数据大小”:784317562016,
    “存储大小”:786090391904,
    “numExtents”:399,
    “索引”:12,
    “索引大小”:1082731328,
    “文件大小”:789822046208,
    “nsSizeMB”:16,
    “数据文件版本”:{
        “主要”:4,
        “次要”:5
    },
    “范围自由列表”:{
        “数字”:0,
        “总大小”:0
    },
    “好”:1
}

我的文档数量没有改变

原来的

> db.docs.find().count()
2784992

已修复

> db.docs.find().count()
2784992

我确实从原始数据库和空间中删除了要回收的文档,但是为什么在--repair我一无所知之后数据库大小会增加。修复日志没有说明原因;没有错误,没有问题......只是分配了比原始数据库更多的 2GB 文件。

有人有什么想法吗?

蒙古数据库:2.6.7

4

0 回答 0