Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

mergeAllChunksOnShard

項目一覧

  • 定義
  • 互換性
  • 構文
  • コマンドフィールド
  • 動作
mergeAllChunksOnShard

mergeAllChunksOnShard は、特定のコレクションに対してシャーディングが所有するすべてのマージ可能なチャンクを検索してマージします。

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

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

重要

このコマンドはサーバーレスインスタンスではサポートされていません。 詳細については、「サポートされていないコマンド 」を参照してください。

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

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

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

db.adminCommand(
{
mergeAllChunksOnShard: <name of the collection>,
shard: <name of the shard>,
maxNumberOfChunksToMerge: <maximum number of chunks to merge> /* optional */
}
)

このコマンドは、次のフィールドを使用します。

フィールド
タイプ
必要性
説明
mergeAllChunksOnShard
string
必須
コレクション名。
shard
string
必須
シャードの名前。
maxNumberOfChunksToMerge
integer
任意
マージするチャンクの最大数。

mergeAllChunksOnShard は、同じシャード上にあるコレクションのすべての マージ可能なチャンク を検索してマージします。 同じコレクション内の 2 つ以上連続するチャンクは、次の条件をすべて満たす場合にマージできます。

この例では、履歴がすべてのチャンクで空で、すべてのチャンクが非 ジャンボ であることを前提としています。 両方の条件が true であるため、同じシャード上のすべての連続した間隔がマージ可能です。

これらのチャンクは、シャードキーx coll持つ という名前のコレクションに属しています。 チャンクは合計 9 個あります。

チャンク ID
Min
Max
シャード
A
x: 0
x: 10
シャード0
B
x: 10
x: 20
シャード0
C
x: 20
x: 30
シャード0
D
x: 30
x: 40
シャード0
E
x: 40
x: 50
シャード 1
F
x: 50
x: 60
シャード 1
G
x: 60
x: 70
シャード0
H
x: 70
x: 80
シャード0
I
x: 80
x: 90
シャード 1
1
db.adminCommand( { mergeAllChunksOnShard: "db.coll", shard: "Shard0" } )

このコマンドは、連続する チャンク シーケンスをマージします。

  • ABCD

  • SH

2
db.adminCommand( { mergeAllChunksOnShard: "db.coll", shard: "Shard1" } )

このコマンドは、チャンク Ref の連続したシーケンスをマージします。

これらのコマンドが完了すると、連続するチャンクがマージされます。 チャンクは元の 9 つではなく 4 つあります。

チャンク ID
Min
Max
シャード
ABCD
x: 0
x: 40
シャード0
FS
x: 40
x: 60
シャード 1
SH
x: 60
x: 80
シャード0
I
x: 80
x: 90
シャード 1

戻る

シャードの一覧表示