Share via


SynapseSparkStep クラス

Note

これは試験段階のクラスであり、いつでも変更される可能性があります。 詳細については、https://aka.ms/azuremlexperimental を参照してください。

Python スクリプトを送信して実行する Azure ML Synapse のステップを作成します。

Synapse Spark プールで Spark ジョブを実行する Azure ML パイプライン ステップを作成します。

継承
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

コンストラクター

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
必須
str

source_directory を基準とした synapse スクリプトの名前。

source_directory
必須
str

ステップで使用される Python スクリプト、conda env、その他のリソースを含むフォルダー。

compute_target
必須
SynapseCompute または str

使用するコンピューティング先。

driver_memory
必須
str

ドライバー プロセスに使用するメモリの量。

driver_cores
必須
int

ドライバー プロセスに使用するコアの数。

executor_memory
必須
str

Executor プロセスごとに使用するメモリの量。

executor_cores
必須
int

Executor ごとに使用するコアの数。

num_executors
必須
int

このセッションで起動する Executor の数。

name
必須
str

ステップの名前。 指定されない場合、file が使用されます。

app_name
必須
str

Spark ジョブを送信するために使用されるアプリ名。

environment
必須

AML 環境は、今後のリリースでサポートされる予定です。

arguments
必須

Synapse スクリプト ファイルのコマンドライン引数。

inputs
必須

入力の一覧。

outputs
必須

出力の一覧。

conf
必須

Spark 構成のプロパティ。

py_files
必須

このセッションで使用される Python ファイル、livy API のパラメーター。

files
必須

このセッションで使用されるファイル、livy API のパラメーター。

allow_reuse
必須

同じ設定で再実行するときに、ステップで前の結果を再利用するかどうかを示します。

version
必須
str

ステップの機能変更を示すオプションのバージョン タグ。

file
必須
str

に対する Synapse スクリプトの名前 source_directory

source_directory
必須
str

ステップで使用される Python スクリプト、conda env、その他のリソースを含むフォルダー。

compute_target
必須
SynapseCompute または str

使用するコンピューティング先。

driver_memory
必須
str

ドライバー プロセスに使用するメモリの量。

driver_cores
必須
int

ドライバー プロセスに使用するコアの数。

executor_memory
必須
str

Executor プロセスごとに使用するメモリの量。

executor_cores
必須
int

Executor ごとに使用するコアの数。

num_executors
必須
int

このセッションで起動する Executor の数。

name
必須
str

ステップの名前。 指定されなかった場合は、file が使用されます。

app_name
必須
str

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
必須
str

ステップの機能変更を示すオプションのバージョン タグ。

注釈

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>

グラフ コンテキスト。

戻り値

説明

作成されたノード。