DatabricksStep Clase
Crea un paso de canalización de Azure ML para agregar un cuaderno de DataBricks, script de Python o JAR como nodo.
Para obtener un ejemplo de uso de DatabricksStep, consulte el cuaderno https://aka.ms/pl-databricks.
Cree un paso de canalización de Azure ML para agregar un cuaderno de DataBricks, script de Python o JAR como nodo.
Para obtener un ejemplo de uso de DatabricksStep, consulte el cuaderno https://aka.ms/pl-databricks.
:p aram python_script_name:[Obligatorio] Nombre de un script de Python relativo a source_directory
.
Si el script toma entradas y salidas, estos se pasarán al script como parámetros.
Si python_script_name
se especifica, source_directory
debe ser también.
Especifique exactamente uno de notebook_path
, python_script_path
, python_script_name
o main_class_name
.
Si especifica un objeto DataReference como entrada con data_reference_name=input1 y un objeto PipelineData como salida con name=output1, las entradas y salidas se pasarán al script como parámetros. Así es como se verán y tendrá que analizar los argumentos del script para acceder a las rutas de acceso de cada entrada y salida: "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1"
Además, los parámetros siguientes estarán disponibles en el script:
- AZUREML_RUN_TOKEN: token de AML para autenticarse con Azure Machine Learning.
- AZUREML_RUN_TOKEN_EXPIRY: hora de expiración del token de AML.
- AZUREML_RUN_ID: Identificador de ejecución de Azure Machine Learning para esta ejecución.
- AZUREML_ARM_SUBSCRIPTION: suscripción de Azure para el área de trabajo de AML.
- AZUREML_ARM_RESOURCEGROUP: grupo de recursos de Azure para el área de trabajo de Azure Machine Learning.
- AZUREML_ARM_WORKSPACE_NAME: nombre del área de trabajo de Azure Machine Learning.
- AZUREML_ARM_PROJECT_NAME: nombre del experimento de Azure Machine Learning.
- AZUREML_SERVICE_ENDPOINT: la dirección URL del punto de conexión para los servicios de AML.
- AZUREML_WORKSPACE_ID: identificador del área de trabajo de Azure Machine Learning.
- AZUREML_EXPERIMENT_ID: identificador del experimento de Azure Machine Learning.
- AZUREML_SCRIPT_DIRECTORY_NAME: ruta de acceso del directorio en DBFS donde se ha copiado source_directory.
(This parameter is only populated when `python_script_name` is used. See more details below.)
Al ejecutar un script de Python desde la máquina local en Databricks mediante parámetros source_directory
databricksStep y python_script_name
, el source_directory se copia en DBFS y la ruta de acceso del directorio en DBFS se pasa como parámetro al script cuando comienza la ejecución.
Este parámetro se etiqueta como –AZUREML_SCRIPT_DIRECTORY_NAME. Debe prefijarlo con la cadena "dbfs:/" o "/dbfs/" para acceder al directorio en DBFS.
Constructor
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
Nombre | Description |
---|---|
name
Requerido
|
[Obligatorio] Nombre del paso. |
inputs
|
Lista de conexiones de entrada para los datos consumidos por este paso. Capture esto dentro del cuaderno mediante dbutils.widgets.get("input_name"). Puede ser DataReference o PipelineData. DataReference representa un fragmento de datos existente en un almacén de datos. Básicamente, se trata de una ruta de acceso en un almacén de datos. DatabricksStep admite almacenes de datos que encapsulan DBFS, Blob de Azure o ADLS v1. PipelineData representa los datos intermedios generados por otro paso en una canalización. Valor predeterminado: None
|
outputs
|
Lista de definiciones de puerto de salida para las salidas generadas por este paso. Capture esto dentro del cuaderno mediante dbutils.widgets.get("output_name"). Debe ser PipelineData. Valor predeterminado: None
|
existing_cluster_id
|
Identificador de clúster de un clúster interactivo existente en el área de trabajo de Databricks. Si va a pasar este parámetro, no puede pasar ninguno de los parámetros siguientes que se usan para crear un nuevo clúster:
Nota: Para crear un nuevo clúster de trabajos, deberá pasar los parámetros anteriores. Puede pasar estos parámetros directamente o puede pasarlos como parte del objeto RunConfiguration mediante el parámetro runconfig. Pasar estos parámetros directamente y a través de RunConfiguration produce un error. Valor predeterminado: None
|
spark_version
|
La versión de Spark para el clúster de ejecución de Databricks, por ejemplo: "10.4.x-scala2.12".
Para obtener más información, consulte la descripción del Valor predeterminado: None
|
node_type
|
[Obligatorio] Los tipos de nodo de máquina virtual de Azure para el clúster de ejecución de Databricks, por ejemplo: "Standard_D3_v2". Especifique Valor predeterminado: None
|
instance_pool_id
|
[Obligatorio] Identificador del grupo de instancias al que debe asociarse el clúster.
Especifique Valor predeterminado: None
|
num_workers
|
[Obligatorio] El número estático de trabajos para el clúster de ejecución de Databricks.
Debe especificar Valor predeterminado: None
|
min_workers
|
[Obligatorio] Número mínimo de trabajos que se usarán para escalar automáticamente el clúster de ejecución de Databricks.
Debe especificar Valor predeterminado: None
|
max_workers
|
[Obligatorio] Número máximo de trabajos que se usarán para escalar automáticamente el clúster de ejecución de Databricks.
Debe especificar Valor predeterminado: None
|
spark_env_variables
|
Las variables de entorno de Spark para el clúster de ejecución de Databricks.
Para obtener más información, consulte la descripción del Valor predeterminado: None
|
spark_conf
|
Configuración de Spark para el clúster de ejecución de Databricks.
Para obtener más información, consulte la descripción del Valor predeterminado: None
|
init_scripts
|
[str]
Obsolescente. Databricks anunció que el script de inicialización almacenado en DBFS dejará de funcionar después del 1 de dic de 2023. Para mitigar el problema, use scripts de inicialización globales en databricks después https://learn.microsoft.com/azure/databricks/init-scripts/global de 2) comentar la línea de init_scripts en el paso databricks de AzureML. Valor predeterminado: None
|
cluster_log_dbfs_path
|
Rutas de acceso de DBFS donde se van a entregar los registros de clústeres. Valor predeterminado: None
|
notebook_path
|
[Obligatorio] Ruta de acceso al cuaderno en la instancia de Databricks. Esta clase permite cuatro maneras de especificar el código que se va a ejecutar en el clúster de Databricks.
Especifique exactamente uno de Valor predeterminado: None
|
notebook_params
|
Diccionario de parámetros que se van a pasar al cuaderno.
Valor predeterminado: None
|
python_script_path
|
[Obligatorio] Ruta de acceso al script de Python en DBFS.
Especifique exactamente uno de Valor predeterminado: None
|
python_script_params
|
Parámetros para el script de Python. Valor predeterminado: None
|
main_class_name
|
[Obligatorio] Nombre del punto de entrada en un módulo JAR.
Especifique exactamente uno de Valor predeterminado: None
|
jar_params
|
Parámetros para el módulo JAR. Valor predeterminado: None
|
python_script_name
|
[Obligatorio] Nombre de un script de Python relativo a Especifique exactamente uno de Si especifica un objeto DataReference como entrada con data_reference_name=input1 y un objeto PipelineData como salida con name=output1, las entradas y salidas se pasarán al script como parámetros. Así es como se verán y tendrá que analizar los argumentos del script para acceder a las rutas de acceso de cada entrada y salida: "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1" Además, los parámetros siguientes estarán disponibles en el script:
Al ejecutar un script de Python desde la máquina local en Databricks mediante parámetros Valor predeterminado: None
|
source_directory
|
Carpeta que contiene el script y otros archivos.
Si Valor predeterminado: None
|
hash_paths
|
[str]
EN DESUSO: ya no es necesario. Lista de rutas de acceso a hash al comprobar si hay cambios en el contenido del paso. Si no se detectan cambios, la canalización reutilizará el contenido del paso de una ejecución anterior. De forma predeterminada, el contenido de Valor predeterminado: None
|
run_name
|
El nombre en Databricks de esta ejecución. Valor predeterminado: None
|
timeout_seconds
|
Tiempo de espera de la ejecución de Databricks. Valor predeterminado: None
|
runconfig
|
Runconfig que se va a usar. Nota: Puede pasar tantas bibliotecas como dependencias al trabajo mediante los parámetros siguientes: , , , o Valor predeterminado: None
|
maven_libraries
|
Bibliotecas de Maven que se usarán para la ejecución de Databricks. Valor predeterminado: None
|
pypi_libraries
|
Bibliotecas de PyPi que se van a usar para la ejecución de Databricks. Valor predeterminado: None
|
egg_libraries
|
Bibliotecas de huevos que se usarán para la ejecución de Databricks. Valor predeterminado: None
|
jar_libraries
|
Bibliotecas jar que se van a usar para la ejecución de Databricks. Valor predeterminado: None
|
rcran_libraries
|
Bibliotecas de RCran que se usarán para la ejecución de Databricks. Valor predeterminado: None
|
compute_target
|
[Obligatorio] Proceso de Azure Databricks. Para poder usar DatabricksStep para ejecutar los scripts o cuadernos en un área de trabajo de Azure Databricks, debe agregar el área de trabajo de Azure Databricks como destino de proceso al área de trabajo de Azure Machine Learning. Valor predeterminado: None
|
allow_reuse
|
Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración. La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado. Valor predeterminado: True
|
version
|
Etiqueta de versión opcional para indicar un cambio en la funcionalidad del paso. Valor predeterminado: None
|
permit_cluster_restart
|
Si se especifica existing_cluster_id, este parámetro indica si se puede reiniciar el clúster en nombre del usuario. Valor predeterminado: None
|
name
Requerido
|
[Obligatorio] Nombre del paso. |
inputs
Requerido
|
Lista de conexiones de entrada para los datos consumidos por este paso. Capture esto dentro del cuaderno mediante dbutils.widgets.get("input_name"). Puede ser DataReference o PipelineData. DataReference representa un fragmento de datos existente en un almacén de datos. Básicamente, se trata de una ruta de acceso en un almacén de datos. DatabricksStep admite almacenes de datos que encapsulan DBFS, blob de Azure o ADLS v1. PipelineData representa los datos intermedios generados por otro paso en una canalización. |
outputs
Requerido
|
list[Union[OutputPortBinding, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, PipelineData]]
Lista de definiciones de puerto de salida para las salidas generadas por este paso. Capture esto dentro del cuaderno mediante dbutils.widgets.get("output_name"). Debe ser PipelineData. |
existing_cluster_id
Requerido
|
Identificador de clúster de un clúster interactivo existente en el área de trabajo de Databricks. Si va a pasar este parámetro, no puede pasar ninguno de los parámetros siguientes que se usan para crear un nuevo clúster:
Nota: Para crear un nuevo clúster de trabajos, deberá pasar los parámetros anteriores. Puede pasar estos parámetros directamente o puede pasarlos como parte del objeto RunConfiguration mediante el parámetro runconfig. Pasar estos parámetros directamente y a través de RunConfiguration produce un error. |
spark_version
Requerido
|
La versión de Spark para el clúster de ejecución de Databricks, por ejemplo: "10.4.x-scala2.12".
Para obtener más información, consulte la descripción del |
node_type
Requerido
|
[Obligatorio] Los tipos de nodo de máquina virtual de Azure para el clúster de ejecución de Databricks, por ejemplo: "Standard_D3_v2". Especifique |
instance_pool_id
Requerido
|
[Obligatorio] Identificador del grupo de instancias al que debe asociarse el clúster.
Especifique |
num_workers
Requerido
|
[Obligatorio] El número estático de trabajos para el clúster de ejecución de Databricks.
Debe especificar Para obtener más información, consulte la descripción del |
min_workers
Requerido
|
[Obligatorio] Número mínimo de trabajos que se usarán para escalar automáticamente el clúster de ejecución de Databricks.
Debe especificar Para obtener más información, consulte la descripción del |
max_workers
Requerido
|
[Obligatorio] Número máximo de trabajos que se usarán para escalar automáticamente el clúster de ejecución de Databricks.
Debe especificar Para obtener más información, consulte la descripción del |
spark_env_variables
Requerido
|
Las variables de entorno de Spark para el clúster de ejecución de Databricks.
Para obtener más información, consulte la descripción del |
spark_conf
Requerido
|
Configuración de Spark para el clúster de ejecución de Databricks.
Para obtener más información, consulte la descripción del |
init_scripts
Requerido
|
[str]
Obsolescente. Databricks anunció que el script de inicialización almacenado en DBFS dejará de funcionar después del 1 de dic de 2023. Para mitigar el problema, use scripts de inicialización globales en databricks después https://learn.microsoft.com/azure/databricks/init-scripts/global de 2) comentar la línea de init_scripts en el paso databricks de AzureML. |
cluster_log_dbfs_path
Requerido
|
Rutas de acceso de DBFS donde se van a entregar los registros de clústeres. |
notebook_path
Requerido
|
[Obligatorio] Ruta de acceso al cuaderno en la instancia de Databricks. Esta clase permite cuatro maneras de especificar el código que se va a ejecutar en el clúster de Databricks.
Especifique exactamente uno de |
notebook_params
Requerido
|
Diccionario de parámetros que se van a pasar al cuaderno.
|
python_script_path
Requerido
|
[Obligatorio] Ruta de acceso al script de Python en DBFS.
Especifique exactamente uno de |
python_script_params
Requerido
|
Parámetros para el script de Python. |
main_class_name
Requerido
|
[Obligatorio] Nombre del punto de entrada en un módulo JAR.
Especifique exactamente uno de |
jar_params
Requerido
|
Parámetros para el módulo JAR. |
source_directory
Requerido
|
Carpeta que contiene el script y otros archivos.
Si |
hash_paths
Requerido
|
[str]
EN DESUSO: ya no es necesario. Lista de rutas de acceso a hash al comprobar si hay cambios en el contenido del paso. Si no se detectan cambios, la canalización reutilizará el contenido del paso de una ejecución anterior. De forma predeterminada, el contenido de |
run_name
Requerido
|
El nombre en Databricks de esta ejecución. |
timeout_seconds
Requerido
|
Tiempo de espera de la ejecución de Databricks. |
runconfig
Requerido
|
Runconfig que se va a usar. Nota: Puede pasar tantas bibliotecas como dependencias al trabajo mediante los parámetros siguientes: , , , o |
maven_libraries
Requerido
|
list[<xref:azureml.core.runconfig.MavenLibrary>]
Bibliotecas de Maven que se usarán para la ejecución de Databricks.
Para obtener más información sobre la especificación de bibliotecas de Maven, consulte |
pypi_libraries
Requerido
|
list[<xref:azureml.core.runconfig.PyPiLibrary>]
Bibliotecas de PyPi que se van a usar para la ejecución de Databricks.
Para obtener más información sobre la especificación de bibliotecas de PyPi, consulte |
egg_libraries
Requerido
|
list[<xref:azureml.core.runconfig.EggLibrary>]
Bibliotecas de huevos que se usarán para la ejecución de Databricks.
Para obtener más información sobre la especificación de bibliotecas de Egg, consulte |
jar_libraries
Requerido
|
list[<xref:azureml.core.runconfig.JarLibrary>]
Bibliotecas jar que se van a usar para la ejecución de Databricks.
Para obtener más información sobre la especificación de bibliotecas Jar, vea |
rcran_libraries
Requerido
|
list[<xref:azureml.core.runconfig.RCranLibrary>]
Bibliotecas de RCran que se usarán para la ejecución de Databricks.
Para obtener más información sobre la especificación de las bibliotecas de RCran, consulte |
compute_target
Requerido
|
[Obligatorio] Proceso de Azure Databricks. Para poder usar DatabricksStep para ejecutar los scripts o cuadernos en un área de trabajo de Azure Databricks, debe agregar el área de trabajo de Azure Databricks como destino de proceso al área de trabajo de Azure Machine Learning. |
allow_reuse
Requerido
|
Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración. La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado. |
version
Requerido
|
Etiqueta de versión opcional para indicar un cambio en la funcionalidad del paso. |
permit_cluster_restart
Requerido
|
Si se especifica existing_cluster_id, este parámetro indica si se puede reiniciar el clúster en nombre del usuario. |
Métodos
create_node |
Cree un nodo a partir del paso de Databricks y agréguelo al gráfico especificado. Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo. |
create_node
Cree un nodo a partir del paso de Databricks y agréguelo al gráfico especificado.
Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.
create_node(graph, default_datastore, context)
Parámetros
Nombre | Description |
---|---|
graph
Requerido
|
Objeto de grafo al que se va a agregar el nodo. |
default_datastore
Requerido
|
Almacén de datos predeterminado. |
context
Requerido
|
<xref:azureml.pipeline.core._GraphContext>
Contexto del grafo. |
Devoluciones
Tipo | Description |
---|---|
Nodo creado. |