Docs Menu

シャーディングされたコレクションのデフラグの停止

通常、デフラグを手動で開始して停止するのではなく、バランサーの実行時間を指定するために、シャード バランシング ウィンドウを使用する必要があります。

シャーディングされたコレクションのデフラグを手動で停止するには、 defragmentCollectionオプションをfalseに設定したconfigureCollectionBalancingコマンドを使用します。

このタスクの手順では、 testという名前のデータベース内のordersShardedCollectionという名前のシャーディングされたコレクションの例を使用します。

手順では、独自のシャーディングされたコレクションとデータベースを使用できます。

コレクションのデフラグが完了する前にデフラグを停止すると、コレクションは部分的にデフラグされた状態になり、通常どおり動作します。 デフラグを再開するには、プロセスを再起動します。

1

実行:

db.adminCommand(
{
configureCollectionBalancing: "test.ordersShardedCollection",
defragmentCollection: false
}
)
2

デフラグが停止すると、コマンド出力はok: 1を返します。

{
ok: 1,
'$clusterTime': {
clusterTime: Timestamp({ t: 1678834337, i: 1 }),
signature: {
hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0),
keyId: Long("0")
}
},
operationTime: Timestamp({ t: 1678834337, i: 1 })
}

デフラグはいつでも再度開始できます。 詳しくは、「シャーディングされたコレクションのデフラグの開始 」を参照してください。