サポートされている集計パイプライン ステージと演算子
このページでは、Atlas Data Federation がサポートする MongoDB 集計パイプラインステージと演算子について説明します。
注意
デフォルトでは、Atlas Data Federation は、 S 3データ ストアの Data Federation に対するクエリに対して、特定の順序でドキュメントを返しません。 Atlas Data Federation はパーティションを同時に読み取り、基礎となるストレージ応答順序によって、Atlas Data Federation が最初に返すドキュメントが決まります。ただし、クエリで $sort
を使用して順序を定義している場合を除きます。 たとえば、同じfindOne()
クエリを 2 回実行すると、異なるドキュメントが表示されます。また、 $skip
を使用すると、クエリで$sort
が使用されていない場合、異なるドキュメントがスキップされる可能性があります。
サポートされている集計パイプライン ステージとサポートされていない集計パイプライン ステージ
Atlas Data Federation は、以下を除くすべての 集計パイプライン ステージ をサポートしています。
Atlas Data Federation クエリの次のステージでは、Atlas Data Federation は、 の代替構文を導入し、 警告を含む、 またはサーバーから の偏差を提供します。 詳細については、「説明」列を参照してください。
パイプラインステージ | 説明 | ||||||||
---|---|---|---|---|---|---|---|---|---|
入力ドキュメントを指定された たとえば、以下はサポートされていません。
| |||||||||
同じデータベース内のコレクションへの左外部結合を実行します。 Atlas Data Federation では、異なるデータベースのコレクションを結合するための構文も提供します。 詳しくは、 $lookup を参照してください。 | |||||||||
集計パイプラインの結果を指定されたコレクションに書き込みます。 Atlas Data Federation は、Atlas クラスターへの書込みを許可するために必須の into フィールドに代替構文を提供します。 詳しくは、 $merge を参照してください。 | |||||||||
入力から指定した数のドキュメントをランダムに選択します。 Atlas Data Federation は $sample をサポートしていますが、完全にランダムなサンプルを提供するわけではなく、見つけた最初のドキュメントセットを返します。 | |||||||||
ステージに渡される指定された数の ドキュメント をスキップし、残りのドキュメントを パイプライン の次のステージに渡します。 Atlas Data Federationは $skip をサポートしていますが、これによりData Federationはクエリに対応するすべてのパーティションにアクセスするため、データスキャンは削減されません。 |
サポートされている集計パイプライン演算子
Atlas Data Federation は、すべての集計パイプライン演算子をサポートしています。 ただし、一部の演算子は、Atlas クラスター データストアにマップされているコレクションに対するクエリでのみ使用できます。 地理空間クエリ演算子は、このようなクエリでのみ使用できます。 次の評価クエリ演算子も、Atlas クラスター データ ストアにマップされたコレクションに対するクエリに制限されます。
パイプラインステージ | 説明 |
---|---|
指定した点に最も近いものから最も遠いものの順にドキュメントを出力します。 Atlas Data Federation は、1 つ以上の Atlas コレクションにマッピングされている仮想コレクションに対するクエリで 詳細については、「 Atlas クラスターでのデータのクエリ」を参照してください。 | |
コレクションに対して再帰的な検索を実行します。 Atlas Data Federation は、1 つの Atlas コレクションのみにマップされている仮想コレクションに対するクエリで
詳細については、「 Atlas クラスターでのデータのクエリ」を参照してください。 | |
Atlas Search インデックスによってカバーされるフィールドのコンテンツに対して全文検索を実行します。 | |
テキストインデックス でインデックス付けされたフィールドの内容に対してテキスト検索を実行します。 | |
JavaScript 式を含む string または完全な JavaScript 関数をクエリ システムに渡します。 |
注意
Atlas Data Federation にはサーバー側の JavaScript エンジンが含まれていません。 したがって、Atlas Data Federation は、 $where 、 $function 、 $accumulatorなど、サーバー側のスクリプトを有効にする必要がある演算子をサポートしていません。