定義
sh.splitAt(namespace, query)クエリによって指定されたシャードキー値でチャンクを分割します。
重要
mongosh メソッド
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.データベースコマンドについては、
splitコマンドを参照してください。MongoDB API ドライバーについては、各言語の「MongoDB ドライバーのドキュメント」を参照してください。
メソッドは次の引数を取ります。
Parameterタイプ説明namespacestring
名前空間( 分割するチャンクを含むシャーディングされたコレクションの
<database>.<collection>)。queryドキュメント
チャンクを分割するシャードキー値を指定するクエリ ドキュメント。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
- MongoDB Atlas はクラウドでの MongoDB 配置のための完全管理サービスです
重要
このコマンドは、M0 および Flex クラスターではサポートされていません。詳細については、サポートされていないコマンド を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
検討事項
In most circumstances, you should leave chunk splitting to the automated processes within MongoDB. However, when initially deploying a sharded cluster, it may be beneficial to pre-split manually an empty collection using methods such as sh.splitAt().
動作
sh.splitAt() は、元の チャンク を 2 つのチャンクに分割します。 1 つのチャンクには、元の下限(包括的)から始まり、指定されたシャードキー値(排他的)で終わるシャードキー範囲があります。 もう 1 つのチャンクには、指定されたシャードキー値(包括的)を下限として始まり、元の上限(排他的)で終わるシャードキー範囲があります。
代わりに、中央値でチャンクを分割するにはsh.splitFind()を参照してください。
例
シャーディングされたコレクションtest.fooの場合、次の例では、シャードキー値x: 70でチャンクを分割します。
sh.splitAt( "test.foo", { x: 70 } )