DatabricksStep クラス
DataBricks ノートブック、Python スクリプト、または JAR をノードとして追加するための Azure ML パイプライン ステップが作成されます。
DatabricksStep の使用例については、ノートブック https://aka.ms/pl-databricks を参照してください。
DataBricks ノートブック、Python スクリプト、または JAR をノードとして追加する Azure ML パイプライン ステップを作成します。
DatabricksStep の使用例については、ノートブック https://aka.ms/pl-databricks を参照してください。
:p aram python_script_name:[必須] に関連 source_directory
する Python スクリプトの名前。
スクリプトが入力と出力を受け取る場合、それらがパラメーターとしてスクリプトに渡されます。
python_script_name
が指定されている場合は、source_directory
も必要です。
notebook_path
、python_script_path
、python_script_name
、または main_class_name
のいずれか 1 つのみを指定します。
DataReference オブジェクトを data_reference_name=input1 の入力として指定し、PipelineData オブジェクトを name=output1 の出力として指定した場合、入力と出力はパラメーターとしてスクリプトに渡されます。 これは次のようになります。各入力と出力のパスにアクセスするには、スクリプト内の引数を解析する必要があります: "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1"
さらに、スクリプト内で次のパラメーターを使用できます。
- AZUREML_RUN_TOKEN: Azure Machine Learning を使用して認証を行うための AML トークン。
- AZUREML_RUN_TOKEN_EXPIRY: AML トークンの有効期限。
- AZUREML_RUN_ID: この実行の Azure Machine Learning 実行 ID。
- AZUREML_ARM_SUBSCRIPTION: AML ワークスペースの Azure サブスクリプション。
- AZUREML_ARM_RESOURCEGROUP: Azure Machine Learning ワークスペースの Azure リソース グループ。
- AZUREML_ARM_WORKSPACE_NAME: Azure Machine Learning ワークスペースの名前。
- AZUREML_ARM_PROJECT_NAME: Azure Machine Learning の実験の名前。
- AZUREML_SERVICE_ENDPOINT: AML サービスのエンドポイント URL。
- AZUREML_WORKSPACE_ID: Azure Machine Learning ワークスペースの ID。
- AZUREML_EXPERIMENT_ID: Azure Machine Learning の実験の ID。
- AZUREML_SCRIPT_DIRECTORY_NAME: source_directory がコピーされている DBFS のディレクトリ パス。
(This parameter is only populated when `python_script_name` is used. See more details below.)
DatabricksStep パラメーター source_directory
と python_script_name
を使用して Databricks 上のローカル コンピューターから Python スクリプトを実行すると、source_directory が DBFS にコピーされ、DBFS 上のディレクトリ パスが実行の開始時にパラメーターとしてスクリプトに渡されます。
このパラメーターには、–AZUREML_SCRIPT_DIRECTORY_NAME というラベルが付けられます。 DBFS 内のディレクトリにアクセスするには、先頭に "dbfs:/" または "/dbfs/" という文字列を付ける必要があります。
- 継承
-
azureml.pipeline.core._databricks_step_base._DatabricksStepBaseDatabricksStep
コンストラクター
DatabricksStep(name, inputs=None, outputs=None, existing_cluster_id=None, spark_version=None, node_type=None, instance_pool_id=None, num_workers=None, min_workers=None, max_workers=None, spark_env_variables=None, spark_conf=None, init_scripts=None, cluster_log_dbfs_path=None, notebook_path=None, notebook_params=None, python_script_path=None, python_script_params=None, main_class_name=None, jar_params=None, python_script_name=None, source_directory=None, hash_paths=None, run_name=None, timeout_seconds=None, runconfig=None, maven_libraries=None, pypi_libraries=None, egg_libraries=None, jar_libraries=None, rcran_libraries=None, compute_target=None, allow_reuse=True, version=None, permit_cluster_restart=None)
パラメーター
名前 | 説明 |
---|---|
name
必須
|
[必須] ステップの名前。 |
inputs
|
このステップで使用されるデータの入力接続の一覧。 dbutils.widgets.get("input_name") を使用してノートブック内でこれをフェッチします。 DataReference または PipelineData を指定できます。 DataReference は、データストア上の既存のデータを表します。 基本的に、これはデータストアのパスです。 DatabricksStep では、DBFS、Azure BLOB、または ADLS v1 をカプセル化するデータストアがサポートされています。 PipelineData は、パイプライン内の別のステップによって生成された中間データを表します。 規定値: None
|
outputs
|
このステップで生成される出力の出力ポート定義の一覧。 dbutils.widgets.get("output_name") を使用してノートブック内でこれをフェッチします。 PipelineData である必要があります。 規定値: None
|
existing_cluster_id
|
Databricks ワークスペース上の既存の対話型クラスターのクラスター ID。 このパラメーターを渡す場合、新しいクラスターの作成に使用される次のパラメーターを渡すことはできません。
注: 新しいジョブ クラスターを作成するには、上記のパラメーターを渡す必要があります。 これらのパラメーターを直接渡したり、runconfig パラメーターを使用して RunConfiguration オブジェクトの一部として渡したりすることもできます。 これらのパラメーターを直接、および RunConfiguration を介して渡した場合、エラーが発生します。 規定値: None
|
spark_version
|
Databricks の spark のバージョンは、クラスターを実行します (例: "10.4.x-scala2.12")。
詳細については、 規定値: None
|
node_type
|
[必須] Databricks 実行クラスターの Azure VM ノード タイプ (例: "Standard_D3_v2")。
規定値: None
|
instance_pool_id
|
[必須] クラスターをアタッチする必要があるインスタンス プール ID。
規定値: None
|
num_workers
|
[必須] Databricks 実行クラスターのワーカーの静的な数。
規定値: None
|
min_workers
|
[必須] Databricks 実行クラスターの自動スケーリングに使用するワーカーの最小数。
規定値: None
|
max_workers
|
[必須] Databricks 実行クラスターの自動スケーリングに使用するワーカーの最大数。
規定値: None
|
spark_env_variables
|
Databricks 実行クラスターの Spark の環境変数。
詳細については、 規定値: None
|
spark_conf
|
Databricks 実行クラスターの Spark の構成。
詳細については、 規定値: None
|
init_scripts
|
[str]
非推奨になりました。 Databricks は、DBFS に格納されている init スクリプトが 2023 年 12 月 1 日以降に動作を停止すると発表しました。 この問題を軽減するには、1) 2) AzureML databricks ステップのinit_scripts行をコメントアウトして、databricks https://video2.skills-academy.com/azure/databricks/init-scripts/global でグローバル init スクリプトを使用してください。 規定値: None
|
cluster_log_dbfs_path
|
クラスター ログが配信される DBFS のパス。 規定値: None
|
notebook_path
|
[必須] Databricks インスタンス内のノートブックのパス。 このクラスでは、Databricks クラスターで実行するコードを 4 つの方法で指定できます。
規定値: None
|
notebook_params
|
ノートブックに渡すパラメーターのディクショナリ。
規定値: None
|
python_script_path
|
[必須] DBFS 内の Python スクリプトのパス。
規定値: None
|
python_script_params
|
Python スクリプトのパラメーター。 規定値: None
|
main_class_name
|
[必須] JAR モジュール内のエントリ ポイントの名前。
規定値: None
|
jar_params
|
JAR モジュールのパラメーター。 規定値: None
|
python_script_name
|
[必須]
DataReference オブジェクトを data_reference_name=input1 の入力として指定し、PipelineData オブジェクトを name=output1 の出力として指定した場合、入力と出力はパラメーターとしてスクリプトに渡されます。 これは次のようになります。各入力と出力のパスにアクセスするには、スクリプト内の引数を解析する必要があります: "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1" さらに、スクリプト内で次のパラメーターを使用できます。
DatabricksStep パラメーター 規定値: None
|
source_directory
|
スクリプトやその他のファイルを格納するフォルダー。
規定値: None
|
hash_paths
|
[str]
非推奨: 不要になりました。 ステップの内容の変更を確認するときにハッシュするパスのリスト。 変更が検出されない場合、パイプラインは以前の実行のステップの内容を再利用します。 既定では、 規定値: None
|
run_name
|
この実行の Databricks 内の名前。 規定値: None
|
timeout_seconds
|
Databricks の実行のタイムアウト。 規定値: None
|
runconfig
|
使用する runconfig。 注: 規定値: None
|
maven_libraries
|
Databricks の実行に使用する Maven ライブラリ。 規定値: None
|
pypi_libraries
|
Databricks の実行に使用する PyPi ライブラリ。 規定値: None
|
egg_libraries
|
Databricks の実行に使用する Egg ライブラリ。 規定値: None
|
jar_libraries
|
Databricks の実行に使用する Jar ライブラリ。 規定値: None
|
rcran_libraries
|
Databricks の実行に使用する RCran ライブラリ。 規定値: None
|
compute_target
|
[必須] Azure Databricks コンピューティング。 DatabricksStep を使用して Azure Databricks ワークスペースでスクリプトまたはノートブックを実行する前に、Azure Databricks ワークスペースをコンピューティング先として Azure Machine Learning ワークスペースに追加する必要があります。 規定値: None
|
allow_reuse
|
同じ設定で再実行されたときに、ステップで前の結果を再利用するかどうかを示します。 再利用は既定で有効になっています。 ステップの内容 (スクリプトや依存関係) だけでなく、入力とパラメーターも変更されていない場合は、このステップの前の実行からの出力が再利用されます。 ステップを再利用する場合、計算するジョブを送信する代わりに、前の実行の結果を後続のステップですぐに利用できるようにします。 Azure Machine Learning データセットを入力として使用する場合、再利用は、基になるデータが変更されたかどうかではなく、データセットの定義が変更されたかどうかによって決まります。 規定値: True
|
version
|
ステップの機能変更を示すオプションのバージョン タグ。 規定値: None
|
permit_cluster_restart
|
existing_cluster_id が指定されている場合、このパラメーターは、ユーザーの代わりにクラスターを再起動できるかどうかを示します。 規定値: None
|
name
必須
|
[必須] ステップの名前。 |
inputs
必須
|
この手順で使用されるデータの入力接続の一覧。 dbutils.widgets.get("input_name") を使用してノートブック内でこれをフェッチします。 DataReference または PipelineData を指定できます。 DataReference は、データストア上の既存のデータを表します。 基本的に、これはデータストアのパスです。 DatabricksStep では、DBFS、Azure BLOB、または ADLS v1 をカプセル化するデータストアがサポートされています。 PipelineData は、パイプライン内の別のステップによって生成された中間データを表します。 |
outputs
必須
|
list[Union[OutputPortBinding, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, PipelineData]]
このステップで生成される出力の出力ポート定義の一覧。 dbutils.widgets.get("output_name") を使用してノートブック内でこれをフェッチします。 PipelineData である必要があります。 |
existing_cluster_id
必須
|
Databricks ワークスペース上の既存の対話型クラスターのクラスター ID。 このパラメーターを渡す場合、新しいクラスターの作成に使用される次のパラメーターを渡すことはできません。
注: 新しいジョブ クラスターを作成するには、上記のパラメーターを渡す必要があります。 これらのパラメーターを直接渡したり、runconfig パラメーターを使用して RunConfiguration オブジェクトの一部として渡したりすることもできます。 これらのパラメーターを直接、および RunConfiguration を介して渡した場合、エラーが発生します。 |
spark_version
必須
|
Databricks 実行クラスターの spark のバージョン (例: "10.4.x-scala2.12")。
詳細については、 |
node_type
必須
|
[必須] Databricks 実行クラスターの Azure VM ノード タイプ (例: "Standard_D3_v2")。
|
instance_pool_id
必須
|
[必須] クラスターをアタッチする必要があるインスタンス プール ID。
|
num_workers
必須
|
[必須] Databricks 実行クラスターのワーカーの静的な数。
詳細については、 |
min_workers
必須
|
[必須] Databricks 実行クラスターの自動スケーリングに使用するワーカーの最小数。
詳細については、 |
max_workers
必須
|
[必須] Databricks 実行クラスターの自動スケーリングに使用するワーカーの最大数。
詳細については、 |
spark_env_variables
必須
|
Databricks 実行クラスターの Spark の環境変数。
詳細については、 |
spark_conf
必須
|
Databricks 実行クラスターの Spark の構成。
詳細については、 |
init_scripts
必須
|
[str]
非推奨になりました。 Databricks は、DBFS に格納されている init スクリプトが 2023 年 12 月 1 日以降に動作を停止すると発表しました。 この問題を軽減するには、1) 2) AzureML databricks ステップのinit_scripts行をコメントアウトして、databricks https://video2.skills-academy.com/azure/databricks/init-scripts/global でグローバル init スクリプトを使用してください。 |
cluster_log_dbfs_path
必須
|
クラスター ログが配信される DBFS のパス。 |
notebook_path
必須
|
[必須] Databricks インスタンス内のノートブックのパス。 このクラスでは、Databricks クラスターで実行するコードを 4 つの方法で指定できます。
|
notebook_params
必須
|
ノートブックに渡すパラメーターのディクショナリ。
|
python_script_path
必須
|
[必須] DBFS 内の Python スクリプトのパス。
|
python_script_params
必須
|
Python スクリプトのパラメーター。 |
main_class_name
必須
|
[必須] JAR モジュール内のエントリ ポイントの名前。
|
jar_params
必須
|
JAR モジュールのパラメーター。 |
source_directory
必須
|
スクリプトやその他のファイルを格納するフォルダー。
|
hash_paths
必須
|
[str]
非推奨: 不要になりました。 ステップの内容の変更を確認するときにハッシュするパスのリスト。 変更が検出されない場合、パイプラインは以前の実行のステップの内容を再利用します。 既定では、 |
run_name
必須
|
この実行の Databricks 内の名前。 |
timeout_seconds
必須
|
Databricks の実行のタイムアウト。 |
runconfig
必須
|
使用する runconfig。 注: |
maven_libraries
必須
|
list[<xref:azureml.core.runconfig.MavenLibrary>]
Databricks の実行に使用する Maven ライブラリ。
Maven ライブラリの仕様の詳細については、「」を参照してください |
pypi_libraries
必須
|
list[<xref:azureml.core.runconfig.PyPiLibrary>]
Databricks の実行に使用する PyPi ライブラリ。
PyPi ライブラリの仕様の詳細については、「」を参照してください |
egg_libraries
必須
|
list[<xref:azureml.core.runconfig.EggLibrary>]
Databricks の実行に使用する Egg ライブラリ。
Egg ライブラリの仕様の詳細については、「」を参照してください |
jar_libraries
必須
|
list[<xref:azureml.core.runconfig.JarLibrary>]
Databricks の実行に使用する Jar ライブラリ。
Jar ライブラリの仕様の詳細については、「」を参照してください |
rcran_libraries
必須
|
list[<xref:azureml.core.runconfig.RCranLibrary>]
Databricks の実行に使用する RCran ライブラリ。
RCran ライブラリの仕様の詳細については、「」を参照してください |
compute_target
必須
|
[必須]Azure Databricks コンピューティング。 DatabricksStep を使用して Azure Databricks ワークスペースでスクリプトまたはノートブックを実行する前に、Azure Databricks ワークスペースをコンピューティング先として Azure Machine Learning ワークスペースに追加する必要があります。 |
allow_reuse
必須
|
同じ設定で再実行されたときに、ステップで前の結果を再利用するかどうかを示します。 再利用は既定で有効になっています。 ステップの内容 (スクリプトや依存関係) だけでなく、入力とパラメーターも変更されていない場合は、このステップの前の実行からの出力が再利用されます。 ステップを再利用する場合、計算するジョブを送信する代わりに、前の実行の結果を後続のステップですぐに利用できるようにします。 Azure Machine Learning データセットを入力として使用する場合、再利用は、基になるデータが変更されたかどうかではなく、データセットの定義が変更されたかどうかによって決まります。 |
version
必須
|
ステップの機能変更を示すオプションのバージョン タグ。 |
permit_cluster_restart
必須
|
existing_cluster_id が指定されている場合、このパラメーターは、ユーザーの代わりにクラスターを再起動できるかどうかを示します。 |
メソッド
create_node |
Databricks ステップからノードを作成し、指定したグラフに追加します。 このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。 |
create_node
Databricks ステップからノードを作成し、指定したグラフに追加します。
このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。
create_node(graph, default_datastore, context)
パラメーター
名前 | 説明 |
---|---|
graph
必須
|
ノードを追加するグラフ オブジェクト。 |
default_datastore
必須
|
既定のデータストア。 |
context
必須
|
<xref:azureml.pipeline.core._GraphContext>
グラフ コンテキスト。 |
戻り値
型 | 説明 |
---|---|
作成されたノード。 |