DatabricksStep Classe
Cria uma etapa de pipeline do Azure ML para adicionar um notebook do DataBricks, um script Python ou um JAR como um nó.
Para ver um exemplo de como usar DatabricksStep, confira o notebook https://aka.ms/pl-databricks.
Crie uma etapa do Pipeline do Azure ML para adicionar um notebook do DataBricks, script Python ou JAR como um nó.
Para ver um exemplo de como usar DatabricksStep, confira o notebook https://aka.ms/pl-databricks.
:p aram python_script_name:[Obrigatório] O nome de um script Python em relação a source_directory
.
Se o script usar entradas e saídas, elas serão passadas para o script como parâmetros.
Se python_script_name
for especificado, source_directory
também deverá ser.
Especifique exatamente um dos notebook_path
, python_script_path
, python_script_name
ou main_class_name
.
Se você especificar um objeto DataReference como entrada com data_reference_name=input1 e um objeto PipelineData como saída com name=output1, as entradas e saídas serão passadas para o script como parâmetros. Elas terão esta aparência e você precisará analisar os argumentos no script para acessar os caminhos de cada entrada e saída: "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1"
Além disso, os seguintes parâmetros estarão disponíveis no script:
- AZUREML_RUN_TOKEN: o token do AML para autenticação com o Azure Machine Learning.
- AZUREML_RUN_TOKEN_EXPIRY: a hora de expiração do token do AML.
- AZUREML_RUN_ID: ID de execução do Azure Machine Learning para esta execução.
- AZUREML_ARM_SUBSCRIPTION: assinatura do Azure para o workspace do AML.
- AZUREML_ARM_RESOURCEGROUP: grupo de recursos do Azure para o workspace do Azure Machine Learning.
- AZUREML_ARM_WORKSPACE_NAME: nome do workspace do Azure Machine Learning.
- AZUREML_ARM_PROJECT_NAME: nome do experimento do Azure Machine Learning.
- AZUREML_SERVICE_ENDPOINT: a URL do ponto de extremidade para serviços do AML.
- AZUREML_WORKSPACE_ID: ID do workspace do Azure Machine Learning.
- AZUREML_EXPERIMENT_ID: ID do experimento do Azure Machine Learning.
- AZUREML_SCRIPT_DIRECTORY_NAME: caminho do diretório no DBFS em que source_directory foi copiado.
(This parameter is only populated when `python_script_name` is used. See more details below.)
Quando você estiver executando um script Python no computador local no Databricks usando os parâmetros DatabricksStep source_directory
e python_script_name
, o source_directory será copiado para o DBFS e o caminho do diretório no DBFS será passado como parâmetro para o script, quando começar a execução.
Esse parâmetro é identificado como – AZUREML_SCRIPT_DIRECTORY_NAME. Você precisa usar o prefixo com a cadeia de caracteres "dbfs:/" ou "/dbfs/" para acessar o diretório no DBFS.
- Herança
-
azureml.pipeline.core._databricks_step_base._DatabricksStepBaseDatabricksStep
Construtor
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)
Parâmetros
Nome | Description |
---|---|
name
Obrigatório
|
[Obrigatório] O nome da etapa. |
inputs
|
Uma lista de conexões de entrada para dados consumidos por esta etapa. Busque isso dentro do notebook usando dbutils.widgets.get("input_name"). Pode ser DataReference ou PipelineData. O DataReference representa uma parte existente dos dados em um armazenamento de dados. Basicamente, esse é um caminho em um armazenamento de dados. O DatabricksStep dá suporte ao armazenamento de dados que encapsula DBFS, blob do Azure ou ADLS v1. O PipelineData representa os dados intermediários produzidos por outra etapa em um pipeline. Valor padrão: None
|
outputs
|
Uma lista das definições de porta de saída para as saídas produzidas por esta etapa. Busque isso dentro do notebook usando dbutils.widgets.get("output_name"). Deve ser PipelineData. Valor padrão: None
|
existing_cluster_id
|
Uma ID do cluster de um cluster interativo existente no workspace do Databricks. Se você estiver passando esse parâmetro, não poderá passar nenhum dos parâmetros a seguir, os quais são usados para criar um novo cluster:
Observação: para criar um novo cluster de trabalho, você precisará passar os parâmetros acima. Você pode passar esses parâmetros diretamente ou pode passá-los como parte do objeto RunConfiguration usando o parâmetro runconfig. Passar esses parâmetros diretamente e por meio do RunConfiguration resulta em um erro. Valor padrão: None
|
spark_version
|
A versão do Spark para o cluster de execução do Databricks, por exemplo: "10.4.x-scala2.12".
Para obter mais informações, confira a descrição do parâmetro Valor padrão: None
|
node_type
|
[Obrigatório] Os tipos de nó de VM do Azure para o cluster de execução do Databricks, por exemplo: "Standard_D3_v2". Especifique Valor padrão: None
|
instance_pool_id
|
[Obrigatório] A ID do pool de instâncias ao qual o cluster precisa ser anexado.
Especifique Valor padrão: None
|
num_workers
|
[Obrigatório] O número estático de trabalhos para o cluster de execução do Databricks.
Você deve especificar Valor padrão: None
|
min_workers
|
[Obrigatório] O número mínimo de trabalhos a serem usados para dimensionamento automático dos clusters de execução do Databricks.
Você deve especificar Valor padrão: None
|
max_workers
|
[Obrigatório] O número máximo de trabalhos a serem usados para dimensionamento automático dos clusters de execução do Databricks.
Você deve especificar Valor padrão: None
|
spark_env_variables
|
As variáveis de ambiente do Spark para o cluster de execução do Databricks.
Para obter mais informações, confira a descrição do parâmetro Valor padrão: None
|
spark_conf
|
A configuração do Spark para o cluster de execução do Databricks.
Para obter mais informações, confira a descrição do parâmetro Valor padrão: None
|
init_scripts
|
[str]
Preterido. O Databricks anunciou que o script de inicialização armazenado no DBFS interromperá o trabalho após 1º de dezembro de 2023. Para atenuar o problema, use scripts de inicialização globais no databricks após https://learn.microsoft.com/azure/databricks/init-scripts/global 2) comente a linha de init_scripts na etapa do databricks do AzureML. Valor padrão: None
|
cluster_log_dbfs_path
|
Os caminhos do DBFS em que os logs de clusters devem ser entregues. Valor padrão: None
|
notebook_path
|
[Obrigatório] O caminho para o notebook na instância do Databricks. Essa classe permite quatro maneiras de especificar o código a ser executado no cluster do Databricks.
Especifique exatamente um dos Valor padrão: None
|
notebook_params
|
Um dicionário de parâmetros a serem passados para o notebook.
Valor padrão: None
|
python_script_path
|
[Obrigatório] O caminho para o script Python no DBFS.
Especifique exatamente um dos Valor padrão: None
|
python_script_params
|
Parâmetros para o script Python. Valor padrão: None
|
main_class_name
|
[Obrigatório] O nome do ponto de entrada em um módulo JAR.
Especifique exatamente um dos Valor padrão: None
|
jar_params
|
Parâmetros para o módulo JAR. Valor padrão: None
|
python_script_name
|
[Obrigatório] O nome de um script Python relativo a Especifique exatamente um dos Se você especificar um objeto DataReference como entrada com data_reference_name=input1 e um objeto PipelineData como saída com name=output1, as entradas e saídas serão passadas para o script como parâmetros. Elas terão esta aparência e você precisará analisar os argumentos no script para acessar os caminhos de cada entrada e saída: "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1" Além disso, os seguintes parâmetros estarão disponíveis no script:
Quando você estiver executando um script Python no computador local no Databricks usando os parâmetros DatabricksStep Valor padrão: None
|
source_directory
|
A pasta que contém o script e outros arquivos.
Se Valor padrão: None
|
hash_paths
|
[str]
PRETERIDO: não é mais necessário. Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não houver alterações detectadas, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o conteúdo de Valor padrão: None
|
run_name
|
O nome no Databricks para esta execução. Valor padrão: None
|
timeout_seconds
|
O tempo limite para a execução do Databricks. Valor padrão: None
|
runconfig
|
O runconfig a ser usado. Observação: você pode passar quantas bibliotecas desejar como dependências para o trabalho usando os seguintes parâmetros: Valor padrão: None
|
maven_libraries
|
As bibliotecas do Maven a serem usadas para a execução do Databricks. Valor padrão: None
|
pypi_libraries
|
As bibliotecas do PyPi a serem usadas para a execução do Databricks. Valor padrão: None
|
egg_libraries
|
As bibliotecas do Egg a serem usadas para a execução do Databricks. Valor padrão: None
|
jar_libraries
|
As bibliotecas do Jar a serem usadas para a execução do Databricks. Valor padrão: None
|
rcran_libraries
|
As bibliotecas do RCran a serem usadas para a execução do Databricks. Valor padrão: None
|
compute_target
|
[Obrigatório] Uma computação do Azure Databricks. Antes de usar o DatabricksStep para executar os scripts ou notebooks em um workspace do Azure Databricks, você precisa adicionar o workspace do Azure Databricks como destino de computação ao workspace do Azure Machine Learning. Valor padrão: None
|
allow_reuse
|
Indica se a etapa deve ou não reutilizar os resultados anteriores quando executada novamente com as mesmas configurações. A reutilização está habilitada por padrão. Se o conteúdo da etapa (scripts/dependências), as entradas e os parâmetros permanecerem inalterados, será reutilizada a saída da execução anterior dessa etapa. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior serão disponibilizados imediatamente para etapas posteriores. Se você usar conjuntos de dados do Azure Machine Learning como entradas, a reutilização será determinada dependendo de ter havido ou não alteração da definição do conjunto de dados, não de ter havido alteração dos dados subjacentes. Valor padrão: True
|
version
|
Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa. Valor padrão: None
|
permit_cluster_restart
|
se existing_cluster_id for especificado, esse parâmetro informará se o cluster pode ser reiniciado em nome do usuário. Valor padrão: None
|
name
Obrigatório
|
[Obrigatório] O nome da etapa. |
inputs
Obrigatório
|
Lista de conexões de entrada para dados consumidos por esta etapa. Busque isso dentro do notebook usando dbutils.widgets.get("input_name"). Pode ser DataReference ou PipelineData. O DataReference representa uma parte existente dos dados em um armazenamento de dados. Basicamente, esse é um caminho em um armazenamento de dados. O DatabricksStep dá suporte a armazenamentos de dados que encapsulam o DBFS, o blob do Azure ou o ADLS v1. O PipelineData representa os dados intermediários produzidos por outra etapa em um pipeline. |
outputs
Obrigatório
|
list[Union[OutputPortBinding, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, PipelineData]]
Uma lista das definições de porta de saída para as saídas produzidas por esta etapa. Busque isso dentro do notebook usando dbutils.widgets.get("output_name"). Deve ser PipelineData. |
existing_cluster_id
Obrigatório
|
Uma ID do cluster de um cluster interativo existente no workspace do Databricks. Se você estiver passando esse parâmetro, não poderá passar nenhum dos parâmetros a seguir, os quais são usados para criar um novo cluster:
Observação: para criar um novo cluster de trabalho, você precisará passar os parâmetros acima. Você pode passar esses parâmetros diretamente ou pode passá-los como parte do objeto RunConfiguration usando o parâmetro runconfig. Passar esses parâmetros diretamente e por meio do RunConfiguration resulta em um erro. |
spark_version
Obrigatório
|
A versão do Spark para o cluster de execução do Databricks, por exemplo: "10.4.x-scala2.12".
Para obter mais informações, confira a descrição do parâmetro |
node_type
Obrigatório
|
[Obrigatório] Os tipos de nó de VM do Azure para o cluster de execução do Databricks, por exemplo: "Standard_D3_v2". Especifique |
instance_pool_id
Obrigatório
|
[Obrigatório] A ID do pool de instâncias ao qual o cluster precisa ser anexado.
Especifique |
num_workers
Obrigatório
|
[Obrigatório] O número estático de trabalhos para o cluster de execução do Databricks.
Você deve especificar Para obter mais informações, confira a descrição do parâmetro |
min_workers
Obrigatório
|
[Obrigatório] O número mínimo de trabalhos a serem usados para dimensionamento automático dos clusters de execução do Databricks.
Você deve especificar Para obter mais informações, confira a descrição do parâmetro |
max_workers
Obrigatório
|
[Obrigatório] O número máximo de trabalhos a serem usados para dimensionamento automático dos clusters de execução do Databricks.
Você deve especificar Para obter mais informações, confira a descrição do parâmetro |
spark_env_variables
Obrigatório
|
As variáveis de ambiente do Spark para o cluster de execução do Databricks.
Para obter mais informações, confira a descrição do parâmetro |
spark_conf
Obrigatório
|
A configuração do Spark para o cluster de execução do Databricks.
Para obter mais informações, confira a descrição do parâmetro |
init_scripts
Obrigatório
|
[str]
Preterido. O Databricks anunciou que o script de inicialização armazenado no DBFS interromperá o trabalho após 1º de dezembro de 2023. Para atenuar o problema, use scripts de inicialização globais no databricks após https://learn.microsoft.com/azure/databricks/init-scripts/global 2) comente a linha de init_scripts na etapa do AzureML databricks. |
cluster_log_dbfs_path
Obrigatório
|
Os caminhos do DBFS em que os logs de clusters devem ser entregues. |
notebook_path
Obrigatório
|
[Obrigatório] O caminho para o notebook na instância do Databricks. Essa classe permite quatro maneiras de especificar o código a ser executado no cluster do Databricks.
Especifique exatamente um dos |
notebook_params
Obrigatório
|
Um dicionário de parâmetros a serem passados para o notebook.
|
python_script_path
Obrigatório
|
[Obrigatório] O caminho para o script Python no DBFS.
Especifique exatamente um dos |
python_script_params
Obrigatório
|
Parâmetros para o script Python. |
main_class_name
Obrigatório
|
[Obrigatório] O nome do ponto de entrada em um módulo JAR.
Especifique exatamente um dos |
jar_params
Obrigatório
|
Parâmetros para o módulo JAR. |
source_directory
Obrigatório
|
A pasta que contém o script e outros arquivos.
Se |
hash_paths
Obrigatório
|
[str]
PRETERIDO: não é mais necessário. Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não houver alterações detectadas, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o conteúdo de |
run_name
Obrigatório
|
O nome no Databricks para esta execução. |
timeout_seconds
Obrigatório
|
O tempo limite para a execução do Databricks. |
runconfig
Obrigatório
|
O runconfig a ser usado. Observação: você pode passar quantas bibliotecas desejar como dependências para o trabalho usando os seguintes parâmetros: |
maven_libraries
Obrigatório
|
list[<xref:azureml.core.runconfig.MavenLibrary>]
As bibliotecas do Maven a serem usadas para a execução do Databricks.
Para obter mais informações sobre a especificação de bibliotecas Maven, consulte |
pypi_libraries
Obrigatório
|
list[<xref:azureml.core.runconfig.PyPiLibrary>]
As bibliotecas do PyPi a serem usadas para a execução do Databricks.
Para obter mais informações sobre a especificação de bibliotecas PyPi, consulte |
egg_libraries
Obrigatório
|
list[<xref:azureml.core.runconfig.EggLibrary>]
As bibliotecas do Egg a serem usadas para a execução do Databricks.
Para obter mais informações sobre a especificação das bibliotecas egg, consulte |
jar_libraries
Obrigatório
|
list[<xref:azureml.core.runconfig.JarLibrary>]
As bibliotecas do Jar a serem usadas para a execução do Databricks.
Para obter mais informações sobre a especificação de bibliotecas Jar, consulte |
rcran_libraries
Obrigatório
|
list[<xref:azureml.core.runconfig.RCranLibrary>]
As bibliotecas do RCran a serem usadas para a execução do Databricks.
Para obter mais informações sobre a especificação de bibliotecas RCran, consulte |
compute_target
Obrigatório
|
[Obrigatório] Computação do Azure Databricks. Antes de usar o DatabricksStep para executar os scripts ou notebooks em um workspace do Azure Databricks, você precisa adicionar o workspace do Azure Databricks como destino de computação ao workspace do Azure Machine Learning. |
allow_reuse
Obrigatório
|
Indica se a etapa deve ou não reutilizar os resultados anteriores quando executada novamente com as mesmas configurações. A reutilização está habilitada por padrão. Se o conteúdo da etapa (scripts/dependências), as entradas e os parâmetros permanecerem inalterados, será reutilizada a saída da execução anterior dessa etapa. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior serão disponibilizados imediatamente para etapas posteriores. Se você usar conjuntos de dados do Azure Machine Learning como entradas, a reutilização será determinada dependendo de ter havido ou não alteração da definição do conjunto de dados, não de ter havido alteração dos dados subjacentes. |
version
Obrigatório
|
Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa. |
permit_cluster_restart
Obrigatório
|
se existing_cluster_id for especificado, esse parâmetro informará se o cluster pode ser reiniciado em nome do usuário. |
Métodos
create_node |
Crie um nó na etapa do Databricks e adicione ao gráfico especificado. Esse método não se destina a ser usado diretamente. Quando um pipeline é instanciado com essa etapa, o Azure ML passa automaticamente os parâmetros necessários por meio desse método para que essa etapa possa ser adicionada a um grafo de pipeline que representa o fluxo de trabalho. |
create_node
Crie um nó na etapa do Databricks e adicione ao gráfico especificado.
Esse método não se destina a ser usado diretamente. Quando um pipeline é instanciado com essa etapa, o Azure ML passa automaticamente os parâmetros necessários por meio desse método para que essa etapa possa ser adicionada a um grafo de pipeline que representa o fluxo de trabalho.
create_node(graph, default_datastore, context)
Parâmetros
Nome | Description |
---|---|
graph
Obrigatório
|
O objeto de grafo ao qual adicionar o nó. |
default_datastore
Obrigatório
|
O armazenamento de dados padrão. |
context
Obrigatório
|
<xref:azureml.pipeline.core._GraphContext>
O contexto do grafo. |
Retornos
Tipo | Description |
---|---|
O nó criado. |