このバージョンのドキュメントはアーカイブされており、サポートされなくなりました。6.0 配置をアップグレードするには、 MongoDB 7.0 のアップグレード手順 を参照してください。
シャーディング操作上の制限
シャーディングされた環境で利用できない操作
$whereは、 $where関数からdbオブジェクトへの参照を許可していません。 これは、シャーディングされていないコレクションでは珍しいことです。
シャーディングされたコレクションにおける単一ドキュメントの変更操作
multi: falseまたはjustOneオプションを指定するシャーディングされたコレクションに対してupdateOne()およびdeleteOne()操作を使用するには以下に従ってください。
1つのシャードのみをターゲットにする場合は、クエリ仕様で部分的なシャードキーを使用するか、
クエリ仕様でシャードキーまたは
_idフィールドを指定できます。
シャーディングされたコレクションでfindOneAndUpdate()を使用するには、クエリフィルターにシャードキーの等価条件が含まれている必要があり、次のいずれかの形式でキーと値を比較する必要があります。
{ key: value } { key: { $eq: value } }
シャーディングされたコレクションにおけるユニークインデックス
MongoDB は、ユニークインデックスにインデックスのプレフィックスとして完全なシャードキーが含まれている場合を除き、シャード間のユニークインデックスをサポートしていません。このような状況では、MongoDB は単一のフィールドではなく、キー全体に対して一意性を強制します。
DDL 操作の書込み保証 (write concern)
シャーディングされたクラスターでは、DDL(データ定義言語)操作は書込み保証 (write concern) "majority" で実行されます。別の書込み保証 (write concern)を指定すると、この操作は提供された書込み保証 (write concern)を"majority" で上書きします。