Docs Menu

sh.moveChunk()

項目一覧

sh.moveChunk(namespace, query, destination)

queryによって指定されたドキュメントを含むチャンクdestinationシャードに移動します。 sh.moveChunk()moveChunkデータベースコマンドを囲むラッパーを提供します。

重要

ほとんどの場合、バランサーチャンクを直接移行することを許可し、 sh.moveChunk()を直接呼び出すのは避けてください。

警告

このコマンドは、 moveChunkコマンドのfindオプションを使用するため、ハッシュされたシャードキーには使用できません。 ハッシュされたシャードキーを使用してチャンクを移動するには、 boundsフィールドを指定するmoveChunkコマンドを使用します。

重要

mongosh メソッド

このページでは、mongosh メソッドについて記載しています。ただし、データベースコマンドや Node.js などの言語固有のドライバーのドキュメントには該当しません

データベースコマンドについては、moveChunk コマンドを参照してください。

MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。

sh.moveChunk() 以下の引数を取ります。

Parameter
タイプ
説明

namespace

string

移行するチャンクを含むシャーディングされたコレクションの名前空間

query

ドキュメント

移動するチャンクを選択するシャードキーの等価一致。

destination

string

受信者シャードのID 。

注意

listShards受信者シャードのIDを取得するには、 コマンドを使用します。

デフォルトでは、チャンク内のドキュメント数が、構成されたチャンク サイズを平均ドキュメント サイズで割った結果の2倍を超える場合、MongoDB はチャンクを移動できません。 moveChunkコマンドでforceJumboオプションを指定すると、ジャンボラベルの有無にかかわらず、移動できないほど大きいチャンクの手動移行を可能にできます。 詳細については、 moveChunkコマンドを参照してください。

以下も参照してください。

このメソッドは、次の環境でホストされている配置で使用できます。

  • MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです

重要

このコマンドは、M0、M2、M5、および Flex クラスターではサポートされていません。詳細については、「 サポートされていないコマンド 」を参照してください。

  • MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン

  • MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン

recordsデータベースのpeopleコレクションがある場合、次の操作では、 zipcodeフィールドが53187に設定されているドキュメントを含むチャンクが検索され、そのチャンクがshard0019という名前のシャードに移動されます。

sh.moveChunk("records.people", { zipcode: "53187" }, "shard0019")

項目一覧