Custom Scriptsを使用すると、Treasure ワークフロー内で隔離されたDockerコンテナ上でPythonスクリプトを実行でき、カスタムロジックの柔軟性が向上します。一般的な用途には以下が含まれます:
- データコネクタやその他のインテグレーションの機能を拡張する。
- Pythonで効率的なデータ操作および処理ロジックを作成し、ワークフローから呼び出す。
- 定期的にスケジュールされたTreasure ワークフローの一部としてPythonモデルを実行することで、データサイエンス作業を本番化する。
- データ管理を1つの環境に統合する。Treasure ワークフローを使用して複数のデータ環境を接続する。
ワークフロー定義でpy>演算子を使用してDockerイメージを指定します:
+py_custom_code:
py>: tasks.printMessage
docker:
image: "treasuredata/customscript-python:3.12.11-td2"このタスクは、指定されたDockerイメージを起動し、tasks PythonモジュールのprintMessage関数を実行します。
各Dockerイメージには、特定のPythonバージョンとプリインストール済みライブラリが含まれています。必要に応じて追加のライブラリをインストールすることもできます。
- Python 3.12
- Python 3.10
- Python 3.9
現在、Treasure ワークフローは以下のDockerイメージをサポートしています:
- treasuredata/customscript-python:3.12.11-td2 [現在の安定版]
- digdag/digdag-python:3.10.18-td0
- digdag/digdag-python:3.10.1 (3.10) [非推奨]
- digdag/digdag-python:3.9.22-td2
- digdag/digdag-python:3.9.2 [非推奨]
- digdag/digdag-python:3.9.1 (3.9) [非推奨]
上記のイメージの一部は、非推奨のバージョニングスキーム(3.9、3.9.1、3.9.2など)を使用しており、セキュリティ上の脆弱性が含まれています。セキュリティ修正を含む現在のバージョニングスキーム(3.12.11-td2など)のイメージの使用を推奨します。
バージョニングポリシーの詳細については、Dockerイメージバージョニングポリシーを参照してください。
インストール済みライブラリの完全なリストについては、Custom Scripts Dockerイメージを参照してください。
ワークフローにCustom Scriptを追加する方法については、ワークフローへのカスタムPythonスクリプトの追加を参照してください。