Docs Menu
Docs Home
/
Atlas Charts
/ /

データに対する集計パイプラインの実行

項目一覧

  • 集計パイプライン エラーへの対処
  • 制限

集計パイプラインは、ドキュメントを結果の集計セットに変換します。 Atlas Charts では、集計パイプラインは通常、既存のフィールドの計算結果から作成された新しいフィールドを視覚化するために使用されますが、他の多くのアプリケーションもあります。

集計パイプラインを作成するには、次の手順に従います。

  1. Queryバーに集計パイプラインを入力します。 パイプラインは角括弧で囲む必要があります。

  2. (任意) Formatを選択して、クエリを次のように配置します。

    • クエリを複数行に分裂する

    • JSON の規則に従ってクエリをインデントする

  3. (条件付き) Formatオプションを選択した場合は、終了したら [ Close ] をクリックします。

  4. パイプラインを実行するには、 Applyをクリックします。

次のチャートは、事務用品会社の総売上額を店舗場所別に分類したものです。 このチャートでは、 Queryバーで次の集計パイプラインを使用します。

[
{
$unwind: "$items"
},
{
$addFields: {
saleAmount: {
$multiply: [ "$items.price", "$items.quantity" ]
}
}
}
]

この集計パイプラインは、次の順序でコレクション データを処理します。

  1. $unwindステージでは、 items配列が展開され、配列内の項目ごとに新しいドキュメントが出力されます。 items配列の各要素には、トランザクション中に販売された 1 つのアイテムが含まれています。

  2. $addFieldsステージでは、ドキュメントにsaleAmountという新しいフィールドが追加されます。 $multiply式は、 saleAmountの値をitems.priceitems.quantityの積に設定します。 次のスクリーンショットで、この新しいフィールドが強調表示されています。

集約パイプラインの例
クリックして拡大します

パイプラインを使用してデータが処理されると、チャートにはすべてのsaleAmountsSumが店舗ロケーション別に分類されて表示されます。

集計が無効な場合、Charts はQueryバーの アイコン。

エラーの詳細を表示するには、まだ表示されていない場合はQueryバーをクリックします。 Charts には、次のエラーの詳細が表示されます。

  • 不正な JSON などのクライアント側のエラーや

  • 無効な MQLやサポートされていないパイプライン ステージなど、サーバー側のエラー。

集計パイプライン エラーの例
クリックして拡大します

エラーの詳細を確認し、それに応じて集計パイプラインを調整します。

  • Charts では集計クエリで$lookup演算子をサポートしていません。 ただし、この演算子は Data Source パイプラインで使用できます。 パイプラインを使用してデータがチャート ビルダに送信される前にデータを前処理する方法の詳細については、「 Chartsビューの作成と管理 」を参照してください。

  • Charts$functionは、関数本体を1行で定義し、double 引用符で囲む場合にのみ 演算子をサポートします。集計クエリでこの演算子を使用するには、次の構文を使用する必要があります。

    {
    $function: {
    body: "function(arg1, arg2, ...) { ... }",
    args: <array expression>,
    lang: "js"
    }
    }

戻る

ルックアップフィールドを追加する