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

戻る

シャードの一覧表示