Skip to content
Last updated

ワークフロー内でTrinoとHiveジョブを連携して実行する例

前提条件

  1. サンプルプロジェクトをダウンロードします
cd ~/Downloads

curl -o nasdaq_analysis.zip \
-L https://gist.github.com/danielnorberg/f839e5f2fd0d1a27d63001f4fd19b947/raw/d2d6dd0e3d419ea5d18b1c1e7ded9ec106c775d4/nasdaq_analysis.zip
  1. ダウンロードしたプロジェクトを解凍します
unzip nasdaq_analysis.zip
  1. ワークフロープロジェクトディレクトリに入ります
cd nasdaq_analysis

ワークフローの確認

参考として、これから変更する入門チュートリアルのワークフローを以下に示します。

timezone: UTC

schedule:
  daily>: 07:00:00

_export:
  td:
    database: workflow_temp

+task1:
  td>: queries/daily_open.sql
  create_table: daily_open

+task2:
  td>: queries/monthly_open.sql
  create_table: monthly_open

ワークフローをそのまま実行する

Treasure Dataのジョブページを開いて、以下のワークフローの実行を追跡できるようにしてください。ここからページにアクセスできます:https://console.treasuredata.com/jobs

nasdaq_analysisディレクトリに移動し、以下のコマンドを実行します。

td wf run --all

以前にワークフローを実行したことがあっても実行できるように、--allを含めてください。Treasure ワークフローは正常に実行されたことを自動的に記憶し、再度実行する必要がないと判断します。この条件を含めることで、この条件を上書きできます。

アカウントに以下のジョブ実行が表示されるはずです。

依存タスクがHiveジョブを実行するように変更する

クエリをHiveで実行するには、追加のパラメータを追加するだけです。+task2のパラメータとしてengine: hiveを追加して、ワークフローファイルを以下のように変更します。

+task2:
  td>: queries/monthly_open.sql
  create_table: monthly_open
  engine: hive

変更したワークフローのクエリを実行する

td wf run --all

TrinoとHiveの追加リソース

参照情報はこちらで確認できます: