AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

sh.addTagRange()(mongoshメソッド)

sh.addTagRange(namespace, minimum, maximum, tag)

注意

このメソッドはsh.updateZoneKeyRange()のエイリアスになります。 MongoDB は、タグ対応シャーディングの継承としてゾーン シャーディングを提供します。

sh.addShardTag()メソッドを使用して作成されたシャード タグに、一定のシャードキー値を付与します。

You can run updateZoneKeyRange database command and its helpers sh.updateZoneKeyRange() and sh.addTagRange() on an unsharded collection or a non-existing collection.

sh.addTagRange() 以下の引数を取ります。

Parameter
タイプ
説明

namespace

string

タグを付けるシャーディングされたコレクションの名前空間

minimum

ドキュメント

タグに含めるシャードキー範囲の最小値。 最小値は包括的一致です。 <fieldname>:<value>の形式で最小値を指定します。 この値は、シャードキーと同じ BSON type である必要があります。

maximum

ドキュメント

タグに含めるシャードキー範囲の最大値。 最大値は排他一致です。 <fieldname>:<value>の形式で最大値を指定します。 この値は、シャードキーと同じ BSON type である必要があります。

tag

string

minimummaximumの引数で指定された範囲を添付するタグの名前。

sh.addShardTag()を使用して、バランサーが指定された範囲内に存在するドキュメントを特定のシャードまたはシャードのセットに移行するようにします。

Only issue sh.addTagRange() when connected to a mongos instance.

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

  • MongoDB Atlas はクラウドでの MongoDB 配置のための完全管理サービスです

重要

このコマンドは、M0 および Flex クラスターではサポートされていません。詳細については、サポートされていないコマンド を参照してください。

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

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

ゾーン範囲は、常に下限を含み、上限を含まない範囲です。

If you are considering performing zone sharding on an empty or non-existent collection, use sh.addTagRange() to create the zones and zone ranges before sharding the collection. Creating zones and zone ranges on empty or non-existing collections allows MongoDB to optimize the initial chunk creation and distribution process when sharding the collection. This optimized process supports faster setup of zoned sharding with less balancer overhead than creating zones after sharding. The balancer performs all chunk management after the optimized initial chunk creation and distribution.

最初のチャンク分散のゾーンとゾーン範囲の定義の例については、「空または存在しないコレクションのゾーンとゾーン範囲の事前定義 」を参照してください。

MongoDB は、ハッシュされた複合インデックスでのコレクションのシャーディングをサポートしています。 MongoDB は、空のコレクションまたは存在しないコレクションを 複合ハッシュされたシャードキー でシャーディングするときに、最適化された初期チャンクの作成と分散を実行できます。

ハッシュされたフィールドがシャードキーのプレフィックス(つまり、シャードキーの最初のフィールド)である場合、MongoDB が初期チャンクの作成と分散を実行するには、次のすべてが当てはまる必要があります。

  • コレクションには単一のゾーン範囲があり、すべての下限フィールドにはMinKey 、すべての上限フィールドにはMaxKeyが含まれます。

  • sh.shardCollection()presplitHashedZones: trueオプションを指定します。

ハッシュされたフィールドがシャードキーのプレフィックスではない場合(つまり、シャードキーにハッシュされていない先頭フィールドが 1 つ以上ある場合)、MongoDB が初期チャンクの作成と分散を実行するには、次のすべてが当てはまる必要があります。

  • コレクションには、個別のプレフィックスフィールド値の組み合わせごとに 1 つのゾーン範囲があります(つまり ハッシュされたフィールドに先行するすべてのフィールド)。

  • 各ゾーン範囲の下限について、ハッシュされたフィールドとそれ以降のすべてのフィールドにMinKeyを指定します。

  • 各ゾーン範囲について、少なくとも 1 つの上限プレフィックス フィールドがその下限のカウンター と 異なる必要があります。

  • sh.shardCollection()presplitHashedZones: trueオプションを指定します。

複合ハッシュされたシャードキーでの初期チャンク分散のためのゾーンとゾーン範囲の定義のより詳細な例については、「空または存在しないコレクションのゾーンとゾーン範囲の事前定義 」を参照してください。

コレクションを削除すると、それに関連付けられたゾーンやタグの範囲も削除されます。

以前のバージョンでは、MongoDB は削除されたコレクションのタグ関連付けを削除せず、後で同じ名前で新しいコレクションを作成すると、古いタグの関連付けが新しいコレクションに適用されます。

シャードキーが{state: 1, zip: 1}の場合、次の操作では、ニューヨーク州の郵便番号をカバーするタグ範囲が作成されます。

sh.addTagRange( "exampledb.collection",
{ state: "NY", zip: MinKey },
{ state: "NY", zip: MaxKey },
"NY"
)
このページを評価