重要
MongoDB 6.0.3以降、 $shardedDataDistribution
ステージを使用して集計を実行し、孤立したドキュメントが残っていないことを確認する必要があります。 詳細については、「孤立したドキュメントが存在しないことを確認する 」を参照してください。
定義
cleanupOrphaned
このコマンドを使用して、シャードキーの
MinKey
からMaxKey
までのチャンク範囲内の 孤立したドキュメント が、指定された名前空間がシャードのノードの過半数からクリーンアップされるのを待ちます。cleanupOrphaned
admin
mongod
を実行するには、シャードのプライマリ レプリカセット ノードである インスタンスの データベースで を直接発行します。cleanupOrphaned
を実行する前に、バランサーを無効にする必要はありません。注意
インスタンスで
cleanupOrphaned
mongos
を実行しないでください。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
重要
このコマンドは、M0 および Flex クラスターではサポートされていません。詳細については、「 サポートされていないコマンド 」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
db.runCommand( { cleanupOrphaned: "<database>.<collection>", startingFromKey: <minimumShardKeyValue>, // deprecated secondaryThrottle: <boolean>, // deprecated writeConcern: <document> // deprecated } )
コマンドフィールド
cleanupOrphaned
には、次のフィールドがあります。
フィールド | タイプ | 説明 |
---|---|---|
| string | 孤立したデータのクリーンアップを待機するシャーディングされたコレクションの名前空間、つまりデータベース名とコレクション名の両方。 |
動作
範囲を決定
このフィールドの値は、クリーンアップ範囲の境界を決定するために使用されることはありません。 cleanupOrphaned
コマンドは、 startingFromKey
の存在や値に関係なく、名前空間内のすべての範囲のすべての 孤立したドキュメント が完了する前に、シャードからクリーンアップされるまで待機します。
必要なアクセス権
authorization
で実行されているシステムでは、clusterAdmin
を実行するにはcleanupOrphaned
特権が必要です。
出力
Return Document
各cleanupOrphaned
コマンドは、次のフィールドのサブセットを含むドキュメントを返します。