DatabricksStep Classe
Cria uma etapa do Pipeline do Azure ML para adicionar um bloco de anotações DataBricks, script Python ou JAR como um nó.
Para obter um exemplo de como usar DatabricksStep, consulte o bloco de anotações https://aka.ms/pl-databricks.
Crie uma etapa do Pipeline do Azure ML para adicionar um bloco de anotações DataBricks, script Python ou JAR como um nó.
Para obter um exemplo de como usar DatabricksStep, consulte o bloco de anotações https://aka.ms/pl-databricks.
:p aram python_script_name:[Required] O nome de um script Python relativo a source_directory.
Se o script tiver entradas e saídas, elas serão passadas para o script como parâmetros.
Se python_script_name é especificado, então source_directory deve ser também.
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. É assim que eles ficarão e você precisará analisar os argumentos em seu 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 dentro do script:
- AZUREML_RUN_TOKEN: O token AML para autenticação com o Azure Machine Learning.
- AZUREML_RUN_TOKEN_EXPIRY: O tempo de expiração do token AML.
- AZUREML_RUN_ID: ID de Execução do Azure Machine Learning para esta execução.
- AZUREML_ARM_SUBSCRIPTION: Subscrição do Azure para a sua área de trabalho AML.
- AZUREML_ARM_RESOURCEGROUP: Grupo de recursos do Azure para seu espaço de trabalho do Azure Machine Learning.
- AZUREML_ARM_WORKSPACE_NAME: Nome do seu espaço de trabalho do Azure Machine Learning.
- AZUREML_ARM_PROJECT_NAME: Nome da sua experiência do Azure Machine Learning.
- AZUREML_SERVICE_ENDPOINT: A URL do ponto de extremidade para serviços AML.
- AZUREML_WORKSPACE_ID: ID do seu espaço de trabalho do Azure Machine Learning.
- AZUREML_EXPERIMENT_ID: ID do seu experimento do Azure Machine Learning.
- AZUREML_SCRIPT_DIRECTORY_NAME: Caminho do diretório no DBFS onde source_directory foi copiado.
(This parameter is only populated when `python_script_name` is used. See more details below.)
Quando você está executando um script Python de sua máquina local no Databricks usando parâmetros source_directory DatabricksStep e python_script_name, seu source_directory é copiado para DBFS e o caminho do diretório no DBFS é passado como um parâmetro para o script quando ele começa a execução.
Este parâmetro é rotulado como –AZUREML_SCRIPT_DIRECTORY_NAME. Você precisa prefixá-lo com a string "dbfs:/" ou "/dbfs/" para acessar o diretório no DBFS.
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
| Name | Description |
|---|---|
|
name
Necessário
|
[Obrigatório] O nome da etapa. |
|
inputs
|
Uma lista de conexões de entrada para dados consumidos por esta etapa. Obtenha-o dentro do bloco de anotações usando dbutils.widgets.get("input_name"). Pode ser DataReference ou PipelineData. DataReference representa uma parte de dados existente em um armazenamento de dados. Essencialmente, este é um caminho em um armazenamento de dados. O DatabricksStep dá suporte a armazenamentos de dados que encapsulam DBFS, blob do Azure ou ADLS v1. PipelineData representa dados intermediários produzidos por outra etapa de um pipeline. Default value: None
|
|
outputs
|
Uma lista de definições de porta de saída para saídas produzidas por esta etapa. Obtenha-o dentro do bloco de anotações usando dbutils.widgets.get("output_name"). Deve ser PipelineData. Default value: None
|
|
existing_cluster_id
|
Uma ID de cluster de um cluster interativo existente no espaço de trabalho Databricks. Se você estiver passando esse parâmetro, não poderá passar nenhum dos seguintes parâmetros que são usados para criar um novo cluster:
Nota: Para criar um novo cluster de trabalhos, 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 através de RunConfiguration resulta em um erro. Default value: None
|
|
spark_version
|
A versão do spark para o cluster de execução Databricks, por exemplo: "10.4.x-scala2.12".
Para obter mais informações, consulte a descrição do Default value: None
|
|
node_type
|
[Obrigatório] Os tipos de nó da VM do Azure para o cluster de execução Databricks, por exemplo: "Standard_D3_v2". Especifique um ou Default value: None
|
|
instance_pool_id
|
[Obrigatório] O ID do pool de instâncias ao qual o cluster precisa ser anexado.
Especifique um ou Default value: None
|
|
num_workers
|
[Obrigatório] O número estático de trabalhadores para o cluster de execução Databricks.
Você deve especificar um Default value: None
|
|
min_workers
|
[Obrigatório] O número mínimo de trabalhadores a serem usados para dimensionar automaticamente o cluster de execução do Databricks.
Você deve especificar um Default value: None
|
|
max_workers
|
[Obrigatório] O número máximo de trabalhadores a serem usados para dimensionar automaticamente o cluster de execução do Databricks.
Você deve especificar um Default value: None
|
|
spark_env_variables
|
As variáveis de ambiente de faísca para o cluster de execução Databricks.
Para obter mais informações, consulte a descrição do Default value: None
|
|
spark_conf
|
A configuração de faísca para o cluster de execução do Databricks.
Para obter mais informações, consulte a descrição do Default value: None
|
|
init_scripts
|
[str]
Preterido. A Databricks anunciou que o script init armazenado no DBFS deixará de funcionar após 1º de dezembro de 2023. Para mitigar o problema, 1) use scripts de inicialização global em databricks após https://learn.microsoft.com/azure/databricks/init-scripts/global 2) comente a linha de init_scripts em sua etapa de databricks do AzureML. Default value: None
|
|
cluster_log_dbfs_path
|
Os caminhos DBFS onde os logs de clusters devem ser entregues. Default value: None
|
|
notebook_path
|
[Obrigatório] O caminho para o bloco de anotações na instância do Databricks. Essa classe permite quatro maneiras de especificar o código a ser executado no cluster Databricks.
Especifique exatamente um dos Default value: None
|
|
notebook_params
|
Um dicionário de parâmetros para passar para o caderno.
Default value: None
|
|
python_script_path
|
[Obrigatório] O caminho para o script python no DBFS.
Especifique exatamente um dos Default value: None
|
|
python_script_params
|
Parâmetros para o script Python. Default value: None
|
|
main_class_name
|
[Obrigatório] O nome do ponto de entrada em um módulo JAR.
Especifique exatamente um dos Default value: None
|
|
jar_params
|
Parâmetros para o módulo JAR. Default value: 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. É assim que eles ficarão e você precisará analisar os argumentos em seu 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 dentro do script:
Quando você está executando um script Python de sua máquina local no Databricks usando parâmetros Default value: None
|
|
source_directory
|
A pasta que contém o script e outros arquivos.
Se Default value: None
|
|
hash_paths
|
[str]
DEPRECATED: não é mais necessário. Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não forem detetadas alterações, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o conteúdo do Default value: None
|
|
run_name
|
O nome no Databricks para esta execução. Default value: None
|
|
timeout_seconds
|
O tempo limite para a execução do Databricks. Default value: None
|
|
runconfig
|
O runconfig a ser usado. Nota: Você pode passar quantas bibliotecas quiser como dependências para seu trabalho usando os seguintes parâmetros: Default value: None
|
|
maven_libraries
|
Bibliotecas Maven para usar na execução do Databricks. Default value: None
|
|
pypi_libraries
|
Bibliotecas PyPi para usar na execução do Databricks. Default value: None
|
|
egg_libraries
|
Bibliotecas de ovos a serem usadas para a execução do Databricks. Default value: None
|
|
jar_libraries
|
Bibliotecas Jar para usar para a execução do Databricks. Default value: None
|
|
rcran_libraries
|
Bibliotecas RCran para usar na execução do Databricks. Default value: None
|
|
compute_target
|
[Obrigatório] Uma computação do Azure Databricks. Antes de poder usar o DatabricksStep para executar seus scripts ou blocos de anotações em um espaço de trabalho do Azure Databricks, você precisa adicionar o espaço de trabalho do Azure Databricks como um destino de computação ao seu espaço de trabalho do Azure Machine Learning. Default value: None
|
|
allow_reuse
|
Indica se a etapa deve reutilizar os resultados anteriores ao ser executada novamente com as mesmas configurações. A reutilização está ativada por predefinição. Se o conteúdo da etapa (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, a saída da execução anterior desta etapa será reutilizada. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer etapas subsequentes. Se você usar conjuntos de dados do Aprendizado de Máquina do Azure como entradas, a reutilização será determinada se a definição do conjunto de dados foi alterada, não se os dados subjacentes foram alterados. Default value: True
|
|
version
|
Uma tag de versão opcional para indicar uma alteração na funcionalidade da etapa. Default value: 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. Default value: None
|
|
name
Necessário
|
[Obrigatório] O nome da etapa. |
|
inputs
Necessário
|
Lista de conexões de entrada para dados consumidos por esta etapa. Obtenha-o dentro do bloco de anotações usando dbutils.widgets.get("input_name"). Pode ser DataReference ou PipelineData. DataReference representa uma parte de dados existente em um armazenamento de dados. Essencialmente, este é um caminho em um armazenamento de dados. O DatabricksStep suporta armazenamentos de dados que encapsulam DBFS, Azure blob ou ADLS v1. PipelineData representa dados intermediários produzidos por outra etapa de um pipeline. |
|
outputs
Necessário
|
list[Union[OutputPortBinding, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, PipelineData]]
Uma lista de definições de porta de saída para saídas produzidas por esta etapa. Obtenha-o dentro do bloco de anotações usando dbutils.widgets.get("output_name"). Deve ser PipelineData. |
|
existing_cluster_id
Necessário
|
Uma ID de cluster de um cluster interativo existente no espaço de trabalho Databricks. Se você estiver passando esse parâmetro, não poderá passar nenhum dos seguintes parâmetros que são usados para criar um novo cluster:
Nota: Para criar um novo cluster de trabalhos, 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 através de RunConfiguration resulta em um erro. |
|
spark_version
Necessário
|
A versão do spark para o cluster de execução Databricks, por exemplo: "10.4.x-scala2.12".
Para obter mais informações, consulte a descrição do |
|
node_type
Necessário
|
[Obrigatório] Os tipos de nó da VM do Azure para o cluster de execução Databricks, por exemplo: "Standard_D3_v2". Especifique um ou |
|
instance_pool_id
Necessário
|
[Obrigatório] O ID do pool de instâncias ao qual o cluster precisa ser anexado.
Especifique um ou |
|
num_workers
Necessário
|
[Obrigatório] O número estático de trabalhadores para o cluster de execução Databricks.
Você deve especificar um Para obter mais informações, consulte a descrição do |
|
min_workers
Necessário
|
[Obrigatório] O número mínimo de trabalhadores a serem usados para dimensionar automaticamente o cluster de execução do Databricks.
Você deve especificar um Para obter mais informações, consulte a descrição do |
|
max_workers
Necessário
|
[Obrigatório] O número máximo de trabalhadores a serem usados para dimensionar automaticamente o cluster de execução do Databricks.
Você deve especificar um Para obter mais informações, consulte a descrição do |
|
spark_env_variables
Necessário
|
As variáveis de ambiente de faísca para o cluster de execução Databricks.
Para obter mais informações, consulte a descrição do |
|
spark_conf
Necessário
|
A configuração de faísca para o cluster de execução do Databricks.
Para obter mais informações, consulte a descrição do |
|
init_scripts
Necessário
|
[str]
Preterido. A Databricks anunciou que o script init armazenado no DBFS deixará de funcionar após 1º de dezembro de 2023. Para mitigar o problema, 1) use scripts de inicialização global em databricks após https://learn.microsoft.com/azure/databricks/init-scripts/global 2) comente a linha de init_scripts em sua etapa de databricks do AzureML. |
|
cluster_log_dbfs_path
Necessário
|
Os caminhos DBFS onde os logs de clusters devem ser entregues. |
|
notebook_path
Necessário
|
[Obrigatório] O caminho para o bloco de anotações na instância do Databricks. Essa classe permite quatro maneiras de especificar o código a ser executado no cluster Databricks.
Especifique exatamente um dos |
|
notebook_params
Necessário
|
Um dicionário de parâmetros para passar para o caderno.
|
|
python_script_path
Necessário
|
[Obrigatório] O caminho para o script python no DBFS.
Especifique exatamente um dos |
|
python_script_params
Necessário
|
Parâmetros para o script Python. |
|
main_class_name
Necessário
|
[Obrigatório] O nome do ponto de entrada em um módulo JAR.
Especifique exatamente um dos |
|
jar_params
Necessário
|
Parâmetros para o módulo JAR. |
|
source_directory
Necessário
|
A pasta que contém o script e outros arquivos.
Se |
|
hash_paths
Necessário
|
[str]
DEPRECATED: não é mais necessário. Uma lista de caminhos para hash ao verificar alterações no conteúdo da etapa. Se não forem detetadas alterações, o pipeline reutilizará o conteúdo da etapa de uma execução anterior. Por padrão, o conteúdo do |
|
run_name
Necessário
|
O nome no Databricks para esta execução. |
|
timeout_seconds
Necessário
|
O tempo limite para a execução do Databricks. |
|
runconfig
Necessário
|
O runconfig a ser usado. Nota: Você pode passar quantas bibliotecas quiser como dependências para seu trabalho usando os seguintes parâmetros: |
|
maven_libraries
Necessário
|
list[<xref:azureml.core.runconfig.MavenLibrary>]
Bibliotecas Maven para usar na execução do Databricks.
Para obter mais informações sobre a especificação das bibliotecas Maven, consulte |
|
pypi_libraries
Necessário
|
list[<xref:azureml.core.runconfig.PyPiLibrary>]
Bibliotecas PyPi para usar na execução do Databricks.
Para obter mais informações sobre a especificação das bibliotecas PyPi, consulte |
|
egg_libraries
Necessário
|
list[<xref:azureml.core.runconfig.EggLibrary>]
Bibliotecas de ovos a serem usadas para a execução do Databricks.
Para obter mais informações sobre a especificação das bibliotecas de ovos, consulte |
|
jar_libraries
Necessário
|
list[<xref:azureml.core.runconfig.JarLibrary>]
Bibliotecas Jar para usar para a execução do Databricks.
Para obter mais informações sobre a especificação das bibliotecas Jar, consulte |
|
rcran_libraries
Necessário
|
list[<xref:azureml.core.runconfig.RCranLibrary>]
Bibliotecas RCran para usar na execução do Databricks.
Para obter mais informações sobre a especificação das bibliotecas RCran, consulte |
|
compute_target
Necessário
|
[Obrigatório] Computação do Azure Databricks. Antes de poder usar o DatabricksStep para executar seus scripts ou blocos de anotações em um espaço de trabalho do Azure Databricks, você precisa adicionar o espaço de trabalho do Azure Databricks como um destino de computação ao seu espaço de trabalho do Azure Machine Learning. |
|
allow_reuse
Necessário
|
Indica se a etapa deve reutilizar os resultados anteriores ao ser executada novamente com as mesmas configurações. A reutilização está ativada por predefinição. Se o conteúdo da etapa (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, a saída da execução anterior desta etapa será reutilizada. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer etapas subsequentes. Se você usar conjuntos de dados do Aprendizado de Máquina do Azure como entradas, a reutilização será determinada se a definição do conjunto de dados foi alterada, não se os dados subjacentes foram alterados. |
|
version
Necessário
|
Uma tag de versão opcional para indicar uma alteração na funcionalidade da etapa. |
|
permit_cluster_restart
Necessá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ó a partir da etapa Databricks e adicione-o ao gráfico especificado. Este método não se destina a ser utilizado 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 gráfico de pipeline que representa o fluxo de trabalho. |
create_node
Crie um nó a partir da etapa Databricks e adicione-o ao gráfico especificado.
Este método não se destina a ser utilizado 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 gráfico de pipeline que representa o fluxo de trabalho.
create_node(graph, default_datastore, context)
Parâmetros
| Name | Description |
|---|---|
|
graph
Necessário
|
O objeto gráfico ao qual adicionar o nó. |
|
default_datastore
Necessário
|
O armazenamento de dados padrão. |
|
context
Necessário
|
<xref:azureml.pipeline.core._GraphContext>
O contexto do gráfico. |
Devoluções
| Tipo | Description |
|---|---|
|
O nó criado. |