SynapseSparkStep Klasa

Uwaga

Jest to klasa eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Tworzy krok usługi Azure ML Synapse, który przesyła i wykonuje skrypt języka Python.

Utwórz krok potoku usługi Azure ML, który uruchamia zadanie platformy Spark w puli zadań platformy Spark usługi Synapse.

Dziedziczenie
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

Konstruktor

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)

Parametry

file
str
Wymagane

Nazwa skryptu synapse względem source_directory.

source_directory
str
Wymagane

Folder zawierający skrypt języka Python, env conda i inne zasoby używane w kroku.

compute_target
SynapseCompute lub str
Wymagane

Docelowy obiekt obliczeniowy do użycia.

driver_memory
str
Wymagane

Ilość pamięci do użycia w procesie sterownika.

driver_cores
int
Wymagane

Liczba rdzeni do użycia w procesie sterownika.

executor_memory
str
Wymagane

Ilość pamięci do użycia na proces wykonywania.

executor_cores
int
Wymagane

Liczba rdzeni do użycia dla każdej funkcji wykonawczej.

num_executors
int
Wymagane

Liczba funkcji wykonawczych do uruchomienia dla tej sesji.

name
str
Wymagane

Nazwa kroku. Jeśli nie zostanie określona, file zostanie użyta.

app_name
str
Wymagane

Nazwa aplikacji używana do przesyłania zadania platformy Spark.

environment
Environment
Wymagane

Środowisko AML będzie obsługiwane w nowszej wersji.

arguments
list
Wymagane

Argumenty wiersza polecenia dla pliku skryptu usługi Synapse.

inputs
list[DatasetConsumptionConfig]
Wymagane

Lista danych wejściowych.

outputs
list[HDFSOutputDatasetConfig]
Wymagane

Lista danych wyjściowych.

conf
dict
Wymagane

Właściwości konfiguracji platformy Spark.

py_files
list
Wymagane

Pliki języka Python, które mają być używane w tej sesji, parametr interfejsu API usługi livy.

files
list
Wymagane

Pliki, które mają być używane w tej sesji, parametr interfejsu API usługi livy.

allow_reuse
bool
Wymagane

Wskazuje, czy krok powinien ponownie używać poprzednich wyników po ponownym uruchomieniu z tymi samymi ustawieniami.

version
str
Wymagane

Opcjonalny tag wersji, aby oznaczyć zmianę funkcjonalności kroku.

file
str
Wymagane

Nazwa skryptu usługi Synapse względem .source_directory

source_directory
str
Wymagane

Folder zawierający skrypt języka Python, env conda i inne zasoby używane w kroku.

compute_target
SynapseCompute lub str
Wymagane

Docelowy obiekt obliczeniowy do użycia.

driver_memory
str
Wymagane

Ilość pamięci do użycia w procesie sterownika.

driver_cores
int
Wymagane

Liczba rdzeni do użycia w procesie sterownika.

executor_memory
str
Wymagane

Ilość pamięci do użycia na proces wykonywania.

executor_cores
int
Wymagane

Liczba rdzeni do użycia dla każdej funkcji wykonawczej.

num_executors
int
Wymagane

Liczba funkcji wykonawczych do uruchomienia dla tej sesji.

name
str
Wymagane

Nazwa kroku. Jeśli nie zostanie określona, file zostanie użyta.

app_name
str
Wymagane

Nazwa aplikacji używana do przesyłania zadania platformy Apache Spark.

environment
Environment
Wymagane

Środowisko AML, które będzie używane w tym elemencie SynapseSparkStep.

arguments
list
Wymagane

Argumenty wiersza polecenia dla pliku skryptu usługi Synapse.

inputs
list[DatasetConsumptionConfig]
Wymagane

Lista danych wejściowych.

outputs
list[HDFSOutputDatasetConfig]
Wymagane

Lista danych wyjściowych.

conf
dict
Wymagane

Właściwości konfiguracji platformy Spark.

py_files
list
Wymagane

Pliki języka Python, które mają być używane w tej sesji, parametr interfejsu API usługi livy.

jars
list
Wymagane

Pliki Jar, które mają być używane w tej sesji, parametr interfejsu API usługi livy.

files
list
Wymagane

Pliki, które mają być używane w tej sesji, parametr interfejsu API usługi livy.

allow_reuse
bool
Wymagane

Wskazuje, czy krok powinien ponownie używać poprzednich wyników po ponownym uruchomieniu z tymi samymi ustawieniami.

version
str
Wymagane

Opcjonalny tag wersji, aby oznaczyć zmianę funkcjonalności kroku.

Uwagi

Usługa SynapseSparkStep to podstawowy, wbudowany krok umożliwiający uruchomienie zadania platformy Spark w języku Python w pulach platformy Spark usługi Synapse. Przyjmuje on główną nazwę pliku i inne parametry opcjonalne, takie jak argumenty skryptu, docelowy obiekt obliczeniowy, dane wejściowe i wyjściowe.

Najlepszym rozwiązaniem do pracy z usługą SynapseSparkStep jest użycie oddzielnego folderu dla skryptów i wszelkich plików zależnych skojarzonych z krokiem, a następnie określenie tego folderu za pomocą parametru source_directory . Zgodnie z tym najlepszym rozwiązaniem ma dwie korzyści. Najpierw pomaga zmniejszyć rozmiar migawki utworzonej dla kroku, ponieważ tylko to, co jest potrzebne do wykonania kroku, jest migawek. Po drugie, dane wyjściowe kroku z poprzedniego przebiegu można ponownie użyć, jeśli nie ma żadnych zmian w source_directory pliku, które wyzwoliłoby ponowne przekazanie migawki.


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

Polecenie SynapseSparkStep obsługuje tylko element DatasetConsumptionConfig jako dane wejściowe i hdFSOutputDatasetConfig jako dane wyjściowe.

Metody

create_node

Utwórz węzeł dla kroku skryptu usługi Synapse.

Ta metoda nie jest przeznaczona do bezpośredniego użycia. Po utworzeniu wystąpienia potoku w tym kroku usługa Azure ML automatycznie przekazuje wymagane parametry za pośrednictwem tej metody, aby można było dodać krok do grafu potoku reprezentującego przepływ pracy.

create_node

Utwórz węzeł dla kroku skryptu usługi Synapse.

Ta metoda nie jest przeznaczona do bezpośredniego użycia. Po utworzeniu wystąpienia potoku w tym kroku usługa Azure ML automatycznie przekazuje wymagane parametry za pośrednictwem tej metody, aby można było dodać krok do grafu potoku reprezentującego przepływ pracy.

create_node(graph, default_datastore, context)

Parametry

graph
Graph
Wymagane

Obiekt grafu, do który ma zostać dodany węzeł.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Wymagane

Domyślny magazyn danych.

context
<xref:azureml.pipeline.core._GraphContext>
Wymagane

Kontekst grafu.

Zwraca

Utworzony węzeł.

Typ zwracany