sql >> データベース >  >> NoSQL >> MongoDB

一意のインデックスでのmongo3の重複-dropDups

    はいdropDupes プロセスで削除されるドキュメントを正しく予測できなかったため、バージョン2.7.5以降は非推奨になりました。

    通常、2つのオプションがあります:

    1. 新しいコレクションを使用する:

      • 新しいコレクションを作成します
      • この新しいコレクションに一意のインデックスを作成します
      • バッチを実行して、古いコレクションから新しいコレクションにすべてのドキュメントをコピーし、プロセス中に重複したキーエラーを無視するようにしてください。
    2. 自分のコレクションで手動で処理します:

      • コードに重複するドキュメントをこれ以上挿入しないようにしてください。
      • コレクションでバッチを実行して重複を削除します(完全に同一でない場合は、適切なものを保持するようにしてください)。
      • 次に、一意のインデックスを追加します。

    特定のケースでは、最初のオプションをお勧めします しかし、トリックがあります:

    • 一意のインデックスを使用して新しいコレクションを作成します
    • コードを更新して、両方にドキュメントを挿入できるようにします テーブル、
    • バッチを実行して、古いコレクションから新しいコレクションにすべてのドキュメントをコピーします(重複したキーエラーは無視します)。
    • 古い名前と一致するように新しいコレクションの名前を変更します。
    • コードを再更新して、「古い」コレクションのみに書き込むようにします


    1. データベースのMongoDBダンプを作成するにはどうすればよいですか?

    2. 各グループの最後の真の値を返します

    3. MongoDB C#:IDシリアル化の最良のパターン

    4. フィールド名のないmongodbクエリ