Поделиться через


SynapseSparkStep Класс

Замечание

Это экспериментальный класс и может измениться в любое время. Дополнительные сведения см. по адресу https://aka.ms/acr/connected-registry.

Создает шаг Azure ML Synapse, который отправляет и выполняет скрипт Python.

Создайте шаг конвейера Машинного обучения Azure, который запускает задание Spark в пуле synapse spark.

Конструктор

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)

Параметры

Имя Описание
file
Обязательно
str

Имя скрипта synapse относительно source_directory.

source_directory
Обязательно
str

Папка, содержащая скрипт Python, conda env и другие ресурсы, используемые на шаге.

compute_target
Обязательно

Целевой объект вычислений, используемый.

driver_memory
Обязательно
str

Объем памяти, используемой для процесса драйвера.

driver_cores
Обязательно
int

Количество ядер, используемых для процесса драйвера.

executor_memory
Обязательно
str

Объем памяти для каждого процесса исполнителя.

executor_cores
Обязательно
int

Количество ядер, используемых для каждого исполнителя.

num_executors
Обязательно
int

Количество исполнителей, которые нужно запустить для этого сеанса.

name
Обязательно
str

Имя шага. Если не указано, file используется.

app_name
Обязательно
str

Имя приложения, используемое для отправки задания Spark.

environment
Обязательно

Среда AML будет поддерживаться в дальнейшем выпуске.

arguments
Обязательно

Аргументы командной строки для файла скрипта Synapse.

inputs
Обязательно

Список входных данных.

outputs
Обязательно

Список выходных данных.

conf
Обязательно

Свойства конфигурации Spark.

py_files
Обязательно

Файлы Python, используемые в этом сеансе, параметр API livy.

files
Обязательно

Файлы, используемые в этом сеансе, параметр API livy.

allow_reuse
Обязательно

Указывает, должен ли шаг повторно использовать предыдущие результаты при повторном запуске с теми же параметрами.

version
Обязательно
str

Необязательный тег версии, обозначающий изменение функциональных возможностей для шага.

file
Обязательно
str

Имя скрипта Synapse относительно source_directory.

source_directory
Обязательно
str

Папка, содержащая скрипт Python, conda env и другие ресурсы, используемые на шаге.

compute_target
Обязательно

Целевой объект вычислений, используемый.

driver_memory
Обязательно
str

Объем памяти, используемой для процесса драйвера.

driver_cores
Обязательно
int

Количество ядер, используемых для процесса драйвера.

executor_memory
Обязательно
str

Объем памяти для каждого процесса исполнителя.

executor_cores
Обязательно
int

Количество ядер, используемых для каждого исполнителя.

num_executors
Обязательно
int

Количество исполнителей, которые нужно запустить для этого сеанса.

name
Обязательно
str

Имя шага. Если не указано, file используется.

app_name
Обязательно
str

Имя приложения, используемое для отправки задания Apache Spark.

environment
Обязательно

Среда AML, которая будет использоваться в этом SynapseSparkStep.

arguments
Обязательно

Аргументы командной строки для файла скрипта Synapse.

inputs
Обязательно

Список входных данных.

outputs
Обязательно

Список выходных данных.

conf
Обязательно

Свойства конфигурации Spark.

py_files
Обязательно

Файлы Python, используемые в этом сеансе, параметр API livy.

jars
Обязательно

Jar-файлы, используемые в этом сеансе, параметр API livy.

files
Обязательно

Файлы, используемые в этом сеансе, параметр API livy.

allow_reuse
Обязательно

Указывает, должен ли шаг повторно использовать предыдущие результаты при повторном запуске с теми же параметрами.

version
Обязательно
str

Необязательный тег версии, обозначающий изменение функциональных возможностей для шага.

Комментарии

SynapseSparkStep — это базовый встроенный шаг для запуска задания Python Spark в пулах spark synapse. Он принимает основное имя файла и другие необязательные параметры, такие как аргументы для скрипта, целевого объекта вычислений, входных и выходных данных.

Рекомендуется работать с SynapseSparkStep, чтобы использовать отдельную папку для сценариев и всех зависимых файлов, связанных с шагом, и указать папку с параметром source_directory . После этого рекомендуется воспользоваться двумя преимуществами. Во-первых, это помогает уменьшить размер моментального снимка, созданного для шага, так как для этого шага создается моментальный снимок только того, что необходимо. Во-вторых, выходные данные шага из предыдущего запуска можно повторно использовать, если нет изменений source_directory , которые активируют повторную отправку моментального снимка.


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

SynapseSparkStep поддерживает только DatasetConsumptionConfig в качестве входных данных и HDFSOutputDatasetConfig в качестве выходных данных.

Методы

create_node

Создайте узел для шага скрипта Synapse.

Этот метод не предназначен для непосредственного использования. При создании экземпляра конвейера с помощью этого шага Машинное обучение Azure автоматически передает параметры, необходимые для этого метода, чтобы этот шаг можно было добавить в граф конвейера, представляющий рабочий процесс.

create_node

Создайте узел для шага скрипта Synapse.

Этот метод не предназначен для непосредственного использования. При создании экземпляра конвейера с помощью этого шага Машинное обучение Azure автоматически передает параметры, необходимые для этого метода, чтобы этот шаг можно было добавить в граф конвейера, представляющий рабочий процесс.

create_node(graph, default_datastore, context)

Параметры

Имя Описание
graph
Обязательно

Объект graph, в который добавляется узел.

default_datastore
Обязательно

Хранилище данных по умолчанию.

context
Обязательно
<xref:azureml.pipeline.core._GraphContext>

Контекст графа.

Возвращаемое значение

Тип Описание

Созданный узел.