MongoDB v8.0 より前は、コレクションのシャーディングは取り消されたアクションでした。v8.0 以降、コレクションのシャーディングを解除し、選択したシャードにコレクションをシャーディングできます。
コレクションのシャーディングを解除する場合
次のシナリオでは、シャーディングされていないコレクションをシャード間で移動することでメリットが得られます。
コレクションの意図しないシャーディングの修正
シャーディングが不要であった、またはパフォーマンスの問題が発生していることが検出された場合は、``unshardCollection`` コマンドを使用してコレクション全体を シャーディングされていないコレクションとして書き換えることができます。
ゾーンベースの分離を簡素化
ゾーンを使用してシャーディングされたコレクションを単一シャードに保持する場合、コレクションを解除してクラスター内の複雑さを軽減できるようになりました。
以前にシャーディングされた小さなコレクションの統合
複数のシャードのリソースを効率的に使用するために小さなコレクションをシャーディングした場合は、コレクションをシャーディングを解除して、選択したシャードに移動できます。そうすれば、適切なリソース割り当てを維持しつつ配置の複雑さを軽減できます。
コマンド構文
sh.unshardCollection("database.collection", "shardName")
次の例では、taxi
データベース内の riders
コレクションのシャーディングを解除し、コレクションを shard1
に移動します。
db.adminCommand({unshardCollection:"taxi.riders", toShard: "shard1"})
クリックして拡大します