検索

ホームページ  >  に質問  >  本文

mongodb - mongo删除文档导致索引变大

我们使用的是副本mongo,有一个collection中大概有1.5亿条记录,[size=10GB,Storage Size=3.4GB,Total Index Size:6GB]
因为是保存的历史记录,我们使用remove删掉30天前的记录(大概200万),但是发现索引大小从6GB涨到9GB.

请问该如何正确的删除历史记录?

阿神阿神2757日前727

全員に返信(2)返信します

  • 给我你的怀抱

    给我你的怀抱2017-05-02 09:24:42

    通常の状況では、削除するために特別な操作は必要ありません。 MongoDB で使用される Btree も自己バランス型であり、Btree のバランスに影響を与える 3.0.7 以前のバージョンのバグ SERVER-21063 を除いて、再構築する必要がある特別なものは聞いたことがありません。注意。
    6Gから9Gに増加するこの状況は聞いたことがありません。スレーブノードにも同じことが当てはまるかどうかを確認できます。可能であれば、検証目的でスレーブ ノード上のインデックスを削除し、再作成してサイズが異なるかどうかを確認します。
    編集: 試す前に、compact を試して動作するかどうかを確認できます。インスタンスへの影響に注意し、セカンダリを分離して個別にテストすることをお勧めします。

    返事
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-02 09:24:42

    これはドキュメント内で説明されていますが、データを削除する場合、コレクション全体を削除してもインデックスは削除されません。したがって、現時点では、インデックスを再構築することをお勧めします。

    返事
    0
  • キャンセル返事