For AI agents: the complete documentation index is available at https://docs.dataplatform.ovh.net/ja/llms.txt, the full documentation bundle is available at https://docs.dataplatform.ovh.net/ja/llms-full.txt, and this page is available as Markdown at https://docs.dataplatform.ovh.net/ja/dpe-actions-aggregate-advanced-mode.md.
  • 🇯🇵 日本語
  • Aggregateアクションの高度なモード

    高度なモードでAggregateアクションをさらにカスタマイズするには、JSON設定に直接作業します

    目的

    DPE(> アクション > 新しいアクション > Aggregate)のアクションエディタのヘッダーで高度なモードに切り替えると、JSON設定ファイルに直接表示および作業することで、Aggregateアクションのカスタマイズをさらに進めることができます。JSONファイルはより柔軟性があり、Aggregateアクションのすべてのオプションにアクセスできます。

    AggregateアクションのJSON設定ファイルは、必須の高レベルオブジェクトで構成されています。これは次のものを含みます。

    • Sources:データを読み込むために使用するソーステーブルを定義します。
    • Grouping:目的地テーブルの主キーに基づいて、データがどの次元でグループ化されるかを定義します。
    • Schema:目的地テーブルとソーステーブルの間の個別のマッピングを定義します。
    • Join:複数のソースがある場合の仮想的な結合条件を定義します。
    • Destination:Aggregateアクションの出力データを読み込むテーブルを定義します。

    その他のオプションパラメータも追加できます。これは特定のセクションその他のオプションパラメータでカバーします。例えば、セグメンテーション、ペリメーター、または変換ルールなどが含まれます。

    Sources

    形式:JSONには、ソースを指す文字列値とオプションの追加パラメータが含まれています。ソースパスは次のようになります:dwh/database_name/table_name、ここでdatabase_nameはソースの場所の名前(ソースまたはLakehouse Managerから)であり、table_nameはソースオブジェクトまたはLakehouse Managerのスキーマのオブジェクトの名前です。

    JSONキーparams.load_from[0].sourceまたはparams.load_from.source

    例:

    "load_from" : [
        {
            "source" : "dwh/default_dataset/prim_calendar",
            "force_utf8" : true
        }
    ]
    
    load_from" : {
            "source" : "dwh/default_dataset/prim_calendar",
            "force_utf8" : true
    }
    Tip

    テーブルにエイリアスを付けるには、テーブル名の後にスペースを追加し、テーブルのエイリアスの文字を追加します。例えば:「source": "dwh/source_facebook/lifetime_insights fb_i"。これにより、lifetime_insightsテーブルがfb_iにエイリアス化されます。そのため、このエイリアスを結合とスキーマで再利用できます。

    Grouping

    スケーリングは、データがどの程度の粒度で集計されるかを決定します。これは特に、集計テーブルに挿入するデータの構成に役立ちます。

    形式:これは、グループ化の粒度を決定する属性またはSQLルールのJSONリストです。

    JSONキーparams.scale

    例:

    {
    "load_from": {
      "source": "dwh/default_dataset/prim_facebook"
    },
    "scale": ["date","page_id"],
    

    これにより、fb_fansの数はdatepage_idで集計されます。

    Info

    スケールを実装すると、SQL抽出クエリにGROUP BY操作が生成されます。この例では:GROUP BY page_id, date。

    Schema

    スキーマは、ソースに存在するフィールドの名前から、目的地でこれらのフィールドが持つべき名前へのリネーミングを決定します。

    形式:スキーマオブジェクトには、JSONオブジェクトのシリーズが含まれており、各キーは目的地の属性の名前であり、値には属性に関連付けられたパラメータが含まれています。

    JSONキーparams.schema

    例:

    {
    "schema": {
        "month": {
          "table": "ref_month",
          "operation": "SELECT",
          "type": "default",
          "attribute": "month"
        },
        "vegetables": {
          "type": "sql",
          "sql": "CONCAT(\"HELLO : \", prim_calendar.legumes)"
        },
        "season": {
          "type": "replace",
          "value": "hello"
        }
    }

    3種類のマッピングがあります。

    • type:default:変換なしで1つの属性を別の属性にマッピングします。
      • table 属性の元のソースオブジェクト
      • attribute マッピング元のソース属性
      • operation SQL操作セクションで言及されたSQL操作の種類を表します。(SQLのようなソースのみ)
    • type:replace:すべての目的地行にハードコードされた値を設定します。
      • value:この属性は、挿入/更新されるすべての目的地行について、値で埋められます。
    • type:"sql":次のSQL式が適用されます。(SQLのようなソースのみ)
      • sql 値はSQLステートメントです。

    Join

    結合は、同じデータベースまたは同じデータベースインスタンス内のテーブル間でのみ可能です(例えば、default_datasetのテーブルのみ)。

    形式:JSONオブジェクトのリストで、各オブジェクトはJOINステートメントを表します。オブジェクトの順序はJOINアクションの順序です。

    JSONキーparams.joins

    例:

    "joins": [
        {
          "table": "ref_month",
          "type": "LEFT",
          "condition": "prim_calendar.month_number = ref_month.month_number"
        },
        {
          "table": "ref_saison",
          "type": "LEFT",
          "condition": "prim_calendar.month_number = ref_season.season_number"
        }
      ]
    • table:ソースを結合するテーブル
    • type:結合セクションで言及された結合タイプ
    • condition:SQLステートメントのONキーワードに続く結合条件

    Destination

    Destinationは、アクションデータが注入される場所を表します。

    形式:そのパスは次のようになります:dwh/database_name/table_name。ここでdatabase_nameは目的地データベースの名前(通常はdefault_dataset)であり、table_nameはLakehouse Managerスキーマの目的地テーブルの名前です。

    JSONキーparams.load_to[source]

    例:

    "load_to": {
        "source": "dwh/default_dataset/tmp_calendar",
        "force_utf8": true
      }

    一度に複数の目的地を埋めることができます。

    "load_to": [
        {"source": "dwh/default_dataset/prim_facebook"},
        {"source": "dwh/default_dataset/tmp_facebook"},
      ]

    その他のオプションパラメータ

    Extract_chunk_size

    extract_chunk_sizeは、データを抽出する際の最大許容サイズを表す整数値です。

    例:

    "extract_chunk_size": 5000

    これにより、ワーカーは5000行のバッチでデータを抽出できます。

    JSONキーparams.load_from[0].extract_chunk_size

    Source_rules

    source_rulesは、単純なデータ準備のルールを表します。この設定はDWHから同期された既存のルールを上書きします。これらはソースの属性に適用されます。例えば、属性date_sourceに変換ルールを適用したいと仮定しましょう。

    形式:JSONオブジェクトのリストで、各オブジェクトは属性に適用されるルールを表します。

    JSONキーparams.load_from[source_rules]

    例:

      "source_rules": [
      {
        "action": "date_replace",
        "action_values": [
        "%d/%m/%Y %H:%i:%s",
        "%Y-%m-%d %H:%M:%S"
        ],
        "attribute_name": "date_source",
        "name": "correct date format"
      }
    ]

    詳細な設定ドキュメントについては、blueprint rulesの記事を参照してください。

    Rules

    Rulesはsource_rulesと同様ですが、抽出属性の代わりに目的地属性に適用されます。これにより、同じソース属性に異なるルールを割り当てることができます。

    形式:JSONオブジェクトのリストで、各オブジェクトは属性に適用されるルールを表します。

    JSONキーparams.rules

    例:

    "rules": [
      {
        "action": "date_replace",
        "action_values": [
        "%d/%m/%Y %H:%i:%s",
        "%Y-%m-%d %H:%M:%S"
        ],
        "attribute_name": "date_dest",
        "name": "correct date format"
      }
    ]

    SQL conditions

    複雑なSQL条件でフィルタリングするには、「condition」オプションを通じて追加できます。

    JSONキーparams.load_from[0].condition 形式:ソースで生成されるSQLクエリの「WHERE」句を含む文字列。('WHERE'を除く)

    例:

    {
    "params": 
      {
        "load_from": [{
          "condition": " (attribute1 > 1 OR attribute2 BETWEEN 2019 and 2021) ",
          ...
        }]
      }
    }

    さらに進む

    トレーニングや技術的なアシスタンスが必要な場合は、営業担当者にお問い合わせください、またはこのリンクをクリックして見積もりを依頼し、プロフェッショナルサービスの専門家にプロジェクトのカスタム分析を依頼してください。

    質問をする、フィードバックを送信する、およびData Platformを構築するチームと直接やり取りするには、専用のDiscordチャネルにアクセスしてください。

    OVHcloudサービスについてサポートが必要な場合は、ヘルプセンターでリクエストを作成してください。

    ユーザーコミュニティに参加してください。