SynapseSparkStep クラス
Note
これは試験段階のクラスであり、いつでも変更される可能性があります。 詳細については、https://aka.ms/azuremlexperimental を参照してください。
Python スクリプトを送信して実行する Azure ML Synapse のステップを作成します。
Synapse Spark プールで Spark ジョブを実行する Azure ML パイプライン ステップを作成します。
- 継承
-
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBaseSynapseSparkStep
コンストラクター
SynapseSparkStep(file, source_directory, compute_target, driver_memory, driver_cores, executor_memory, executor_cores, num_executors, name=None, app_name=None, environment=None, arguments=None, inputs=None, outputs=None, conf=None, py_files=None, jars=None, files=None, allow_reuse=True, version=None)
パラメーター
名前 | 説明 |
---|---|
file
必須
|
source_directory を基準とした synapse スクリプトの名前。 |
source_directory
必須
|
ステップで使用される Python スクリプト、conda env、その他のリソースを含むフォルダー。 |
compute_target
必須
|
SynapseCompute または
str
使用するコンピューティング先。 |
driver_memory
必須
|
ドライバー プロセスに使用するメモリの量。 |
driver_cores
必須
|
ドライバー プロセスに使用するコアの数。 |
executor_memory
必須
|
Executor プロセスごとに使用するメモリの量。 |
executor_cores
必須
|
Executor ごとに使用するコアの数。 |
num_executors
必須
|
このセッションで起動する Executor の数。 |
name
必須
|
ステップの名前。 指定されない場合、 |
app_name
必須
|
Spark ジョブを送信するために使用されるアプリ名。 |
environment
必須
|
AML 環境は、今後のリリースでサポートされる予定です。 |
arguments
必須
|
Synapse スクリプト ファイルのコマンドライン引数。 |
inputs
必須
|
入力の一覧。 |
outputs
必須
|
出力の一覧。 |
conf
必須
|
Spark 構成のプロパティ。 |
py_files
必須
|
このセッションで使用される Python ファイル、livy API のパラメーター。 |
files
必須
|
このセッションで使用されるファイル、livy API のパラメーター。 |
allow_reuse
必須
|
同じ設定で再実行するときに、ステップで前の結果を再利用するかどうかを示します。 |
version
必須
|
ステップの機能変更を示すオプションのバージョン タグ。 |
file
必須
|
に対する Synapse スクリプトの名前 |
source_directory
必須
|
ステップで使用される Python スクリプト、conda env、その他のリソースを含むフォルダー。 |
compute_target
必須
|
SynapseCompute または
str
使用するコンピューティング先。 |
driver_memory
必須
|
ドライバー プロセスに使用するメモリの量。 |
driver_cores
必須
|
ドライバー プロセスに使用するコアの数。 |
executor_memory
必須
|
Executor プロセスごとに使用するメモリの量。 |
executor_cores
必須
|
Executor ごとに使用するコアの数。 |
num_executors
必須
|
このセッションで起動する Executor の数。 |
name
必須
|
ステップの名前。 指定されなかった場合は、 |
app_name
必須
|
Apache Spark ジョブの送信に使用されるアプリ名。 |
environment
必須
|
この SynapseSparkStep で利用される AML 環境。 |
arguments
必須
|
Synapse スクリプト ファイルのコマンドライン引数。 |
inputs
必須
|
入力の一覧。 |
outputs
必須
|
出力の一覧。 |
conf
必須
|
Spark 構成のプロパティ。 |
py_files
必須
|
このセッションで使用される Python ファイル、livy API のパラメーター。 |
jars
必須
|
このセッションで使用する Jar ファイル(livy API のパラメーター)。 |
files
必須
|
このセッションで使用されるファイル、livy API のパラメーター。 |
allow_reuse
必須
|
同じ設定で再実行するときに、ステップで前の結果を再利用するかどうかを示します。 |
version
必須
|
ステップの機能変更を示すオプションのバージョン タグ。 |
注釈
SynapseSparkStep は、synapse spark プールで Python Spark ジョブを実行するための、事前構築された基本的なステップです。 これは、メイン ファイル名と、その他の省略可能なパラメーター (スクリプト、コンピューティング先、入力、出力の引数など) を受け取ります。
SynapseSparkStep を使用する場合のベスト プラクティスは、スクリプトと、そのステップに関連付けられている依存ファイル用に別のフォルダーを使用し、source_directory
パラメーターでそのフォルダーを指定することです。
このベスト プラクティスに従うと、2 つの利点があります。 まず、ステップに必要なものだけがスナップショットされるため、ステップに対して作成されるスナップショットのサイズを小さくするのに役立ちます。 次に、スナップショットの再アップロードをトリガーする source_directory
に変更がない場合は、以前の実行からのステップの出力を再利用できます。
from azureml.core import Dataset
from azureml.pipeline.steps import SynapseSparkStep
from azureml.data import HDFSOutputDatasetConfig
# get input dataset
input_ds = Dataset.get_by_name(workspace, "weather_ds").as_named_input("weather_ds")
# register pipeline output as dataset
output_ds = HDFSOutputDatasetConfig("synapse_step_output",
destination=(ws.datastores['datastore'],"dir")
).register_on_complete(name="registered_dataset")
step_1 = SynapseSparkStep(
name = "synapse_step",
file = "pyspark_job.py",
source_directory="./script",
inputs=[input_ds],
outputs=[output_ds],
compute_target = "synapse",
driver_memory = "7g",
driver_cores = 4,
executor_memory = "7g",
executor_cores = 2,
num_executors = 1,
conf = {})
SynapseSparkStep は、入力として DatasetConsumptionConfig、出力として HDFSOutputDatasetConfig のみをサポートします。
メソッド
create_node |
Synapse スクリプト ステップのノードを作成します。 このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。 |
create_node
Synapse スクリプト ステップのノードを作成します。
このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。
create_node(graph, default_datastore, context)
パラメーター
名前 | 説明 |
---|---|
graph
必須
|
ノードを追加するグラフ オブジェクト。 |
default_datastore
必須
|
既定のデータストア。 |
context
必須
|
<xref:azureml.pipeline.core._GraphContext>
グラフ コンテキスト。 |
戻り値
型 | 説明 |
---|---|
作成されたノード。 |