Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

startShardDraining(データベースコマンド)

startShardDraining

シャードからチャンクをドレインプロセスを開始し、シャーディングされたクラスターから排除する準備をします。

コマンドの実行時に、指定されたシャードを空にすることがバランサーに指示されます。非同期に、バランサーはシャードからクラスター内の他のシャードへのチャンクの移動を開始します。バランサーがこのプロセスを完了すると、シャードにはデータが含まれず、クラスターから安全に削除できるようになります。

注意

startShardDrainingシャードからチャンクを移動するには、 でバランサーを有効にする必要があります。バランサーが無効の場合、チャンクは移行されず、shardDrainingStatus はシャード上の残りの作業を報告し続けます。

このコマンドは、シャードが存在しない場合はエラーを返し、そうでない場合は ok を返します。

ドレインシャードのステータスを確認するには、shardDrainingStatus コマンドを使用します。

シャードの動作を停止するには、stopShardDraining コマンドを参照してください。

ドレイン シャードを削除するには、commitShardRemoval コマンドを参照してください。

バージョン8.3の新機能

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

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

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

注意

このコマンドは MongoDB Atlasではサポートされていません。See Atlas クラスターからシャードを追加または削除するには、「Atlasシャードクラスタの変更」を参照してください。

このコマンドの構文は、次のとおりです。

db.adminCommand( {
startShardDraining: <shardToDrain>
} )

authorizationを有効にしている場合は、 clusterManagerロールまたはremoveShardアクションを含む任意のロールが必要です。

シャードをドレインいる間は、クラスターをバックアップすることはできません。

一度に複数のシャードドレイン操作を進行することができます。

シャーディングされたクラスター内の各データベースにはプライマリシャードがあります。ドレインするシャードが、クラスターのデータベースの 1 つのプライマリでもある場合は、シャードからすべてのデータを移行した後、データベースを新しいシャードに手動で移動する必要があります。詳細については、movePrimary コマンドとシャードクラスタからシャードを削除する を参照してください。

シャーディングされていないコレクションは、個々のシャードに保存されます。これらのコレクションの 1 つが削除するシャード上にある場合は、まずそのコレクションを別のシャードに移行する必要があります。

シャーディングされていないコレクションを移行するには、moveCollection コマンドをご覧ください。

チャンク分布が不均一なクラスター内のシャードをドレインすると、バランサーはまずドレインシャードからチャンクを削除し、次に残りの不均一なチャンク分布のバランスをとります。

Tip

"majority"は、 mongosコマンドの書込み保証(write concern)を に変換します。startShardDraining

シャードをドレインすると、開いている変更ストリームのカーソルが閉じてしまい、閉じた変更ストリームのカーソルが完全に再開できなくなることがあります。

startShardDrainingクラスターが DDL操作(reshardCollection などのコレクションを変更する操作)を実行しているときに を実行すると、シャードドレインは同時 DDL操作が完了した後にのみ実行されます。

シャードのドレインを開始するには、db.adminCommand() メソッドを使用します。

db.adminCommand( {
startShardDraining: "shard04"
} )

戻る

分裂

項目一覧