すべてのプロダクト
Search
ドキュメントセンター

DataWorks:データの処理

最終更新日:Jul 17, 2025

このトピックでは、DataWorks の MaxCompute ノードを使用して、MaxCompute に同期された ods_user_info_d_odps テーブルと ods_raw_log_d_odps テーブルのデータを処理し、ユーザープロファイルデータを取得する方法について説明します。 ods_user_info_d_odps テーブルには基本的なユーザー情報が格納され、ods_raw_log_d_odps テーブルにはユーザーの Web サイトアクセスログが格納されます。 このトピックは、DataWorks と MaxCompute を使用して同期されたデータを計算および分析し、データウェアハウスで単純なデータ処理を完了する方法を理解するのに役立ちます。

前提条件

必要なデータが同期されています。 詳細については、「データの同期」をご参照ください。

ステップ 1:データ処理リンクを構築する

データ同期 フェーズでは、必要なデータが MaxCompute に同期されます。 次の目標は、データをさらに処理して基本的なユーザープロファイルデータを生成することです。

  1. DataWorks コンソールにログインし、Data Studio ページの DATA STUDIO ペインに移動します。 DATA STUDIO ペインの ワークスペースディレクトリ セクションで、準備したワークフローを見つけ、ワークフロー名をクリックしてワークフローの構成タブに移動します。

  2. このチュートリアルでは、3 つの MaxCompute SQL ノードを作成する必要があります。 次の表に、このチュートリアルで使用されるノード名とノードの機能を示します。

    ノードタイプ

    ノード名

    ノード機能

    imageMaxCompute SQL

    dwd_log_info_di_odps

    このノードは、ods_raw_log_d_odps テーブルのデータを分割し、そのデータを複数のフィールドに

    dwd_log_info_di_odps テーブルに、getregion という名前の組み込み関数またはユーザー定義関数 (UDF) に基づいて。

    imageMaxCompute SQL

    dws_user_info_all_di_odps

    このノードは、データを集計するために使用されます。

    基本ユーザー情報テーブル ods_user_info_d_odps および 処理済みログデータテーブル dwd_log_info_di_odps

    集計結果を

    dws_user_info_all_di_odps テーブル。

    imageMaxCompute SQL

    ads_user_info_1d_odps

    このノードは、データをさらに処理するために使用されます。

    dws_user_info_all_di_odps テーブルのデータをさらに処理し、処理済みのデータを

    ads_user_info_1d_odps テーブルに同期して、基本的なユーザープロファイルを生成します。

  3. 次の図に示すように、線を描画して、MaxCompute SQL ノードの祖先ノードを構成します。

    image
    説明

    線を描画して、ワークフロー内のノードの スケジューリング依存関係 を構成できます。 また、自動解析機能を使用して、システムがノード間のスケジューリング依存関係を自動的に識別できるようにすることもできます。 このチュートリアルでは、線を描画することでノード間のスケジューリング依存関係を構成します。 自動解析機能の詳細については、「方法 1:ノードのコード内のリネージに基づいてスケジューリング依存関係を構成する」をご参照ください。

ステップ 2:リソースをアップロードし、UDF を登録する

データが想定どおりに処理されるようにするには、データを同期 するときに MaxCompute に同期されるログデータ構造を分割するために、getregion という名前の MaxCompute UDF を登録する必要があります。

重要
  • このチュートリアルでは、IP アドレスを地域に変換するために使用される関数に必要なリソースが提供されています。 リソースをオンプレミス マシンにダウンロードし、目的の DataWorks ワークスペースにアップロードしてから、DataWorks に関数を登録する必要があります。

  • この関数の IP アドレスリソースは、このチュートリアルでのみ使用されます。 正式なビジネスシナリオで IP アドレスと地理的な場所のマッピングを実装する必要がある場合は、専門の IP アドレス Web サイトから専門の IP アドレス変換サービスを探す必要があります。

リソースをアップロードする (ip2region.jar)

  1. ip2region.jar パッケージをダウンロードします。

    説明

    ip2region.jar パッケージは、このチュートリアルでのみ使用されます。

  2. DataWorks コンソールにログインし、[Data Studio] ページに移動します。 Data Studio ページの左側のナビゲーションウィンドウで、image アイコンをクリックします。 リソース管理ウィンドウで、 image アイコンをクリックし、[リソースの作成] > [MaxCompute Jar] を選択します。 リソースまたは関数の作成ダイアログボックスで、名前パラメーターを設定し、OK をクリックします。

    説明

    リソース名は、アップロードするパッケージと異なる場合があります。

  3. [ファイルソース] パラメーターを [オンプレミス] に設定し、ファイルコンテンツ パラメーターの横にある [アップロード] をクリックして、ローカルマシンにダウンロードした ip2region.jar パッケージを選択します。

  4. 環境を準備する ときにワークスペースに関連付けられている MaxCompute 計算リソースを、データソース ドロップダウンリストから選択します。

  5. 構成タブの上部ツールバーで、[保存] をクリックし、次に [デプロイ] をクリックして、画面の指示に従って開発環境と本番環境の両方で MaxCompute プロジェクトにリソースをデプロイします。

UDF を登録する (getregion)

  1. DataWorks コンソールにログインし、[Data Studio] ページに移動します。 Data Studio ページの左側のナビゲーションウィンドウで、image アイコンをクリックします。 RESOURCE MANAGEMENT ペインで、image アイコンをクリックして、[Create Function] > [MaxCompute Function] を選択します。 [リソースまたは関数の作成] ダイアログボックスで、Name パラメーターを設定します。 このチュートリアルでは、Name パラメーターは getregion に設定されています。

  2. 表示される構成タブで、パラメーターを構成します。 次の表に、このチュートリアルで構成する必要があるパラメーターを示します。 その他のパラメーターについては、デフォルト値を保持します。

    パラメーター

    説明

    関数タイプ

    OTHER を選択します。

    データソース

    環境を準備する ときにワークスペースに関連付けられている MaxCompute 計算リソースを選択します。

    クラス名

    org.alidata.odps.udf.Ip2Region と入力します。

    リソースリスト

    ip2region.jar を選択します。

    説明

    説明を入力します。 このチュートリアルでは、次の説明が入力されます:IP アドレスの地域への変換。

    コマンド構文

    getregion('ip') と入力します。

    パラメーターの説明

    パラメーターの説明を入力します。 この例では、次のパラメーターの説明が入力されます:IP アドレス。

  3. 構成タブの上部ツールバーで、保存 をクリックし、次に デプロイ をクリックして、表示される指示に従って、開発環境と本番環境の両方で MaxCompute プロジェクトに関数をデプロイします。

ステップ 3:MaxCompute SQL ノードを構成する

データ処理を実行するには、関連する MaxCompute SQL ノードをスケジュールして、処理ロジックの各レイヤーを実装する必要があります。 このチュートリアルでは、データ処理のサンプルコードが提供されています。 dwd_log_info_di_odpsdws_user_info_all_di_odpsads_user_info_1d_odps ノードのコードを個別に構成する必要があります。

dwd_log_info_di_odps ノードを構成する

このノードのサンプルコードでは、登録済みの関数を使用して、祖先テーブル ods_raw_log_d_odps のフィールドの SQL コードを処理し、テーブル内のデータを dwd_log_info_di_odps テーブルに同期します。

  1. Data Studio ページの左側のナビゲーションペインで、image アイコンをクリックします。 DATA STUDIO ペインの ワークスペースディレクトリ セクションで、作成したワークフローを見つけ、ワークフロー名をクリックしてワークフローのキャンバスに移動します。

  2. ワークフローのキャンバスで、ポインターを dwd_log_info_di_odps ノードの上に移動し、ノードを開く をクリックします。

  3. 次の SQL 文をコピーして、コードエディターに貼り付けます。

    dwd_log_info_di_odps ノードのサンプルコード

    -- dwd_log_info_di_odps テーブルを作成します。
    CREATE TABLE IF NOT EXISTS dwd_log_info_di_odps (
     ip STRING COMMENT 'IPアドレス',
     uid STRING COMMENT 'ユーザーID',
     time STRING COMMENT 'yyyymmddhh:mi:ss 形式の時間',
     status STRING COMMENT 'サーバーから返される状態コード',
     bytes STRING COMMENT 'クライアントに返されるバイト数',
     region STRING COMMENT 'IPアドレスに基づいて取得される地域',
     method STRING COMMENT 'HTTP リクエストタイプ',
     url STRING COMMENT 'URL',
     protocol STRING COMMENT 'HTTP のバージョン番号',
     referer STRING COMMENT 'ソース URL',
     device STRING COMMENT '端末タイプ',
     identity STRING COMMENT 'アクセスタイプ。クローラー、フィード、ユーザー、または不明のいずれかになります。'
    )
    PARTITIONED BY (
     dt STRING
    )
    LIFECYCLE 14;
    
    -- データを処理します。
    -- シナリオ:次の SQL 文は、getregion 関数を使用して生ログデータの IP アドレスを解析し、正規表現を使用して生データを分割してフィールドを分析し、フィールドを dwd_log_info_di_odps テーブルに書き込みます。
    --      このチュートリアルでは、IP アドレスを地域に変換するための関数 getregion を準備しています。
    -- 注:
    --     1.DataWorks ノードで UDF を使用するには、関数の登録に必要なリソースを DataWorks にアップロードし、リソースを使用して関数を視覚的に登録する必要があります。
    --        このチュートリアルでは、リソース ip2region.jar を使用して関数 getregion を登録します。
    --     2.DataWorks でノードのスケジューリングパラメーターを構成して、スケジューリングシナリオで毎日、必要なテーブルの関連パーティションに増分データを同期できます。
    --        実際の開発シナリオでは、ノードのコードで ${変数名} 形式で変数を定義し、ノードの構成タブの [プロパティ] タブで変数にスケジューリングパラメーターを割り当てることができます。 これにより、スケジューリングパラメーターの構成に基づいて、ノードコード内のスケジューリングパラメーターの値を動的に置き換えることができます。
    INSERT OVERWRITE TABLE dwd_log_info_di_odps PARTITION (dt='${bizdate}')
    SELECT ip 
      , uid
      , time
      , status
      , bytes 
      , getregion(ip) AS region -- UDF を使用して IP アドレスに基づいて地域を取得します。
      , regexp_substr(request, '(^[^ ]+ )') AS method -- 正規表現を使用してリクエストを 3 つのフィールドに分割します。
      , regexp_extract(request, '^[^ ]+ (.*) [^ ]+$') AS url
      , regexp_substr(request, '([^ ]+$)') AS protocol 
      , regexp_extract(referer, '^[^/]+://([^/]+){1}') AS referer -- 正規表現を使用してリファラーをクレンジングし、より正確な URL を取得します。
      , CASE
        WHEN TOLOWER(agent) RLIKE 'android' THEN 'android' -- エージェントを使用して端末情報とアクセスフォームを取得します。
        WHEN TOLOWER(agent) RLIKE 'iphone' THEN 'iphone'
        WHEN TOLOWER(agent) RLIKE 'ipad' THEN 'ipad'
        WHEN TOLOWER(agent) RLIKE 'macintosh' THEN 'macintosh'
        WHEN TOLOWER(agent) RLIKE 'windows phone' THEN 'windows_phone'
        WHEN TOLOWER(agent) RLIKE 'windows' THEN 'windows_pc'
        ELSE 'unknown'
      END AS device
      , CASE
        WHEN TOLOWER(agent) RLIKE '(bot|spider|crawler|slurp)' THEN 'crawler'
        WHEN TOLOWER(agent) RLIKE 'feed'
        OR regexp_extract(request, '^[^ ]+ (.*) [^ ]+$') RLIKE 'feed' THEN 'feed'
        WHEN TOLOWER(agent) NOT RLIKE '(bot|spider|crawler|feed|slurp)'
        AND agent RLIKE '^[Mozilla|Opera]'
        AND regexp_extract(request, '^[^ ]+ (.*) [^ ]+$') NOT RLIKE 'feed' THEN 'user'
        ELSE 'unknown'
      END AS identity
      FROM (
        SELECT SPLIT(col, '##@@')[0] AS ip
        , SPLIT(col, '##@@')[1] AS uid
        , SPLIT(col, '##@@')[2] AS time
        , SPLIT(col, '##@@')[3] AS request
        , SPLIT(col, '##@@')[4] AS status
        , SPLIT(col, '##@@')[5] AS bytes
        , SPLIT(col, '##@@')[6] AS referer
        , SPLIT(col, '##@@')[7] AS agent
      FROM ods_raw_log_d_odps  
      WHERE dt ='${bizdate}'
    ) a;
  4. デバッグパラメーターを構成します。

    ノードの構成タブの右側のナビゲーションペインで、デバッグ構成 をクリックします。 デバッグ構成 タブで、次のパラメーターを構成します。 これらのパラメーターは、ステップ 4 でワークフローをテストするために使用されます。

    パラメーター

    説明

    計算リソース

    環境を準備する ときにワークスペースに関連付けられている MaxCompute 計算リソースを選択します。

    リソースグループ

    環境を準備する ときに購入したサーバーレス リソースグループを選択します。

    スクリプトパラメーター

    このパラメーターを構成する必要はありません。 このチュートリアルで提供されているサンプルコードでは、${bizdate} 変数がデータタイムスタンプを表すために使用されます。 ステップ 4 に従ってワークフローをデバッグするときに、変数の値を 20250223 などの定数に設定できます。 ワークフローが実行されると、ワークフローの内部ノードに定義された変数は定数に置き換えられます。

  5. (オプション) スケジューリングプロパティを構成します。

    このチュートリアルでは、スケジューリングプロパティに関連するパラメーターはデフォルト値のままでかまいません。 ノードの設定タブの右側のナビゲーションウィンドウで [プロパティ] をクリックすると、次のサブタブでパラメーターの値を表示できます。 「プロパティ」タブの他のパラメーターの詳細については、「スケジューリングプロパティ」をご参照ください。

    • スケジューリングパラメーター:このチュートリアルでは、ワークフローのスケジューリングパラメーターが構成されています。 ワークフローの内部ノードのスケジューリングパラメーターを個別に構成する必要はありません。 構成されたスケジューリングパラメーターは、内部ノードに基づいて開発されたコードとタスクに直接使用できます。

    • スケジューリングポリシー遅延実行時間 パラメーターを構成して、ノードの実行がワークフローの実行よりも遅れる期間を指定できます。 このチュートリアルでは、このパラメーターを構成する必要はありません。

  6. 構成タブの上部ツールバーで、保存 をクリックしてノードを保存します。

dws_user_info_all_di_odps ノードを構成する

このノードは、基本ユーザー情報テーブル ods_user_info_d_odps と処理済みログデータテーブル dwd_log_info_di_odps を集計し、集計結果を dws_user_info_all_di_odps テーブルに同期するために使用されます。

  1. ワークフローのキャンバスで、ポインターを dws_user_info_all_di_odps ノードの上に移動し、ノードを開く をクリックします。

  2. 次の SQL 文をコピーして、コードエディターに貼り付けます。

    dws_user_info_all_di_odps ノードのサンプルコード

    -- dws_user_info_all_di_odps テーブルを作成します。
    CREATE TABLE IF NOT EXISTS dws_user_info_all_di_odps (
     uid STRING COMMENT 'ユーザーID',
     gender STRING COMMENT '性別',
     age_range STRING COMMENT '年齢層',
     zodiac STRING COMMENT '星座',
     region STRING COMMENT 'IPアドレスに基づいて取得される地域',
     device STRING COMMENT '端末タイプ',
     identity STRING COMMENT 'アクセスタイプ。クローラー、フィード、ユーザー、または不明のいずれかになります。',
     method STRING COMMENT 'HTTP リクエストタイプ',
     url STRING COMMENT 'URL',
     referer STRING COMMENT 'ソース URL',
     time STRING COMMENT 'yyyymmddhh:mi:ss 形式の時間'
    )
    PARTITIONED BY (
     dt STRING
    )
    LIFECYCLE 14;
    
    -- データを処理します。
    -- シナリオ:次の SQL 文は、処理済みログデータテーブル dwd_log_info_di_odps と基本ユーザー情報テーブル ods_user_info_d_odps を集計し、集計結果を dws_user_info_all_di_odps テーブルに書き込むために使用されます。
    -- 注:DataWorks でノードのスケジューリングパラメーターを構成して、スケジューリングシナリオで毎日、必要なテーブルの関連パーティションに増分データを同期できます。
    --      実際の開発シナリオでは、ノードのコードで ${変数名} 形式で変数を定義し、ノードの構成タブの [プロパティ] タブで変数にスケジューリングパラメーターを割り当てることができます。 これにより、スケジューリングパラメーターの構成に基づいて、ノードコード内のスケジューリングパラメーターの値を動的に置き換えることができます。
    INSERT OVERWRITE TABLE dws_user_info_all_di_odps  PARTITION (dt='${bizdate}')
    SELECT COALESCE(a.uid, b.uid) AS uid
      , b.gender
      , b.age_range
      , b.zodiac
      , a.region
      , a.device
      , a.identity
      , a.method
      , a.url
      , a.referer
      , a.time
    FROM (
      SELECT *
      FROM dwd_log_info_di_odps  
      WHERE dt = '${bizdate}'
    ) a
    LEFT OUTER JOIN (
      SELECT *
      FROM ods_user_info_d_odps 
      WHERE dt = '${bizdate}'
    ) b
    ON a.uid = b.uid;
  3. デバッグパラメーターを構成します。

    ノードの構成タブの右側のナビゲーションペインで、デバッグ構成 をクリックします。 デバッグ構成 タブで、次のパラメーターを構成します。 これらのパラメーターは、ステップ 4 でワークフローをテストするために使用されます。

    パラメーター

    説明

    計算リソース

    環境を準備する ときにワークスペースに関連付けられている MaxCompute 計算リソースを選択します。

    リソースグループ

    環境を準備する ときに購入したサーバーレス リソースグループを選択します。

    スクリプトパラメーター

    このパラメーターを構成する必要はありません。 このチュートリアルで提供されているサンプルコードでは、${bizdate} 変数がデータタイムスタンプを表すために使用されます。 ステップ 4 に従ってワークフローをデバッグするときに、変数の値を 20250223 などの定数に設定できます。 ワークフローが実行されると、ワークフローの内部ノードに定義された変数は定数に置き換えられます。

  4. (オプション) スケジューリングプロパティを構成します。

    このチュートリアルでは、スケジュールプロパティ関連のパラメーターはデフォルト値のままでかまいません。 ノードの構成タブの右側のナビゲーションウィンドウで[プロパティ]をクリックして、次のサブタブでパラメーターの値を表示できます。 [プロパティ] タブの他のパラメーターの詳細については、「スケジューリングプロパティ」をご参照ください。

    • スケジューリングパラメーター:このチュートリアルでは、ワークフローのスケジューリングパラメーターが構成されています。 ワークフローの内部ノードのスケジューリングパラメーターを個別に構成する必要はありません。 構成されたスケジューリングパラメーターは、内部ノードに基づいて開発されたコードとタスクに直接使用できます。

    • スケジューリングポリシー遅延実行時間 パラメーターを構成して、ノードの実行がワークフローの実行よりも遅れる期間を指定できます。 このチュートリアルでは、このパラメーターを構成する必要はありません。

  5. 構成タブの上部ツールバーで、保存 をクリックしてノードを保存します。

ads_user_info_1d_odps ノードを構成する

このノードは、dws_user_info_all_di_odps テーブルのデータをさらに処理し、処理済みデータを ads_user_info_1d_odps テーブルに同期して、基本的なユーザープロファイルを作成するために使用されます。

  1. ワークフローのキャンバスで、ポインターを ads_user_info_1d_odps ノードの上に移動し、ノードを開く をクリックします。

  2. 次の SQL 文をコピーして、コードエディターに貼り付けます。

    ads_user_info_1d_odps ノードのサンプルコード

    -- ads_user_info_1d_odps テーブルを作成します。
    CREATE TABLE IF NOT EXISTS ads_user_info_1d_odps (
     uid STRING COMMENT 'ユーザーID',
     region STRING COMMENT 'IPアドレスに基づいて取得される地域',
     device STRING COMMENT '端末タイプ',
     pv BIGINT COMMENT 'ページビュー数',
     gender STRING COMMENT '性別',
     age_range STRING COMMENT '年齢層',
     zodiac STRING COMMENT '星座'
    )
    PARTITIONED BY (
     dt STRING
    )
    LIFECYCLE 14;    
    
    -- データを処理します。
    -- シナリオ:次の SQL 文は、ユーザー Web サイトアクセスログを格納する dws_user_info_all_di_odps ワイドテーブルのデータをさらに処理して基本的なユーザープロファイルデータを生成し、データを ads_user_info_1d_odps テーブルに同期するために使用されます。
    -- 注:DataWorks でノードのスケジューリングパラメーターを構成して、スケジューリングシナリオで毎日、必要なテーブルの関連パーティションに増分データを同期できます。
    --      実際の開発シナリオでは、ノードのコードで ${変数名} 形式で変数を定義し、ノードの構成タブの [プロパティ] タブで変数にスケジューリングパラメーターを割り当てることができます。 これにより、スケジューリングパラメーターの構成に基づいて、ノードコード内のスケジューリングパラメーターの値を動的に置き換えることができます。
    INSERT OVERWRITE TABLE ads_user_info_1d_odps  PARTITION (dt='${bizdate}')
    SELECT uid
      , MAX(region)
      , MAX(device)
      , COUNT(0) AS pv
      , MAX(gender)
      , MAX(age_range)
      , MAX(zodiac)
    FROM dws_user_info_all_di_odps 
    WHERE dt = '${bizdate}'
    GROUP BY uid; 
  3. デバッグパラメーターを設定します。

    ノードの構成タブの右側のナビゲーションウィンドウで、[デバッグ構成] をクリックします。[デバッグ構成] タブで、次のパラメーターを構成します。これらのパラメーターは、ステップ 4 でワークフローをテストするために使用されます。

    パラメーター

    説明

    計算リソース

    環境を準備する ときにワークスペースに関連付けられている MaxCompute 計算リソースを選択します。

    リソースグループ

    環境を準備する ときに購入したサーバーレス リソースグループを選択します。

    スクリプトパラメーター

    このパラメーターを構成する必要はありません。 このチュートリアルで提供されているサンプルコードでは、${bizdate} 変数がデータタイムスタンプを表すために使用されます。 ステップ 4 に従ってワークフローをデバッグするときに、変数の値を 20250223 などの定数に設定できます。 ワークフローが実行されると、ワークフローの内部ノードに定義された変数は定数に置き換えられます。

  4. デバッグパラメーターを構成します。

    ノードの構成タブの右側のナビゲーションウィンドウで、[デバッグ設定] をクリックします。 [デバッグ設定] タブで、次のパラメーターを構成します。 これらのパラメーターは、ステップ 4 でワークフローをテストするために使用されます。

    パラメーター

    説明

    計算リソース

    環境を準備する際に、ワークスペースに関連付けられている MaxCompute 計算リソースを選択します。

    リソースグループ

    環境を準備する際に、購入したサーバーレスリソースグループを選択します。

    スクリプトパラメーター

    このパラメーターを構成する必要はありません。 このチュートリアルで提供されているサンプルコードでは、${bizdate} 変数はデータタイムスタンプを表すために使用されます。 手順 4 に従ってワークフローをデバッグする際に、変数の値を 20250223 などの定数に設定できます。 ワークフローが実行されると、ワークフローの内部ノードに定義されている変数は定数に置き換えられます。

  5. 構成タブの上部ツールバーで、保存 をクリックしてノードを保存します。

ステップ 4:データを処理する

  1. データを処理します。

    ワークフローの構成タブの上部のツールバーで、[実行] をクリックします。「ランタイムパラメーターの入力」ダイアログボックスで、この実行で各ノードに定義されているスケジューリングパラメーターの値を指定し、[OK] をクリックします。このチュートリアルでは、20250223 を指定します。ビジネス要件に基づいて値を指定できます。

  2. データ処理結果をクエリします。

    1. Data Studio ページの左側のナビゲーションペインで、image アイコンをクリックします。 DATA STUDIO ペインの 個人ディレクトリ セクションで、image アイコンをクリックして、名前の末尾が .sql のファイルを作成します。 ビジネス要件に基づいてファイルの名前を指定できます。

    2. ファイルの構成タブの下部で、言語モードが MaxCompute SQL であることを確認します。image

    3. コードエディターで、次の SQL 文を入力して、最終結果テーブル ads_user_info_1d_odps のデータレコード数をクエリし、データ処理結果が生成されているかどうかを確認します。

      -- パーティションフィルター条件を現在の操作のデータタイムスタンプに更新する必要があります。 このチュートリアルでは、前のステップで構成したスケジューリングパラメーター bizdate の値は 20250223 です。
      SELECT count(*) FROM ads_user_info_1d_odps WHERE dt='データタイムスタンプ';
      • 前の文を実行した後に返された結果にデータが存在することが示されている場合は、データ処理は完了です。

      • 前述の文を実行した結果、宛先にデータが存在しない場合は、ワークフローの実行時に、[今回の実行でワークフローの内部ノードに定義されたスケジューリングパラメーターに指定された値]が、前述の文にある dt フィールドの値と同じであることを確認する必要があります。 ワークフローの設定タブの右側のナビゲーションウィンドウで [実行履歴] をクリックし、次に、今回の実行で生成された実行レコードの [アクション] 列にある [表示] をクリックすると、ワークフローの実行ログで、ワークフローの実行時に使用されるデータタイムスタンプを表示できます。 データタイムスタンプは partition=[pt=xxx] フォーマットです。

ステップ 5:ワークフローをデプロイする

自動トリガーノードは、本番環境にデプロイされた後にのみ、自動的に実行するようにスケジュールできます。 ワークフローを本番環境にデプロイするには、次の手順を参照してください。

説明

このチュートリアルでは、ワークフローのスケジューリングプロパティを構成する ときに、ワークフローのスケジューリングパラメーターが構成されています。 ワークフロー内の各ノードのスケジューリングパラメーターを個別に構成する必要はありません。

  1. Data Studio ページの左側のナビゲーションペインで、image アイコンをクリックします。 DATA STUDIO ペインの ワークスペースディレクトリ セクションで、作成したワークフローを見つけ、ワークフロー名をクリックしてワークフローの構成タブに移動します。

  2. 構成タブの上部ツールバーで、デプロイ をクリックします。

  3. DEPLOY タブで、本番環境へのデプロイを開始 をクリックして、画面の指示に従ってワークフローをデプロイします。

ステップ 6:本番環境でノードを実行する

ある日にノードをデプロイした後、ノードに生成されたインスタンスは次の日に実行するようにスケジュールできます。 データバックフィル機能を使用して、デプロイされたワークフロー内のノードのデータをバックフィルできます。これにより、ノードを本番環境で実行できるかどうかを確認できます。 詳細については、「データのバックフィルとデータバックフィルインスタンスの表示 (新バージョン)」をご参照ください。

  1. ノードがデプロイされた後、Data Studio ページの右上隅にある オペレーションセンター をクリックします。

    Data Studio ページの左上隅にある 图标 アイコンをクリックし、すべての製品 > データ開発とタスク操作 > オペレーションセンター を選択することもできます。

  2. オペレーションセンター ページの左側のナビゲーションペインで、自動トリガーノード O&M > 自動トリガーノード を選択します。 自動トリガーノード ページで、ゼロロードノード workshop_start_odps を見つけ、ノード名をクリックします。

  3. ノードの有向非巡回グラフ (DAG) で、workshop_start_odps ノードを右クリックし、実行 > 現在および子孫ノードを遡及的に を選択します。

  4. [データのバックフィル] パネルで、データをバックフィルするノードを選択し、データタイムスタンプ パラメーターを構成して、送信してリダイレクト をクリックします。

  5. データバックフィル ページの上部にある 更新 をクリックして、すべてのノードが正常に実行されたかどうかを確認します。

説明

チュートリアルの操作が完了した後に過剰な料金が発生しないように、ワークフロー内のすべてのノードの 有効期間 パラメーターを構成するか、ゼロロードノード workshop_start_odpsフリーズすることができます。

次のステップ

  • ダッシュボードでデータを視覚化する:ユーザープロファイル分析が完了したら、DataAnalysis を使用して処理済みデータをグラフに表示します。 これにより、重要な情報をすばやく抽出して、データの背後にあるビジネストレンドを把握できます。

  • データ品質を監視する:データ処理後に生成されるテーブルの監視ルールを構成して、ダーティデータを事前に識別して遮断し、ダーティデータの影響の拡大を防ぎます。

  • データを管理する:ユーザープロファイル分析が完了すると、MaxCompute にデータテーブルが生成されます。 Data Map でデータテーブルを表示し、リネージに基づいてデータテーブル間の関係を判断できます。

  • API を使用してデータサービスを提供する:最終的に処理されたデータを取得したら、DataService Studio の標準化された API を使用してデータを共有し、API を使用してデータを受信する他のビジネスモジュールにデータを提供します。