SynapseSparkStep Classe

Observação

Essa é uma classe experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Cria uma etapa do Azure ML Synapse que envia e executa o script Python.

Crie uma etapa do Pipeline do Azure ML que executa o trabalho do Spark no pool do Synapse Spark.

Herança
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

Construtor

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)

Parâmetros

file
str
Obrigatório

O nome de um script do Synapse relativo a source_directory.

source_directory
str
Obrigatório

Uma pasta que contém o script Python, o ambiente do Conda e outros recursos usados na etapa.

compute_target
SynapseCompute ou str
Obrigatório

O destino de computação a ser usado.

driver_memory
str
Obrigatório

Quantidade de memória a ser usada para o processo do driver.

driver_cores
int
Obrigatório

Número de núcleos a serem usados para o processo do driver.

executor_memory
str
Obrigatório

Quantidade de memória a ser usada pelo processo do executor.

executor_cores
int
Obrigatório

Número de núcleos a serem usados para cada executor.

num_executors
int
Obrigatório

Número de executores a serem iniciados para esta sessão.

name
str
Obrigatório

O nome da etapa. Se não for especificado, file será usado.

app_name
str
Obrigatório

O nome do aplicativo usado para enviar o trabalho do Spark.

environment
Environment
Obrigatório

O ambiente do AML terá suporte na versão posterior.

arguments
list
Obrigatório

Argumentos de linha de comando para o arquivo de script do Synapse.

inputs
list[DatasetConsumptionConfig]
Obrigatório

Uma lista de entradas.

outputs
list[HDFSOutputDatasetConfig]
Obrigatório

Uma lista de saídas.

conf
dict
Obrigatório

Propriedades de configuração do Spark.

py_files
list
Obrigatório

Os arquivos Python a serem usados nesta sessão, parâmetro da API livy.

files
list
Obrigatório

Os arquivos a serem usados nesta sessão, parâmetro da API livy.

allow_reuse
bool
Obrigatório

Indica se a etapa deve ou não reutilizar os resultados anteriores quando executada novamente com as mesmas configurações.

version
str
Obrigatório

Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa.

file
str
Obrigatório

O nome de um script do Synapse em relação a source_directory.

source_directory
str
Obrigatório

Uma pasta que contém o script Python, o ambiente do Conda e outros recursos usados na etapa.

compute_target
SynapseCompute ou str
Obrigatório

O destino de computação a ser usado.

driver_memory
str
Obrigatório

Quantidade de memória a ser usada para o processo do driver.

driver_cores
int
Obrigatório

Número de núcleos a serem usados para o processo do driver.

executor_memory
str
Obrigatório

Quantidade de memória a ser usada pelo processo do executor.

executor_cores
int
Obrigatório

Número de núcleos a serem usados para cada executor.

num_executors
int
Obrigatório

Número de executores a serem iniciados para esta sessão.

name
str
Obrigatório

O nome da etapa. Se não for especificado, file será usado.

app_name
str
Obrigatório

O nome do aplicativo usado para enviar o trabalho do Apache Spark.

environment
Environment
Obrigatório

Ambiente AML que será aproveitado neste SynapseSparkStep.

arguments
list
Obrigatório

Argumentos de linha de comando para o arquivo de script do Synapse.

inputs
list[DatasetConsumptionConfig]
Obrigatório

Uma lista de entradas.

outputs
list[HDFSOutputDatasetConfig]
Obrigatório

Uma lista de saídas.

conf
dict
Obrigatório

Propriedades de configuração do Spark.

py_files
list
Obrigatório

Os arquivos Python a serem usados nesta sessão, parâmetro da API livy.

jars
list
Obrigatório

Arquivos Jar a serem usados nesta sessão, parâmetro da API livy.

files
list
Obrigatório

Os arquivos a serem usados nesta sessão, parâmetro da API livy.

allow_reuse
bool
Obrigatório

Indica se a etapa deve ou não reutilizar os resultados anteriores quando executada novamente com as mesmas configurações.

version
str
Obrigatório

Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa.

Comentários

Um SynapseSparkStep é uma etapa básica e integrada para executar um trabalho do Python Spark em Pools do Spark do Synapse. Ele usa um nome de arquivo principal e outros parâmetros opcionais, tais como argumentos para o script, destino de computação, entradas e saídas.

A melhor prática para trabalhar com SynapseSparkStep é usar uma pasta separada para scripts e todos os arquivos dependentes associados à etapa e especificá-la com o parâmetro source_directory. Seguir essa melhor prática oferece dois benefícios. Primeiro, ajuda a reduzir o tamanho do instantâneo criado para a etapa porque o instantâneo captura apenas o que é necessário nessa etapa. Segundo, a saída da etapa de uma execução anterior pode ser reutilizada caso não haja alterações no source_directory que disparariam um novo carregamento do instantâneo.


   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 = {})

O SynapseSparkStep dá suporte apenas a DatasetConsumptionConfig como entrada e HDFSOutputDatasetConfig como saída.

Métodos

create_node

Crie um nó para uma etapa de script do Synapse.

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ó para uma etapa de script do Synapse.

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

graph
Graph
Obrigatório

O objeto de grafo ao qual adicionar o nó.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Obrigatório

O armazenamento de dados padrão.

context
<xref:azureml.pipeline.core._GraphContext>
Obrigatório

O contexto do grafo.

Retornos

O nó criado.

Tipo de retorno