私はmongodb --repair
過去に、ドキュメントの削除によるまばらなスペースを回復するために使用しました。--repair
しかし、このプロセスを使用して DB サイズが増加したことは一度もありません。
元のデータに対して修復を 3 回実行しましたが、そのたびに DB サイズが増加しています。
私は558 GB
データベースから始めました。
オリジナル
> デシベル。統計() { "db": "セルフサービス", 「コレクション」: 4, 「オブジェクト」: 2821806、 "avgObjSize": 190351.89918229674、 「データサイズ」:537136131224、 「ストレージサイズ」: 558518763536, "numExtents": 291, 「インデックス」: 12, "インデックスサイズ": 1314422816, 「ファイルサイズ」:566592798720、 "nsSizeMB": 16, "dataFileVersion": { 「メジャー」:4、 「マイナー」: 5 }、 "extentFreeList": { 「数」:17、 「合計サイズ」: 5067198464 }、 「わかりました」:1 }
...そして、786 GB
データベースになりました。
修理済み
> デシベル。統計() { "db": "セルフサービス", 「コレクション」: 4, 「オブジェクト」: 2821806、 "avgObjSize": 277948.7895397487、 「データサイズ」:784317562016、 「ストレージサイズ」:786090391904、 "numExtents": 399, 「インデックス」: 12, "インデックスサイズ": 1082731328, 「ファイルサイズ」: 789822046208、 "nsSizeMB": 16, "dataFileVersion": { 「メジャー」:4、 「マイナー」: 5 }、 "extentFreeList": { 「数」:0、 「合計サイズ」: 0 }、 「わかりました」:1 }
ドキュメント数が変わっていない
オリジナル
> db.docs.find().count() 2784992
修理済み
> db.docs.find().count() 2784992
元の DB から削除されたドキュメントと再利用するスペースがありますが、後で DB サイズが増加する理由--repair
はわかりません。修復ログには理由が示されていません。エラーも問題もありません...元のDBよりもはるかに多くの2GBファイルが割り当てられています。
誰でもアイデアはありますか?
モンゴッド: 2.6.7