SynapseSparkStep Classe

Nota

Esta é uma classe experimental e pode mudar em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.

Cria um passo do Synapse do Azure ML que submete e executa o script python.

Crie um passo do Pipeline do Azure ML que executa a tarefa do Spark no conjunto spark do synapse.

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
Necessário

O nome de um script synapse relativo a source_directory.

source_directory
str
Necessário

Uma pasta que contém script python, env conda e outros recursos utilizados no passo.

compute_target
SynapseCompute ou str
Necessário

O destino de computação a utilizar.

driver_memory
str
Necessário

Quantidade de memória a utilizar para o processo do controlador.

driver_cores
int
Necessário

Número de núcleos a utilizar para o processo do controlador.

executor_memory
str
Necessário

Quantidade de memória a utilizar por processo do executor.

executor_cores
int
Necessário

Número de núcleos a utilizar para cada executor.

num_executors
int
Necessário

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

name
str
Necessário

O nome do passo. Se não for especificado, file é utilizado.

app_name
str
Necessário

O Nome da aplicação utilizado para submeter a tarefa do Spark.

environment
Environment
Necessário

O ambiente AML será suportado na versão posterior.

arguments
list
Necessário

Argumentos da linha de comandos para o ficheiro de script do Synapse.

inputs
list[DatasetConsumptionConfig]
Necessário

Uma lista de entradas.

outputs
list[HDFSOutputDatasetConfig]
Necessário

Uma lista de saídas.

conf
dict
Necessário

Propriedades de configuração do Spark.

py_files
list
Necessário

Ficheiros Python a utilizar nesta sessão, parâmetro da API livy.

files
list
Necessário

Ficheiros a utilizar nesta sessão, parâmetro da API livy.

allow_reuse
bool
Necessário

Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições.

version
str
Necessário

Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo.

file
str
Necessário

O nome de um script do Synapse relativo a source_directory.

source_directory
str
Necessário

Uma pasta que contém script python, env conda e outros recursos utilizados no passo.

compute_target
SynapseCompute ou str
Necessário

O destino de computação a utilizar.

driver_memory
str
Necessário

Quantidade de memória a utilizar para o processo do controlador.

driver_cores
int
Necessário

Número de núcleos a utilizar para o processo do controlador.

executor_memory
str
Necessário

Quantidade de memória a utilizar por processo do executor.

executor_cores
int
Necessário

Número de núcleos a utilizar para cada executor.

num_executors
int
Necessário

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

name
str
Necessário

O nome do passo. Se não for especificado, file é utilizado.

app_name
str
Necessário

O nome da aplicação utilizado para submeter a tarefa do Apache Spark.

environment
Environment
Necessário

Ambiente AML que será aproveitado neste SynapseSparkStep.

arguments
list
Necessário

Argumentos da linha de comandos para o ficheiro de script do Synapse.

inputs
list[DatasetConsumptionConfig]
Necessário

Uma lista de entradas.

outputs
list[HDFSOutputDatasetConfig]
Necessário

Uma lista de saídas.

conf
dict
Necessário

Propriedades de configuração do Spark.

py_files
list
Necessário

Ficheiros Python a utilizar nesta sessão, parâmetro da API livy.

jars
list
Necessário

Jar files to be used in this session, parameter of livy API.

files
list
Necessário

Ficheiros a utilizar nesta sessão, parâmetro da API livy.

allow_reuse
bool
Necessário

Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições.

version
str
Necessário

Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo.

Observações

Um SynapseSparkStep é um passo básico e incorporado para executar uma tarefa do Python Spark em conjuntos spark synapse. Utiliza um nome de ficheiro principal e outros parâmetros opcionais, como argumentos para o script, destino de computação, entradas e saídas.

A melhor prática para trabalhar com o SynapseSparkStep é utilizar uma pasta separada para scripts e quaisquer ficheiros dependentes associados ao passo e especificar essa pasta com o source_directory parâmetro . Seguir esta melhor prática tem duas vantagens. Em primeiro lugar, ajuda a reduzir o tamanho do instantâneo criado para o passo porque apenas o que é necessário para o passo é instantâneo. Em segundo lugar, a saída do passo de uma execução anterior pode ser reutilizada se não existirem alterações ao source_directory que acionarão 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 só suporta DatasetConsumptionConfig como entrada e HDFSOutputDatasetConfig como saída.

Métodos

create_node

Criar um nó para o passo de script do Synapse.

Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que represente o fluxo de trabalho.

create_node

Criar um nó para o passo de script do Synapse.

Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que represente o fluxo de trabalho.

create_node(graph, default_datastore, context)

Parâmetros

graph
Graph
Necessário

O objeto de grafo ao que adicionar o nó.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Necessário

O arquivo de dados predefinido.

context
<xref:azureml.pipeline.core._GraphContext>
Necessário

O contexto do gráfico.

Devoluções

O nó criado.

Tipo de retorno