Skip to content
Last updated

Pythonカスタムスクリプトの例

Pythonスクリプトは、Pythonオペレーターpy>を使用してTD WorkflowまたはDigdagから実行できます。TDコンソールまたはコマンドラインからTD用のワークフローを作成できます。

ワークフローでPythonスクリプトを実行するには、Dockerイメージを指定する必要があります。ワークフロータスクが開始されると、指定されたDockerイメージに基づいて新しいDockerコンテナが作成されます。Dockerにより、Pythonスクリプトはコンテナ内の分離された環境で実行できます。

このチュートリアルの実行には約30分かかり、PythonやDockerイメージの経験は必要ありません。

前提条件

  • この機能がTDアカウントで有効になっていることを確認してください。

  • TD ToolbeltとTD Toolbelt Workflowモジュールをダウンロードしてインストールします。詳細については、Treasure Workflowの使用を参照してください。

  • Python 3.9。Pythonコードはこれらのバージョンと互換性がある必要があります。

  • Treasure Workflow構文の基本的な知識

サードパーティPythonライブラリ

TD Workflows内のPythonスクリプトは、Treasure Dataによって分離されたDockerコンテナで管理および実行されます。Treasure Dataは、コンテナで実行するための多数のベースDockerイメージを提供しています。

import os
import sys

os.system(f"{sys.executable} -m pip install tensorflow")

import tensorflow

サードパーティPythonライブラリは、pip installコマンドを使用してPythonスクリプトからインストールできます。

Python 3.9と互換性のあるDockerイメージの場合:

  1. Pythonスクリプト内からライブラリを追加するには、以下を使用します:
pip install ${package_name}

Pythonの例

以下のような基本的なを参照してください:

  • 関数の呼び出し方法

  • 関数へのパラメータの渡し方

  • 環境変数の使用方法

  • 関数のインポート方法

Treasure Dataからのデータの読み書き

この例では、Treasure Data内のデータをDataframeに読み込み、データを操作し、テーブルとしてTreasure Dataに書き戻す方法を示しています。

  1. リポジトリ全体をコピーまたはクローンできます。

  2. treasure-boxes/integration-box/python/simple.digに移動します。

  3. コマンドラインからlsと入力して、正しいディレクトリにいることを確認します。以下が表示されるはずです: README.md other_scripts scripts simple.dig

  4. 以下を入力して、サンプルをTD環境にプッシュします:

td wf push simple-example

これにより、simple.digワークフローが実行され、simple-exampleがTDにアップロードされます。

サンプルがTDに追加されたことを確認するには:

  1. TDコンソールを開きます。

  2. Workflowsに移動します。

  3. simpleを検索します。

  4. simpleワークフローをダブルクリックしてエディターを開きます。例:

ワークフローを実行するには

  1. New Runを選択します。

またはコマンドラインからサンプルを実行するには

  1. 以下を入力します: td wf start simple-example simple --session now

ワークフロージョブの実行を検証するには

  1. TDコンソールから、ワークフローエディターに移動します。

  2. Run Historyを選択します。

  1. ジョブのインスタンスが複数ある場合は、1つを選択してジョブ履歴を開きます。ここから、ジョブが実行された時間、監査ログ、およびジョブに関するその他の有用な診断情報を表示できます。