Interfejs API zadań 2.0
Ważne
W tym artykule udokumentowano interfejs Jobs API w wersji 2.0. Jednak firma Databricks zaleca używanie Jobs API 2.2 dla nowych i istniejących klientów oraz skryptów. Aby uzyskać szczegółowe informacje na temat zmian w wersji 2.2 interfejsu API Jobs, zapoznaj się z dokumentacją Aktualizowanie interfejsu API Jobs z wersji 2.1 do 2.2.
Interfejs API zadań umożliwia tworzenie, edytowanie i usuwanie zadań. Maksymalny dopuszczalny rozmiar żądania do API zadań wynosi 10 MB.
Aby dowiedzieć się więcej o zaktualizowanej funkcjonalności w nowszych wersjach API zadań, zobacz Aktualizowanie z API zadań 2.0 do 2.1 i Aktualizowanie z API zadań 2.1 do 2.2.
Ostrzeżenie
Nigdy nie należy umieszczać tajnych danych bezpośrednio w kodzie ani przechowywać ich w postaci jawnego tekstu. Użyj interfejsu Secrets API, aby zarządzać tajnymi w Databricks CLI. Użyj narzędzia Secrets (dbutils.secrets), aby odwoływać się do wpisów tajnych w notesach i zadaniach.
Uwaga
Jeśli podczas wykonywania żądań do Jobs API wystąpi błąd poziomu 500, Databricks zaleca, aby ponawiać te żądania przez maksymalnie 10 minut, z co najmniej 30-sekundowym interwałem między kolejnymi próbami.
Ważne
Aby uzyskać dostęp do interfejsów API REST Databricks, należy uwierzytelnić się.
Utwórz
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/create |
POST |
Utwórz nowe zadanie.
Przykład
W tym przykładzie tworzysz zadanie, które uruchamia plik JAR o godzinie 22:15 każdej nocy.
Żądanie
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/create \
--data @create-job.json \
| jq .
create-job.json
:
{
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 3600,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
Wymiana:
-
<databricks-instance>
z nazwą instancji obszaru roboczego Azure Databricks, na przykład . - Zawartość pól
create-job.json
, które są odpowiednie dla twojego rozwiązania.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"job_id": 1
}
Struktura żądań
Ważne
- Kiedy uruchamiasz zadanie w nowym klastrze zadań, jest ono traktowane jako zautomatyzowane obciążenie Jobs Compute, które podlega cennikowi Jobs Compute.
- Podczas uruchamiania zadania na istniejącym klastrze ogólnego przeznaczenia traktuje się je jako obciążenie obliczeniowe ogólnego przeznaczenia (interaktywne) zgodne z cennikiem obliczeń ogólnego przeznaczenia.
Nazwa pola | Typ | Opis |
---|---|---|
existing_cluster_id LUB new_cluster |
STRING OR NewCluster |
Jeśli existing_cluster_id, identyfikator istniejącego klastra, który będzie używany dla wszystkich uruchomień tego zadania. W przypadku uruchamiania zadań w istniejącym klastrze może być konieczne ręczne ponowne uruchomienie klastra, jeśli przestanie odpowiadać. Zalecamy uruchamianie zadań w nowych klastrach w celu zwiększenia niezawodności. Jeśli new_cluster, to opis klastra, który zostanie utworzony dla każdego uruchomienia. Jeśli określisz wartość PipelineTask, to pole może być puste. |
notebook_task OR LUB spark_jar_task spark_python_task OR LUB spark_submit_task pipeline_task LUB run_job_task |
NotebookTask lub SparkJarTask lub SparkPythonTask lub SparkSubmitTask lub PipelineTask lub RunJobTask | Jeśli notebook_task jest prawdą, oznacza to, że to zadanie powinno uruchomić notatnik. Nie można określić tego pola w połączeniu z spark_jar_task. Jeśli spark_jar_task, wskazuje, że to zadanie powinno uruchomić plik JAR. Jeśli spark_python_task, wskazuje, że to zadanie powinno uruchomić plik języka Python. Jeśli spark_submit_task wskazuje, że to zadanie powinno zostać uruchomione przez skrypt spark_submit. Jeśli występuje pipeline_task, oznacza to, że to zadanie powinno uruchomić potok DLT. Jeśli uruchomiona jest funkcja run_job_task, oznacza to, że to zadanie powinno uruchomić inne zadanie. |
name |
STRING |
Opcjonalna nazwa zadania. Domyślna wartość to Untitled . |
libraries |
Tablica biblioteki | Opcjonalna lista bibliotek do zainstalowania w klastrze, które będą wykonywać zadanie. Wartość domyślna to pusta lista. |
email_notifications |
PowiadomieniaEmailoweDotyczącePracy | Zestaw opcjonalnych adresów e-mail, które są powiadamiane o rozpoczęciu i zakończeniu tego zadania oraz o jego usunięciu. Domyślne zachowanie polega na tym, aby nie wysyłać żadnych wiadomości e-mail. |
webhook_notifications |
WebhookNotifications | Opcjonalny zestaw miejsc docelowych systemu do powiadamiania o rozpoczęciu, zakończeniu lub awarii tego zadania. |
notification_settings |
UstawieniaPowiadomieńOPracy | Opcjonalne ustawienia powiadomień używane podczas wysyłania powiadomień do każdego z elementów email_notifications i webhook_notifications dla tego zadania. |
timeout_seconds |
INT32 |
Opcjonalny limit czasu stosowany do każdego uruchomienia tego zadania. Domyślne zachowanie polega na braku limitu czasu. |
max_retries |
INT32 |
Opcjonalna maksymalna liczba ponownych prób nieudanego uruchomienia. Przebieg jest uznawany za nieudany, jeśli zakończy się z wynikiem FAILED lub result_state.INTERNAL_ERROR life_cycle_state . Wartość -1 oznacza ponowienie próby przez czas nieokreślony, a wartość 0 oznacza, że nigdy nie spróbuj ponownie. Domyślne zachowanie polega na tym, aby nigdy nie ponowić próby. |
min_retry_interval_millis |
INT32 |
Opcjonalny minimalny interwał w milisekundach między rozpoczęciem nieudanego uruchomienia a kolejną próbą uruchomienia. Domyślne zachowanie polega na tym, że nieudane uruchomienia są natychmiast ponawiane. |
retry_on_timeout |
BOOL |
Opcjonalne zasady określające, czy ponowić próbę wykonania zadania po upłynął limit czasu. Domyślne zachowanie polega na tym, aby nie ponawiać próby po przekroczeniu limitu czasu. |
schedule |
CronSchedule | Opcjonalny harmonogram okresowy dla tego zadania. Domyślne zachowanie polega na tym, że zadanie jest uruchamiane po wyzwoleniu, poprzez kliknięcie Uruchom teraz w interfejsie użytkownika zadań lub wysłanie żądania API do runNow . |
max_concurrent_runs |
INT32 |
Opcjonalnie maksymalna liczba współbieżnych uruchomień tego zadania. Ustaw tę wartość, jeśli chcesz mieć możliwość współbieżnego wykonywania wielu uruchomień tego samego zadania. Jest to przydatne na przykład w przypadku wyzwalania zadania według częstego harmonogramu i umożliwienia nakładania się kolejnych przebiegów na siebie lub wyzwolenia wielu przebiegów, które różnią się swoimi parametrami wejściowymi. To ustawienie ma wpływ tylko na nowe uruchomienia. Załóżmy na przykład, że równoczesność zadania wynosi 4 i są cztery równoczesne aktywne uruchomienia. Ustawienie współbieżności na 3 nie spowoduje przerwania żadnego z aktywnych procesów. Jednak od tamtego momentu nowe uruchomienia są pomijane, chyba że są mniej niż 3 aktywne uruchomienia. Ta wartość nie może przekroczyć 1000. Ustawienie tej wartości na 0 spowoduje pominięcie wszystkich nowych uruchomień. Domyślne zachowanie polega na zezwalaniu na uruchomienie tylko 1 współbieżnego procesu. |
Struktura odpowiedzi
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Identyfikator kanoniczny nowo utworzonej pracy. |
lista
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/list |
GET |
Wyświetl listę wszystkich zadań.
Przykład
Żądanie
curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .
Zastąp <databricks-instance>
element nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykład adb-1234567890123456.7.azuredatabricks.net
.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"jobs": [
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
]
}
Struktura odpowiedzi
Nazwa pola | Rodzaj | Opis |
---|---|---|
jobs |
Tablica zadań | Lista zadań. |
Usunąć
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/delete |
POST |
Usuń zadanie i wyślij wiadomość e-mail na adresy określone w pliku JobSettings.email_notifications
. Nie zostanie podjęta żadna akcja, jeśli zadanie zostało już usunięte. Po usunięciu zadania ani jego szczegóły ani historia uruchamiania nie są widoczne w interfejsie użytkownika lub interfejsie API zadań. Zadanie zostanie usunięte po wykonaniu tego żądania. Jednak przebiegi, które były aktywne przed otrzymaniem tego żądania, mogą być nadal aktywne. Zostaną one zakończone asynchronicznie.
Przykład
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego Azure Databricks, na przykład . -
<job-id>
z identyfikatorem zadania, na przykład123
.
W tym przykładzie jest używany plik .netrc .
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Identyfikator kanoniczny zadania do usunięcia. To pole jest wymagane. |
Pobierz
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/get |
GET |
Pobierz informacje o jednej pracy.
Przykład
Żądanie
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .
Lub:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykładadb-1234567890123456.7.azuredatabricks.net
. -
<job-id>
z identyfikatorem zadania, na przykład123
.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Kanoniczny identyfikator zadania, o którym ma zostać pobrana informacja. To pole jest wymagane. |
Struktura odpowiedzi
Nazwa pola | Typ | Opis |
---|---|---|
job_id |
INT64 |
Identyfikator kanoniczny dla tego zadania. |
creator_user_name |
STRING |
Nazwa użytkownika twórcy. To pole nie zostanie uwzględnione w odpowiedzi, jeśli użytkownik został usunięty. |
settings |
Ustawienia zadań | Ustawienia dla tego zadania i wszystkich jego przebiegów. Te ustawienia można zaktualizować używając endpointów Reset lub Update. |
created_time |
INT64 |
Czas utworzenia tego zadania w milisekundach epoki (w milisekundach od 1.1.1.1970 UTC). |
resetowanie
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/reset |
POST |
Zastąp wszystkie ustawienia dla określonego zadania. Użyj punktu końcowego Update, aby częściowo zaktualizować ustawienia zadania.
Przykład
To przykładowe żądanie powoduje, że zadanie 2 jest identyczne z zadaniem 1 w przykładzie tworzenia .
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/reset \
--data @reset-job.json \
| jq .
reset-job.json
:
{
"job_id": 2,
"new_settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
}
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego Azure Databricks, na przykład . - Zawartość pól
reset-job.json
, które są odpowiednie dla twojego rozwiązania.
W tym przykładzie jest używany plik .netrc i plik jq.
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Kanoniczny identyfikator zadania, które ma zostać zresetowane. To pole jest wymagane. |
new_settings |
Ustawienia zadań | Nowe ustawienia zadania. Te ustawienia całkowicie zastępują stare ustawienia. Zmiany w polu JobSettings.timeout_seconds są stosowane do aktywnych uruchomień. Zmiany w innych polach są stosowane tylko do przyszłych przebiegów. |
Aktualizacja
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/update |
POST |
Dodaj, zmień lub usuń określone ustawienia istniejącego zadania. Użyj punktu końcowego Reset, aby zastąpić wszystkie ustawienia zadania.
Przykład
To przykładowe żądanie usuwa biblioteki i dodaje ustawienia powiadomień e-mail do zadania 1 zdefiniowanego w przykładzie tworzenia .
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/update \
--data @update-job.json \
| jq .
update-job.json
:
{
"job_id": 1,
"new_settings": {
"existing_cluster_id": "1201-my-cluster",
"email_notifications": {
"on_start": ["someone@example.com"],
"on_success": [],
"on_failure": []
}
},
"fields_to_remove": ["libraries"]
}
Zamień:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykładadb-1234567890123456.7.azuredatabricks.net
. - Zawartość pól
update-job.json
, które są odpowiednie dla twojego rozwiązania.
W tym przykładzie jest używany plik .netrc i plik jq.
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Kanoniczny identyfikator zadania do zaktualizowania. To pole jest wymagane. |
new_settings |
Ustawienia zadań | Nowe ustawienia zadania. Pola najwyższego poziomu określone w new_settings , z wyjątkiem tablic, są całkowicie zastępowane. Tablice są scalane na podstawie odpowiednich pól kluczy, takich jak task_key lubjob_cluster_key , a wpisy tablicy z tym samym kluczem są całkowicie zastępowane. Z wyjątkiem scalania tablic, częściowe aktualizowanie zagnieżdżonych pól nie jest obsługiwane.Zmiany w polu JobSettings.timeout_seconds są stosowane do aktywnych uruchomień. Zmiany w innych polach mają zastosowanie tylko do przyszłych przebiegów. |
fields_to_remove |
Tablica STRING |
Usuń pola najwyższego poziomu w ustawieniach zadania. Usuwanie pól zagnieżdżonych nie jest obsługiwane, z wyjątkiem wpisów z tablic tasks i job_clusters . Na przykład następujący argument jest prawidłowym argumentem dla tego pola:["libraries", "schedule", "tasks/task_1", "job_clusters/Default"] To pole jest opcjonalne. |
Uruchom teraz
Ważne
- Obszar roboczy jest ograniczony do 1000 współbieżnych uruchomień zadań. Odpowiedź
429 Too Many Requests
jest zwracana, gdy zażądano uruchomienia, które nie może rozpocząć się natychmiast. - Liczba zadań, które można utworzyć w obszarze roboczym w ciągu godziny, jest ograniczona do 10000 (obejmuje "uruchomienie zadań"). Limit ten dotyczy również zadań utworzonych przez interfejs API REST oraz przepływy pracy w notatnikach.
- Obszar roboczy może zawierać maksymalnie 12000 zapisanych zadań.
- Zadanie może zawierać maksymalnie 100 zadań.
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/run-now |
POST |
Uruchom zadanie teraz i zwróć run_id
uruchomionego zadania.
Napiwek
Jeśli wywołasz funkcję Utwórz razem z poleceniem Uruchom teraz, możesz zamiast tego użyć interfejsu Prześlij uruchomienia, co umożliwia bezpośrednie przesyłanie obciążenia bez potrzeby tworzenia zadania.
Przykład
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .
run-job.json
:
Przykładowy wniosek o zadanie notebooka:
{
"job_id": 1,
"notebook_params": {
"name": "john doe",
"age": "35"
}
}
Przykład zapytania o zadanie JAR
{
"job_id": 2,
"jar_params": ["john doe", "35"]
}
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykład . - Zawartość pól
run-job.json
, które są odpowiednie dla twojego rozwiązania.
W tym przykładzie jest używany plik .netrc i plik jq.
Struktura żądań
Nazwa pola | Typ | Opis |
---|---|---|
job_id |
INT64 |
|
jar_params |
Tablica STRING |
Lista parametrów dla zadań z JAR, np. "jar_params": ["john doe", "35"] . Parametry będą używane do wywoływania głównej funkcji klasy głównej określonej w zadaniu Spark JAR. Jeśli wartość nie zostanie określona w parametrze run-now , domyślna będzie pusta lista. nie można określić jar_params w połączeniu z notebook_params. Reprezentacja JSON tego pola (tj. {"jar_params":["john doe","35"]} ) nie może przekraczać 10 000 bajtów. |
notebook_params |
Mapa ParamPair | Mapa przypisania kluczy do wartości dla zadań w notatniku, np."notebook_params": {"name": "john doe", "age": "35"} . Mapa jest przekazywana do notesu i jest dostępna za pośrednictwem funkcji dbutils.widgets.get .Jeśli nie zostały one określone podczas run-now , uruchomienie korzysta z podstawowych parametrów zadania.Nie można określić notebook_params w połączeniu z jar_params. Reprezentacja tego pola w formacie JSON (tj. {"notebook_params":{"name":"john doe","age":"35"}} ) nie może przekraczać 10 000 bajtów. |
python_params |
Tablica STRING |
Lista parametrów dla zadań w języku Python, np. "python_params": ["john doe", "35"] . Parametry zostaną przekazane do pliku języka Python jako parametry wiersza polecenia. Jeśli parametr zostanie określony na run-now , zastąpi parametry określone w ustawieniu zadania. Reprezentacja JSON tego pola (tj. {"python_params":["john doe","35"]} ) nie może przekraczać 10 000 bajtów. |
spark_submit_params |
Tablica STRING |
Lista parametrów zadań związanych z przesyłaniem w Spark, np."spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . Parametry zostaną przekazane do skryptu spark-submit jako parametry wiersza polecenia. Jeśli parametr zostanie określony na run-now , zastąpi parametry określone w ustawieniu zadania. Reprezentacja JSON tego pola nie może przekraczać 10 000 bajtów. |
idempotency_token |
STRING |
Opcjonalny token, którego można użyć do zagwarantowania idempotentności żądań uruchamiania zadania. Jeśli przebieg z podanym tokenem już istnieje, żądanie nie tworzy nowego przebiegu, ale zwraca identyfikator istniejącego przebiegu. Jeśli usunięty zostanie przebieg z podanym tokenem, zwrócony zostanie błąd. Jeśli określisz token idempotentności, po niepowodzeniu możesz ponowić próbę, dopóki żądanie nie powiedzie się. Usługa Azure Databricks gwarantuje, że dokładnie jedno uruchomienie jest uruchamiane za pomocą tego tokenu idempotentności. Ten token musi zawierać co najwyżej 64 znaki. Aby uzyskać więcej informacji, zobacz Jak zapewnić idempotentność zadań. |
Struktura odpowiedzi
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Globalnie unikalny identyfikator nowo uruchomionego przebiegu. |
number_in_job |
INT64 |
Numer sekwencji tego przebiegu wśród wszystkich wykonań zadania. |
Przesyłanie wyników
Ważne
- Obszar roboczy jest ograniczony do 1000 współbieżnych uruchomień zadań. Odpowiedź
429 Too Many Requests
jest zwracana, gdy zażądano uruchomienia, które nie może rozpocząć się natychmiast. - Liczba zadań, które można utworzyć w obszarze roboczym w ciągu godziny, jest ograniczona do 10000 (obejmuje "runs submit"). Limit ten dotyczy również zadań utworzonych przez interfejs API REST oraz przepływy pracy w notatnikach.
- Obszar roboczy może zawierać maksymalnie 12000 zapisanych zadań.
- Zadanie może zawierać maksymalnie 100 zadań.
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/submit |
POST |
Prześlij jednorazowe uruchomienie. Ten punkt końcowy umożliwia bezpośrednie przesyłanie obciążenia bez tworzenia zadania. Użyj interfejsu jobs/runs/get
API, aby sprawdzić stan uruchomienia po przesłaniu zadania.
Przykład
Żądanie
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/submit \
--data @submit-job.json \
| jq .
submit-job.json
:
{
"run_name": "my spark task",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
Wymiana:
-
<databricks-instance>
z nazwą instancji obszaru roboczego Azure Databricks, na przykład . - Zawartość pól
submit-job.json
, które są odpowiednie dla twojego rozwiązania.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"run_id": 123
}
Struktura żądań
Ważne
- Kiedy uruchamiasz zadanie w nowym klastrze zadań, jest ono traktowane jako obciążenie Jobs Compute (zautomatyzowane) objęte wyceną Jobs Compute.
- Podczas uruchamiania zadania na istniejącym klastrze ogólnego przeznaczenia traktuje się je jako obciążenie obliczeniowe ogólnego przeznaczenia (interaktywne) zgodne z cennikiem obliczeń ogólnego przeznaczenia.
Nazwa pola | Rodzaj | Opis |
---|---|---|
existing_cluster_id LUB new_cluster |
STRING OR NewCluster |
Jeśli existing_cluster_id, identyfikator istniejącego klastra, który będzie używany dla wszystkich uruchomień tego zadania. W przypadku uruchamiania zadań w istniejącym klastrze może być konieczne ręczne ponowne uruchomienie klastra, jeśli przestanie odpowiadać. Zalecamy uruchamianie zadań w nowych klastrach w celu zwiększenia niezawodności. Jeśli zostanie utworzony new_cluster, to będzie to opis klastra dla każdego uruchomienia. Jeśli określono wartość PipelineTask, to pole może być puste. |
notebook_task OR LUB spark_jar_task spark_python_task OR LUB spark_submit_task pipeline_task LUB run_job_task |
NotebookTask lub SparkJarTask lub SparkPythonTask lub SparkSubmitTask lub PipelineTask lub RunJobTask | Jeśli notebook_task jest prawdą, oznacza to, że to zadanie powinno uruchomić notatnik. Nie można określić tego pola w połączeniu z spark_jar_task. Jeśli spark_jar_task, wskazuje, że to zadanie powinno uruchomić plik JAR. Jeśli spark_python_task, wskazuje, że to zadanie powinno uruchomić plik języka Python. Jeśli spark_submit_task jest ustawiona, wskazuje to, że to zadanie powinno zostać uruchomione przez skrypt spark-submit. Jeśli występuje pipeline_task, to wskazuje, że to zadanie powinno uruchomić potok DLT. Jeśli funkcja run_job_task, oznacza, że to zadanie powinno uruchomić inne zadanie. |
run_name |
STRING |
Opcjonalna nazwa biegu. Domyślna wartość to Untitled . |
webhook_notifications |
WebhookNotifications | Opcjonalny zestaw miejsc docelowych systemu do powiadamiania o rozpoczęciu, zakończeniu lub awarii tego zadania. |
notification_settings |
UstawieniaPowiadomieńOPracy | Opcjonalne ustawienia powiadomień, które są używane podczas wysyłania powiadomień do każdego z webhook_notifications w ramach tej sesji. |
libraries |
Zbiór Library | Opcjonalna lista bibliotek do zainstalowania w klastrze, które będą wykonywać zadanie. Wartość domyślna to pusta lista. |
timeout_seconds |
INT32 |
Opcjonalny limit czasu, który jest stosowany do każdego uruchomienia tego zadania. Domyślne zachowanie polega na braku limitu czasu. |
idempotency_token |
STRING |
Opcjonalny token, którego można użyć do zagwarantowania idempotentności żądań uruchamiania zadania. Jeśli przebieg z podanym tokenem już istnieje, żądanie nie tworzy nowego przebiegu, ale zwraca identyfikator istniejącego przebiegu. Jeśli usunięto przebieg z podanym tokenem, wystąpi błąd. Jeśli określisz token idempotentności, po niepowodzeniu możesz ponowić próbę, dopóki żądanie nie powiedzie się. Usługa Azure Databricks gwarantuje, że dokładnie jedno uruchomienie zostało uruchomione przy użyciu tego tokenu idempotentności. Ten token musi zawierać co najwyżej 64 znaki. Aby uzyskać więcej informacji, zobacz Jak zapewnić idempotentność zadań. |
Struktura odpowiedzi
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Identyfikator kanoniczny dla nowo przesłanego przebiegu. |
Lista przebiegów
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/list |
GET |
Lista jest uporządkowana w kolejności malejącej według czasu rozpoczęcia.
Uwaga
Przebiegi są automatycznie usuwane po upływie 60 dni. Jeśli chcesz odwoływać się do nich po upływie 60 dni, zapisz stare wyniki, zanim wygasną. Aby wyeksportować przy użyciu interfejsu użytkownika, zobacz Eksportowanie wyników uruchamiania zadania. Aby wyeksportować przy użyciu interfejsu API zadań, zobacz Eksportowanie przebiegów.
Przykład
Żądanie
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/list?job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
Lub:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/list \
--data 'job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
Wymiana:
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks , na przykład . -
<job-id>
z identyfikatorem zadania, na przykład123
. - "
<true-false>
ztrue
lubfalse
. -
<offset>
z wartościąoffset
. -
<limit>
z wartościąlimit
. -
<run-type>
z wartościąrun_type
.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"runs": [
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/donald@duck.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
],
"has_more": true
}
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
active_only LUB completed_only |
BOOL LUB BOOL |
Jeśli active_only to true , w wynikach są uwzględniane tylko aktywne uruchomienia. W przeciwnym razie są wyświetlane zarówno aktywne, jak i ukończone uruchomienia. Aktywne uruchomienie to uruchomienie w obiekcie PENDING , RUNNING , lub TERMINATING RunLifecycleState. To pole nie może być true , gdy completed_only wynosi true .Jeśli completed_only jest true , w wynikach pojawiają się tylko ukończone uruchomienia; w przeciwnym razie, uwzględniane są zarówno aktywne, jak i ukończone uruchomienia. To pole nie może być true , gdy active_only jest true . |
job_id |
INT64 |
Zadanie, dla którego ma być uruchomiona lista. W przypadku pominięcia usługa Zadań będzie wyświetlać listę wykonań ze wszystkich zadań. |
offset |
INT32 |
Przesunięcie pierwszego przebiegu, które ma zostać zwrócone, w stosunku do najnowszego przebiegu. |
limit |
INT32 |
Liczba przebiegów do zwrócenia. Ta wartość powinna być większa niż 0 i mniejsza niż 1000. Wartość domyślna to 20. Jeśli żądanie określa limit wynoszący 0, usługa będzie zamiast tego używać maksymalnego limitu. |
run_type |
STRING |
Typ przebiegów do zwrócenia. Aby uzyskać opis typów Run, zobacz Run. |
Struktura odpowiedzi
Nazwa pola | Typ | Opis |
---|---|---|
runs |
Tablica Run | Lista uruchomień, od najnowszego do najstarszego. |
has_more |
BOOL |
Jeśli to prawda, dodatkowe uruchomienia odpowiadające podanemu filtrowi są dostępne do wyświetlenia. |
Pobierz przebiegi
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/get |
GET |
Pobierz metadane przebiegu.
Uwaga
Przebiegi są automatycznie usuwane po upływie 60 dni. Jeśli chcesz odwoływać się do nich po upływie 60 dni, zapisz stare wyniki, zanim wygasną. Aby wyeksportować przy użyciu interfejsu użytkownika, zobacz Eksportowanie wyników uruchamiania zadania. Aby wyeksportować przy użyciu interfejsu API Jobs, zobacz Eksport przebiegów.
Przykład
Żądanie
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .
Lub:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks , na przykładadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
z identyfikatorem przebiegu, na przykład123
.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Kanoniczny identyfikator przebiegu, dla którego mają zostać pobrane metadane. To pole jest wymagane. |
Struktura odpowiedzi
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Kanoniczny identyfikator zadania zawierającego ten przebieg. |
run_id |
INT64 |
Identyfikator kanoniczny przebiegu. Ten identyfikator jest unikatowy dla wszystkich uruchomień i wszystkich zadań. |
number_in_job |
INT64 |
Numer sekwencji tego przebiegu wśród wszystkich wykonań zadania. Ta wartość zaczyna się od 1. |
original_attempt_run_id |
INT64 |
Jeśli ten przebieg jest powtórką wcześniejszej próby uruchomienia, to pole zawiera "run_id" oryginalnej próby; w przeciwnym razie będzie taki sam jak "run_id". |
state |
RunState | Wyniki przebiegu i stany cyklu życia. |
schedule |
CronSchedule | Harmonogram cron, który wyzwolił to uruchomienie, jeśli został wyzwolony przez harmonogram okresowy. |
task |
Zadanie | Zadanie wykonywane przez uruchomienie, jeśli istnieje. |
cluster_spec |
ClusterSpec | Zrzut specyfikacji klastra dla zadania w momencie utworzenia tego przebiegu. |
cluster_instance |
ClusterInstance | Klaster używany na potrzeby tego przebiegu. Jeśli uruchomienie jest skonfigurowane do użycia nowego klastra, to pole zostanie wypełnione po tym, jak usługa Zadań poprosi o klaster dla przebiegu. |
overriding_parameters |
RunParameters | Parametry użyte dla tego przebiegu. |
start_time |
INT64 |
Czas w milisekundach od początku epoki, kiedy rozpoczęto ten proces (milisekundy od 1.1.1970 UTC). Może to nie być czas rozpoczęcia wykonywania zadania, na przykład jeśli zadanie zostało zaplanowane do uruchomienia w nowym klastrze, czas ten dotyczy momentu wydania wywołania tworzenia klastra. |
end_time |
INT64 |
Czas w milisekundach epoki, w którym ten przebieg zakończył się (milisekundy od 1/1/1970 UTC). To pole zostanie ustawione na wartość 0, jeśli zadanie jest nadal uruchomione. |
setup_duration |
INT64 |
Czas w milisekundach zajęło skonfigurowanie klastra. W przypadku przebiegów uruchamianych w nowych klastrach jest to moment utworzenia klastra, a dla przebiegów uruchamianych w istniejących klastrach ten czas powinien być bardzo krótki. Łączny czas trwania przebiegu to suma wartości setup_duration ,execution_duration i cleanup_duration . Pole setup_duration ma wartość 0 dla uruchomiń zadań wielotaskowych. Całkowity czas trwania wykonania zadania wielozadaniowego to wartośćrun_duration pole. |
execution_duration |
INT64 |
Czas w milisekundach potrzebny na wykonanie poleceń w pliku JAR lub notesie albo ich zakończenie, niepowodzenie, przekroczenie limitu czasu, anulowanie czy napotkanie nieoczekiwanego błędu. Łączny czas trwania biegu to suma setup_duration , execution_duration icleanup_duration . Pole execution_duration ma wartość 0 dla uruchomiń zadań wielotaskowych. Łączny czas trwania uruchomienia zadania wielotaskowego to wartość run_duration pola. |
cleanup_duration |
INT64 |
Czas w milisekundach, który trwał, aby zakończyć działanie klastra i wyczyścić wszystkie skojarzone artefakty. Łączny czas trwania przebiegu to suma wartości setup_duration , execution_duration i cleanup_duration . Pole cleanup_duration ma wartość 0 dla uruchomiń zadań wielotaskowych. Łączny czas trwania uruchomienia zadania wielotaskowego to wartość run_duration pola. |
run_duration |
INT64 |
Czas w milisekundach, który zajął przebieg zadania i zakończenie wszystkich jego napraw. To pole jest ustawione tylko dla uruchomień zadań wielozadaniowych, a nie dla uruchomień pojedynczych zadań. Czas trwania przebiegu zadania jest sumąsetup_duration , execution_duration i cleanup_duration . |
trigger |
Typ wyzwalacza | Typ wyzwalacza, który uruchomił ten przebieg. |
creator_user_name |
STRING |
Nazwa użytkownika twórcy. To pole nie zostanie uwzględnione w odpowiedzi, jeśli użytkownik został usunięty |
run_page_url |
STRING |
Adres URL strony szczegółów przebiegu. |
Uruchamia eksportowanie
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/export |
GET |
Wyeksportuj i pobierz uruchomione zadanie.
Uwaga
Tylko przebiegi notatników można eksportować w formacie HTML. Eksportowanie przebiegów innych typów zakończy się niepowodzeniem.
Przykład
Żądanie
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .
Lub:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .
Zamień:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks , na przykładadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
z identyfikatorem przebiegu, na przykład123
.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"views": [
{
"content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
"name": "my-notebook",
"type": "NOTEBOOK"
}
]
}
Aby wyodrębnić notes HTML z odpowiedzi JSON, pobierz i uruchom ten skrypt języka Python.
Uwaga
Treść notesu w obiekcie __DATABRICKS_NOTEBOOK_MODEL
jest zakodowana.
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Identyfikator kanoniczny przebiegu. To pole jest wymagane. |
views_to_export |
ViewsToExport | Które widoki mają być eksportowane (KOD, DASHBOARDY lub WSZYSTKIE). Wartość domyślna to CODE. |
Struktura odpowiedzi
Nazwa pola | Rodzaj | Opis |
---|---|---|
views |
Tablica elementu ViewItem | Wyeksportowana zawartość w formacie HTML (jedna dla każdego elementu widoku). |
Anulowanie uruchomień
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/cancel |
POST |
Anuluj wykonanie zadania. Ponieważ proces jest anulowany asynchronicznie, może on nadal działać po zakończeniu tego żądania. Uruchomienie zostanie wkrótce zakończone. Jeśli przebieg znajduje się już w terminalu life_cycle_state
, ta metoda jest metodą no-op.
Ten punkt końcowy sprawdza, czy run_id
parametr jest prawidłowy, a dla nieprawidłowych parametrów zwraca kod stanu HTTP 400.
Przykład
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykład ,adb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
z identyfikatorem przebiegu, na przykład123
.
W tym przykładzie jest używany plik .netrc .
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Kanoniczny identyfikator uruchomienia do anulowania. To pole jest wymagane. |
Przebiegi zostają anulowane wszystkie
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/cancel-all |
POST |
Anuluj wszystkie aktywne uruchomienia zadania. Ponieważ przebieg jest anulowany asynchronicznie, nie zapobiega uruchamianiu nowych przebiegów.
Ten punkt końcowy sprawdza, czy job_id
parametr jest prawidłowy, a dla nieprawidłowych parametrów zwraca kod stanu HTTP 400.
Przykład
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'
Zamień:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykładadb-1234567890123456.7.azuredatabricks.net
. -
<job-id>
z identyfikatorem zadania, na przykład123
.
W tym przykładzie jest używany plik .netrc .
Struktura żądań
Nazwa pola | Typ | Opis |
---|---|---|
job_id |
INT64 |
Kanoniczny identyfikator zadania, aby anulować wszystkie przebiegi. To pole jest wymagane. |
Przebiegi generują dane wyjściowe
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/get-output |
GET |
Pobierz dane wyjściowe i metadane pojedynczego uruchomienia zadania. Gdy zadanie notesu zwraca wartość za pośrednictwem wywołania funkcji dbutils.notebook.exit(), możesz użyć tego punktu końcowego, aby pobrać tę wartość. Usługa Azure Databricks ogranicza ten interfejs API, aby zwracać jedynie pierwsze 5 MB danych wyjściowych. Aby zwrócić większy wynik, możesz przechowywać wyniki zadania w usłudze przechowywania w chmurze.
Ten punkt końcowy sprawdza, czy run_id
parametr jest prawidłowy, a dla nieprawidłowych parametrów zwraca kod stanu HTTP 400.
Przebiegi są automatycznie usuwane po upływie 60 dni. Jeśli chcesz odwoływać się do nich po upływie 60 dni, zapisz stare wyniki, zanim wygasną. Aby wyeksportować przy użyciu interfejsu użytkownika, zobacz Eksportowanie wyników uruchamiania zadania. Aby wyeksportować za pomocą Jobs API, zobacz Eksport przebiegów.
Przykład
Żądanie
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .
Lub:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykład . -
<run-id>
z identyfikatorem przebiegu, na przykład123
.
W tym przykładzie jest używany plik .netrc i plik jq.
Odpowiedź
{
"metadata": {
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
},
"notebook_output": {
"result": "the maybe truncated string passed to dbutils.notebook.exit()"
}
}
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Identyfikator kanoniczny przebiegu. W przypadku pracy z wieloma zadaniami, jest to run_id uruchomienie jednego z zadań. Zobacz Wyniki wydruku. To pole jest wymagane. |
Struktura odpowiedzi
Nazwa pola | Typ | Opis |
---|---|---|
notebook_output LUB error |
Wynik notatnika LUB STRING |
Jeśli notebook_output, dane wyjściowe zadania notatnika, jeśli są dostępne. Zadanie w notatniku, które kończy się (pomyślnie lub z błędem) bez wywołaniadbutils.notebook.exit() jest uznawany za mający pusty wynik. To pole zostanie ustawione, ale jego wartość wyniku będzie pusta.Jeśli błąd, komunikat o błędzie wskazujący, dlaczego dane wyjściowe są niedostępne. Komunikat jest nieustrukturyzowany, a jego dokładny format może ulec zmianie. |
metadata |
Run | Wszystkie szczegóły przebiegu z wyjątkiem wyników. |
Przebiegi usuwania
Punkt końcowy | Metoda HTTP |
---|---|
2.0/jobs/runs/delete |
POST |
Usuń nieaktywny proces. Zwraca błąd, jeśli przebieg jest aktywny.
Przykład
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'
Wymiana:
-
<databricks-instance>
z nazwą wystąpienia obszaru roboczego Azure Databricks, na przykładadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
z identyfikatorem przebiegu, na przykład123
.
W tym przykładzie jest używany plik .netrc .
Struktura żądań
Nazwa pola | Rodzaj | Opis |
---|---|---|
run_id |
INT64 |
Identyfikator kanoniczny przebiegu, dla którego mają zostać pobrane metadane. |
Struktury danych
W tej sekcji:
- ABFSSStorageInfo
- AutoScale
- AzureAttributes
- AzureAvailability
- ClusterInstance
- ClusterLogConf
- ClusterSpec
- ClusterTag
- CronSchedule
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- Zadanie
- PowiadomieniaEmailoweDotyczącePracy
- UstawieniaPowiadomieńOPracy
- Ustawienia zadań
- Zadanie
- ZasadyZdrowotneDlaZadań
- ZasadyZdrowotneDlaPracy
- Biblioteka
- MavenLibrary
- NewCluster
- Wynik Notebooka
- NotebookTask
- ParamPair
- PipelineTask
- PythonPyPiLibrary
- RCranLibrary
- Run
- RunJobTask
- RunLifeCycleState
- RunParameters
- RunResultState
- RunState
- SparkConfPair
- SparkEnvPair
- SparkJarTask
- SparkPythonTask
- SparkSubmitTask
- Typ wyzwalacza
- ViewItem
- Typ widoku
- ViewsToExport
- Webhook
- WebhookNotifications
- WorkspaceStorageInfo
ABFSSStorageInfo
Informacje o usłudze magazynowania Azure Data Lake Storage (ADLS).
Nazwa pola | Typ | Opis |
---|---|---|
destination |
STRING |
Miejsce docelowe pliku. Przykład: abfss://... |
AutoScale
Zakres definiujący minimalną i maksymalną liczbę pracowników klastra.
Nazwa pola | Rodzaj | Opis |
---|---|---|
min_workers |
INT32 |
Minimalna liczba pracowników, do której klaster może być zmniejszony, gdy jest niewykorzystany w pełni. Jest to również początkowa liczba pracowników, które klaster będzie miał po jego utworzeniu. |
max_workers |
INT32 |
Maksymalna liczba pracowników, do której klaster może zostać rozbudowany w przypadku przeciążenia. max_workers musi być ściśle większy niż min_workers. |
AzureAttributes
Atrybuty ustawione podczas tworzenia klastra powiązane z platformą Azure.
Nazwa pola | Rodzaj | Opis |
---|---|---|
first_on_demand |
INT32 |
Pierwsze węzły first_on_demand klastra zostaną umieszczone na instancjach na żądanie. Ta wartość musi być większa niż 0 lub w przeciwnym razie sprawdzanie poprawności tworzenia klastra kończy się niepowodzeniem. Jeśli ta wartość jest większa lub równa bieżącemu rozmiarowi klastra, wszystkie nody zostaną przydzielone do wystąpień na żądanie. Jeśli ta wartość jest mniejsza niż bieżący rozmiar klastra, first_on_demand węzły zostaną umieszczone na wystąpieniach na żądanie, a reszta zostanie umieszczona w wystąpieniach dostępności. Ta wartość nie ma wpływu na rozmiar klastra i nie może być zmutowana w okresie istnienia klastra. |
availability |
AzureAvailability | Typ dostępności używany dla wszystkich kolejnych węzłów obok first_on_demand tych. |
spot_bid_max_price |
DOUBLE |
Maksymalna cena licytacji używana dla wystąpień typu spot platformy Azure. Można ustawić tę wartość na większą lub równą bieżącej cenie spot. Można również ustawić tę wartość na -1 (wartość domyślna), co oznacza, że instancja nie może być usunięta z powodu kosztu. Cena wystąpienia będzie bieżącą ceną wystąpień typu spot lub ceną wystąpienia standardowego. Możesz wyświetlić historyczne ceny i stawki eksmisji w witrynie Azure Portal. |
Dostępność w Azure
Zachowanie typu dostępności instancji platformy Azure.
Rodzaj | Opis |
---|---|
SPOT_AZURE |
Użyj wystąpień typu spot. |
ON_DEMAND_AZURE |
Użyj wystąpień na żądanie. |
SPOT_WITH_FALLBACK_AZURE |
Najlepiej używać wystąpień typu spot, ale należy przejść na używanie wystąpień na żądanie, jeśli nie można uzyskać wystąpień typu spot (na przykład, gdy ceny spot na platformie Azure są zbyt wysokie lub gdy wyczerpany jest przydział). Nie dotyczy dostępności basenu. |
Instancja klastra
Identyfikatory dla klastra i kontekstu Spark używanego przez wykonanie. Te dwie wartości razem identyfikują kontekst wykonywania przez cały czas.
Nazwa pola | Rodzaj | Opis |
---|---|---|
cluster_id |
STRING |
Kanoniczny identyfikator klastra używanego przez uruchomienie. To pole jest zawsze dostępne dla uruchomień na istniejących klastrach. W przypadku przebiegów w nowych klastrach staje się on dostępny po utworzeniu klastra. Ta wartość może służyć do wyświetlania dzienników, przechodząc na stronę /#setting/sparkui/$cluster_id/driver-logs . Logi będą nadal dostępne po zakończeniu procesu uruchamiania.Odpowiedź nie będzie zawierać tego pola, jeśli identyfikator nie jest jeszcze dostępny. |
spark_context_id |
STRING |
Kanoniczny identyfikator kontekstu Spark używany w trakcie uruchamiania. To pole zostanie wypełnione po rozpoczęciu uruchomienia. Ta wartość może służyć do wyświetlania interfejsu użytkownika Spark, przechodząc do /#setting/sparkui/$cluster_id/$spark_context_id . Interfejs użytkownika Spark będzie nadal dostępny po zakończeniu uruchomienia.Odpowiedź nie będzie zawierać tego pola, jeśli identyfikator nie jest jeszcze dostępny. |
ClusterLogConf
Ścieżka do logu klastra.
Nazwa pola | Rodzaj | Opis |
---|---|---|
dbfs |
Lokalizacja DBFS logów klastra. Należy podać miejsce docelowe. Na przykład { "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
Specyfikacja klastra
Ważne
- Kiedy uruchamiasz zadanie w nowym klastrze zadań, jest ono traktowane jako zautomatyzowane obciążenie Jobs Compute, które podlega wycenie Jobs Compute.
- Podczas uruchamiania zadania na istniejącym klastrze ogólnego przeznaczenia traktuje się je jako obciążenie obliczeniowe ogólnego przeznaczenia (interaktywne) zgodne z cennikiem obliczeń ogólnego przeznaczenia.
Nazwa pola | Typ | Opis |
---|---|---|
existing_cluster_id LUB new_cluster |
STRING OR NewCluster |
Jeśli existing_cluster_id, identyfikator istniejącego klastra, który będzie używany dla wszystkich uruchomień tego zadania. W przypadku uruchamiania zadań w istniejącym klastrze może być konieczne ręczne ponowne uruchomienie klastra, jeśli przestanie odpowiadać. Zalecamy uruchamianie zadań w nowych klastrach w celu zwiększenia niezawodności. Jeśli new_cluster, opis klastra, który zostanie utworzony dla każdego uruchomienia. Jeśli określono wartość PipelineTask, to pole może być puste. |
libraries |
Tablica biblioteki | Opcjonalna lista bibliotek do zainstalowania w klastrze, które będą wykonywać zadanie. Wartość domyślna to pusta lista. |
ClusterTag
Definicja tagu klastra.
Typ | Opis |
---|---|
STRING |
Klucz tagu. Klucz musi:
|
STRING |
Wartość tagu. Długość wartości musi być mniejsza lub równa 256 znakom UTF-8. |
CronSchedule
Nazwa pola | Typ | Opis |
---|---|---|
quartz_cron_expression |
STRING |
Wyrażenie Cron używające składni kwarcowej opisujące harmonogram zadania. Aby uzyskać szczegółowe informacje, zapoznaj się z Wyzwalacz Cron. To pole jest wymagane. |
timezone_id |
STRING |
Identyfikator strefy czasowej Java. Harmonogram zadania zostanie ustalony w odniesieniu do tej strefy czasowej. Aby uzyskać szczegółowe informacje, zobacz Java TimeZone . To pole jest wymagane. |
pause_status |
STRING |
Określ, czy ten harmonogram jest wstrzymany, czy nie. "WSTRZYMANO" lub "WZNOWIONO". |
DbfsStorageInfo
Informacje o przechowywaniu DBFS.
Nazwa pola | Rodzaj | Opis |
---|---|---|
destination |
STRING |
Miejsce docelowe DBFS. Przykład: dbfs:/my/path |
Informacje o Przechowywaniu Plików
Informacje o magazynie plików.
Uwaga
Ten typ lokalizacji jest dostępny tylko dla klastrów skonfigurowanych przy użyciu usług Databricks Container Services.
Nazwa pola | Typ | Opis |
---|---|---|
destination |
STRING |
Miejsce docelowe pliku. Przykład: file:/my/file.sh |
InitScriptInfo
Ścieżka do skryptu inicjującego.
Aby uzyskać instrukcje dotyczące używania skryptów inicjujących w usługach Databricks Container Services, zobacz Używanie skryptu inicjującego.
Uwaga
Typ magazynu plików (nazwa pola: file
) jest dostępny tylko dla klastrów skonfigurowanych przy użyciu usług Kontenerowych Databricks. Zobacz FileStorageInfo.
Nazwa pola | Rodzaj | Opis |
---|---|---|
workspace OR dbfs (niezalecane)LUB abfss |
WorkspaceStorageInfo DbfsStorageInfo (przestarzałe) ABFSSStorageInfo |
Lokalizacja obszaru roboczego skryptu inicjowania. Należy podać miejsce docelowe. Na przykład:{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (Przestarzała) lokalizacja DBFS skryptu inicjalizacyjnego. Należy podać miejsce docelowe. Na przykład: { "dbfs" : { "destination" : "dbfs:/home/init_script" } } Lokalizacja skryptu inicjowania usługi Azure Data Lake Storage (ADLS). Należy podać miejsce docelowe. Na przykład { "abfss": { "destination" : "abfss://..." } } |
Zadanie
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Identyfikator kanoniczny dla tego zadania. |
creator_user_name |
STRING |
Nazwa użytkownika twórcy. To pole nie zostanie uwzględnione w odpowiedzi, jeśli użytkownik został już usunięty. |
run_as |
STRING |
Nazwa użytkownika, w ramach którego zostanie uruchomione zadanie.
run_as jest oparty na bieżących ustawieniach zadania i jest przypisany twórcy zadania, jeśli kontrola dostępu do zadania jest wyłączona, lub na uprawnieniach is_owner , jeśli kontrola dostępu do zadania jest włączona. |
settings |
Ustawienia zadań | Ustawienia dla tego zadania i wszystkich jego przebiegów. Te ustawienia można zaktualizować przy użyciu resetJob metody . |
created_time |
INT64 |
Czas utworzenia tego zadania w milisekundach epoki (w milisekundach od 1.1.1.1970 UTC). |
Powiadomienia e-mail o pracy
Ważne
Pola on_start, on_success i on_failure akceptują tylko znaki łacińskie (zestaw znaków ASCII). Użycie znaków innych niż ASCII zwróci błąd. Przykłady nieprawidłowych znaków innych niż ASCII to chiński, japoński kanjis i emoji.
Nazwa pola | Typ | Opis |
---|---|---|
on_start |
Tablica STRING |
Lista adresów e-mail, które mają być powiadamiane o rozpoczęciu procesu. Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. |
on_success |
Tablica STRING |
Lista adresów e-mail, które mają być powiadamiane po pomyślnym zakończeniu procesu. Przebieg jest uznawany za zakończony pomyślnie, jeśli kończy się elementem TERMINATED life_cycle_state i SUCCESSFUL result_state . Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. |
on_failure |
Tablica STRING |
Lista adresów e-mail, które mają być powiadamiane, gdy przebieg zakończy się niepowodzeniem. Przebieg jest uznawany za zakończony niepowodzeniem, jeśli kończy się na INTERNAL_ERROR life_cycle_state lub SKIPPED , FAILED lub TIMED_OUT stan_wyniku. Jeśli ta wartość nie jest określona podczas tworzenia, resetowania lub aktualizowania listy jest pusta, a powiadomienia nie są wysyłane. |
on_duration_warning_threshold_exceeded |
Tablica STRING |
Lista adresów e-mail, które mają być powiadamiane, gdy czas trwania uruchomienia przekracza próg określony dla metryki RUN_DURATION_SECONDS w polu health . Jeśli dla metryki RUN_DURATION_SECONDS nie określono żadnej reguły w polu health zadania, powiadomienia nie są wysyłane. |
no_alert_for_skipped_runs |
BOOL |
Jeśli jest to prawda, nie wysyłaj wiadomości e-mail do określonych adresatów w on_failure , gdy przebieg został pominięty. |
Nazwa pola | Rodzaj | Opis |
---|---|---|
on_start |
Tablica elementów webhook | Opcjonalna lista adresów docelowych systemu, które mają być powiadamiane o rozpoczęciu uruchomienia. Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Można określić maksymalnie 3 miejsca docelowe dla właściwości on_start . |
on_success |
Tablica elementów webhook | Opcjonalna lista systemowych miejsc docelowych do powiadomienia o pomyślnym zakończeniu procesu. Przebieg jest uznawany za zakończony pomyślnie, jeśli kończy się elementem TERMINATED life_cycle_state i SUCCESSFUL result_state . Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Można określić maksymalnie 3 miejsca docelowe dla właściwości on_success . |
on_failure |
Tablica elementów webhook | Opcjonalna lista systemowych lokalizacji docelowych, które mają być powiadamiane, gdy proces zakończy się niepowodzeniem. Przebieg jest uznawany za zakończony niepowodzeniem, jeśli kończy się na INTERNAL_ERROR life_cycle_state lub SKIPPED , FAILED lub TIMED_OUT stan_wyniku. Jeśli ta wartość nie jest określona podczas tworzenia, resetowania lub aktualizowania listy jest pusta, a powiadomienia nie są wysyłane. Można określić maksymalnie 3 miejsca docelowe dla właściwości on_failure . |
on_duration_warning_threshold_exceeded |
Tablica elementów webhook | Opcjonalna lista systemowych miejsc docelowych do powiadomienia, gdy czas trwania przebiegu przekracza próg określony dla metryki RUN_DURATION_SECONDS w polu health . Można określić maksymalnie 3 miejsca docelowe dla właściwości on_duration_warning_threshold_exceeded . |
UstawieniaPowiadomieńOPracy
Nazwa pola | Rodzaj | Opis |
---|---|---|
no_alert_for_skipped_runs |
BOOL |
Jeśli to prawda, nie wysyłaj powiadomień do adresatów określonych w on_failure , jeśli uruchomienie zostanie pominięte. |
no_alert_for_canceled_runs |
BOOL |
Jeśli to prawda, nie wysyłaj powiadomień do adresatów określonych w on_failure , jeśli proces zostanie anulowany. |
alert_on_last_attempt |
BOOL |
Jeśli wartość true, nie wysyłaj powiadomień do adresatów określonych w on_start parametrze dla ponawianych uruchomień i nie wysyłaj powiadomień do adresatów określonych w on_failure parametrze do ostatniej próby uruchomienia. |
Ustawienia zadań
Ważne
- Podczas uruchamiania zadania w nowym klastrze zadań, zadanie traktowane jest jako zautomatyzowane obciążenie obliczeniowe, podlegające ustaleniom cenowym dla usług Jobs Compute.
- Podczas uruchamiania zadania na istniejącym klastrze ogólnego przeznaczenia traktuje się je jako obciążenie obliczeniowe ogólnego przeznaczenia (interaktywne) zgodne z cennikiem obliczeń ogólnego przeznaczenia.
Ustawienia pracy. Te ustawienia można zaktualizować przy użyciu resetJob
metody .
Nazwa pola | Rodzaj | Opis |
---|---|---|
existing_cluster_id LUB new_cluster |
STRING OR NewCluster |
Jeśli existing_cluster_id, identyfikator istniejącego klastra, który będzie używany dla wszystkich uruchomień tego zadania. W przypadku uruchamiania zadań w istniejącym klastrze może być konieczne ręczne ponowne uruchomienie klastra, jeśli przestanie odpowiadać. Zalecamy uruchamianie zadań w nowych klastrach w celu zwiększenia niezawodności. Jeśli new_cluster, opis klastra, który zostanie utworzony dla każdego uruchomienia. Jeśli określono wartość PipelineTask, to pole może być puste. |
notebook_task OR LUB spark_jar_task spark_python_task OR LUB spark_submit_task pipeline_task LUB run_job_task |
NotebookTask lub SparkJarTask lub SparkPythonTask lub SparkSubmitTask lub PipelineTask lub RunJobTask | Jeśli notebook_task jest prawdą, oznacza to, że to zadanie powinno uruchomić notatnik. Nie można określić tego pola w połączeniu z spark_jar_task. Jeśli spark_jar_task, wskazuje, że to zadanie powinno uruchomić plik JAR. Jeśli spark_python_task, wskazuje, że to zadanie powinno uruchomić plik języka Python. Jeśli spark_submit_task, wskazuje to, że to zadanie powinno zostać uruchomione przez skrypt spark-submit. Jeśli występuje pipeline_task, to wskazuje, że to zadanie powinno uruchomić potok DLT. Jeśli funkcja run_job_task, oznacza, że to zadanie powinno uruchomić inne zadanie. |
name |
STRING |
Opcjonalna nazwa zadania. Domyślna wartość to Untitled . |
libraries |
Tablica biblioteki | Opcjonalna lista bibliotek do zainstalowania w klastrze, które będą wykonywać zadanie. Wartość domyślna to pusta lista. |
email_notifications |
JobEmailNotifications | Opcjonalny zestaw adresów e-mail, które będą powiadamiane o rozpoczęciu lub zakończeniu wykonywania tego zadania, a także po usunięciu tego zadania. Domyślne zachowanie polega na tym, aby nie wysyłać żadnych wiadomości e-mail. |
webhook_notifications |
WebhookNotifications | Opcjonalny zestaw miejsc docelowych systemu do powiadamiania o rozpoczęciu, zakończeniu lub awarii tego zadania. |
notification_settings |
UstawieniaPowiadomieńOPracy | Opcjonalne ustawienia powiadomień używane podczas wysyłania powiadomień do każdego z elementów email_notifications i webhook_notifications dla tego zadania. |
timeout_seconds |
INT32 |
Opcjonalny limit czasu, który jest stosowany przy każdym wykonaniu tego zadania. Domyślne zachowanie polega na braku limitu czasu. |
max_retries |
INT32 |
Opcjonalna maksymalna liczba ponownych prób nieudanego uruchomienia. Przebieg jest uznawany za nieudany, jeśli zakończy się z wynikiem FAILED lub result_state.INTERNAL_ERROR life_cycle_state . Wartość -1 oznacza ponowienie próby przez czas nieokreślony, a wartość 0 oznacza, że nigdy nie spróbuj ponownie. Domyślne zachowanie polega na tym, aby nigdy nie ponowić próby. |
min_retry_interval_millis |
INT32 |
Opcjonalny minimalny interwał w milisekundach między próbami. Domyślne zachowanie polega na tym, że nieudane uruchomienia są natychmiast ponawiane. |
retry_on_timeout |
BOOL |
Opcjonalne zasady określające, czy ponowić próbę wykonania zadania po upłynął limit czasu. Domyślne zachowanie polega na tym, aby nie ponawiać próby po przekroczeniu limitu czasu. |
schedule |
CronSchedule | Opcjonalny harmonogram okresowy dla tego zadania. Domyślne zachowanie polega na tym, że zadanie będzie uruchamiane tylko po wyzwoleniu poprzez kliknięcie przycisku "Uruchom teraz" w interfejsie użytkownika (IU) zadań lub wysłaniu żądania do interfejsu API.runNow . |
max_concurrent_runs |
INT32 |
Opcjonalnie określona maksymalna liczba jednoczesnych uruchomienia zadania. Ustaw tę wartość, jeśli chcesz mieć możliwość współbieżnego wykonywania wielu uruchomień tego samego zadania. Jest to przydatne na przykład w przypadku wyzwalania zadania według częstego harmonogramu i umożliwienia nakładania się kolejnych przebiegów na siebie lub wyzwolenia wielu przebiegów, które różnią się swoimi parametrami wejściowymi. To ustawienie ma wpływ tylko na nowe uruchomienia. Załóżmy na przykład, że współbieżność zadania wynosi 4 i są 4 jednoczesne aktywne uruchomienia. Następnie ustawienie współbieżności na 3 nie spowoduje przerwania żadnego z aktywnych zadań. Jednak od tego czasu nowe uruchomienia zostaną pominięte, chyba że istnieje mniej niż trzy aktywne uruchomienia. Ta wartość nie może przekroczyć 1000. Ustawienie tej wartości na 0 spowoduje pominięcie wszystkich nowych uruchomień. Domyślne zachowanie polega na zezwalaniu na uruchomienie tylko 1 współbieżnego procesu. |
health |
ZasadyZdrowotneDlaPracy | Opcjonalny zestaw reguł kondycji zdefiniowany dla zadania. |
Zadanie
Nazwa pola | Rodzaj | Opis |
---|---|---|
notebook_task OR LUB spark_jar_task spark_python_task OR LUB spark_submit_task pipeline_task LUB run_job_task |
NotebookTask lub SparkJarTask lub SparkPythonTask lub SparkSubmitTask lub PipelineTask lub RunJobTask | Jeśli notebook_task jest prawdą, oznacza to, że to zadanie powinno uruchomić notatnik. Nie można określić tego pola w połączeniu z spark_jar_task. Jeśli spark_jar_task, wskazuje, że to zadanie powinno uruchomić plik JAR. Jeśli spark_python_task, wskazuje, że to zadanie powinno uruchomić plik języka Python. Jeśli spark_submit_task, oznacza to, że to zadanie powinno zostać uruchomione za pomocą skryptu spark submit. Jeśli występuje pipeline_task, to wskazuje, że to zadanie powinno uruchomić potok DLT. Jeśli używana jest funkcja run_job_task, oznacza to, że to zadanie powinno uruchomić inną pracę. |
ZadaniaZasadaZdrowia
Nazwa pola | Rodzaj | Opis |
---|---|---|
metric |
STRING |
Określa metrykę zdrowia, która jest oceniana dla określonej zasady zdrowia. Prawidłowe wartości to RUN_DURATION_SECONDS . |
operator |
STRING |
Określa operator używany do porównywania wartości metryki kondycji z określonym progiem. Prawidłowe wartości to GREATER_THAN . |
value |
INT32 |
Określa wartość progową, którą metryka kondycji powinna spełniać w celu zachowania zgodności z regułą kondycji. |
ZasadyZdrowotnePracy
Nazwa pola | Typ | Opis |
---|---|---|
rules |
Tablica JobsHealthRule | Opcjonalny zestaw reguł zdrowotnych, które można zdefiniować dla zadania. |
Biblioteka
Nazwa pola | Rodzaj | Opis |
---|---|---|
jar LUB egg LUB whl pypi OR LUB maven cran |
STRING LUB STRING LUB STRING LUB PythonPyPiLibrary LUB MavenLibrary LUB RCranLibrary |
Jeśli plik JAR, URI pliku JAR do zainstalowania. Obsługiwane są identyfikatory URI systemu plików DBFS i ADLS (abfss ). Na przykład: { "jar": "dbfs:/mnt/databricks/library.jar" } lub{ "jar": "abfss://<container-path>/library.jar" } . Jeśli używana jest usługa ADLS, upewnij się, że klaster ma dostęp do odczytu do biblioteki.Jeśli jajko, URI jajka do zainstalowania. DBFS i ADLS obsługują identyfikatory URI. Na przykład: { "egg": "dbfs:/my/egg" } lub{ "egg": "abfss://<container-path>/egg" } .Jeśli to plik whl, URI pliku wheel lub skompresowanego pliku wheels do zainstalowania. Obsługiwane są identyfikatory URI dla DBFS i ADLS. Na przykład: { "whl": "dbfs:/my/whl" } lub{ "whl": "abfss://<container-path>/whl" } . Jeśli usługa ADLS jest używana, upewnij się, że klaster ma dostęp do odczytu w bibliotece.
wheel Ponadto nazwa pliku musi używać poprawnej konwencji. Jeśli plik zip ma wheels zostać zainstalowany, sufiks nazwy pliku powinien mieć wartość .wheelhouse.zip .Jeśli pypi, specyfikacja biblioteki PyPI, która ma zostać zainstalowana. Określenie pola repo jest opcjonalne, a jeśli nie zostanie określone, zostanie użyty domyślny indeks pip. Na przykład:{ "package": "simplejson", "repo": "https://my-repo.com" } Jeśli Maven, określenie biblioteki Maven, która ma zostać zainstalowana. Na przykład: { "coordinates": "org.jsoup:jsoup:1.7.2" } Jeśli jest to cran, specyfikacja biblioteki CRAN, która ma zostać zainstalowana. |
MavenLibrary
Nazwa pola | Rodzaj | Opis |
---|---|---|
coordinates |
STRING |
Współrzędne Maven w stylu Gradle. Na przykład: org.jsoup:jsoup:1.7.2 . To pole jest wymagane. |
repo |
STRING |
Repozytorium Maven do zainstalowania pakietu Maven. W przypadku pominięcia przeszukiwane są zarówno centralne repozytorium Maven, jak i pakiety Spark. |
exclusions |
Zbiór STRING |
Lista zależności do wykluczenia. Na przykład: ["slf4j:slf4j", "*:hadoop-client"] .Wykluczenia zależności w Mavenie: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html. |
NowaGrupa
Nazwa pola | Rodzaj | Opis |
---|---|---|
num_workers LUB autoscale |
INT32 OR AutoScale |
Jeśli num_workers, liczba węzłów roboczych, które powinien mieć ten klaster. Klaster ma jeden sterownik Spark i num_workers egzekutorów, co daje łącznie num_workers + 1 węzłów Spark. Uwaga: podczas przeglądania właściwości klastra, ta liczba odzwierciedla żądaną liczbę pracowników, a nie rzeczywistą bieżącą liczbę pracowników. Na przykład, jeśli rozmiar klastra zostanie zmieniony z 5 na 10 węzłów roboczych, to pole zostanie natychmiast zaktualizowane, aby odzwierciedlić docelowy rozmiar 10 węzłów roboczych, natomiast liczba pracowników wymieniona w spark_info zwiększa się stopniowo z 5 do 10 w miarę przydzielania nowych węzłów. W przypadku automatycznego skalowania parametry potrzebne do automatycznego skalowania klastrów w górę i w dół na podstawie obciążenia. |
spark_version |
STRING |
Wersja platformy Spark klastra. Listę dostępnych wersji platformy Spark można pobrać przy użyciu wywołania GET 2.0/clusters/spark-versions. To pole jest wymagane. |
spark_conf |
SparkConfPair | Obiekt zawierający zestaw opcjonalnych par klucz-wartość konfiguracji Spark określonych przez użytkownika. Możesz również przekazać ciąg dodatkowych opcji JVM do sterownika i wykonawców poprzez.spark.driver.extraJavaOptions i spark.executor.extraJavaOptions odpowiednio.Przykładowe ograniczenia platformy Spark: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} lub{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
To pole koduje za pomocą jednej wartości zasoby dostępne dla każdego z węzłów platformy Spark w tym klastrze. Na przykład węzły platformy Spark można aprowizować i optymalizować pod kątem obciążeń intensywnie korzystających z pamięci lub obliczeń Lista dostępnych typów węzłów można pobrać przy użyciu wywołania GET 2.0/clusters/list-node-types. To pole, pole instance_pool_id , lub zasady klastrowe, które określają identyfikator typu węzła lub identyfikator puli wystąpień, są wymagane. |
driver_node_type_id |
STRING |
Typ węzła sterownika Spark. To pole jest opcjonalne; jeśli nie zostanie ustawione, typ węzła sterownika zostanie ustawiony na taką samą wartość jak ta, która została zdefiniowana powyżej w node_type_id . |
custom_tags |
ClusterTag | Obiekt zawierający zestaw tagów dla zasobów klastra. Usługa Databricks taguje wszystkie zasoby klastra (takie jak maszyny wirtualne) przy użyciu tych tagów oprócz default_tags. Uwaga:
|
cluster_log_conf |
ClusterLogConf | Konfiguracja dostarczania dzienników Spark do długoterminowego miejsca przechowywania. Dla jednego klastra można określić tylko jedno miejsce docelowe. Jeśli ustawienia zostaną podane, dzienniki zostaną dostarczone do docelowej lokalizacji co 5 mins . Miejsce docelowe dzienników sterowników to <destination>/<cluster-id>/driver , a miejscem docelowym dzienników funkcji wykonawczej jest <destination>/<cluster-id>/executor . |
init_scripts |
Tablica InitScriptInfo | Konfiguracja przechowywania skryptów inicjowania. Można określić dowolną liczbę skryptów. Skrypty są wykonywane sekwencyjnie w podanej kolejności. Jeśli cluster_log_conf zostanie określony, dzienniki skryptów inicjujących są wysyłane do<destination>/<cluster-id>/init_scripts . |
spark_env_vars |
SparkEnvPair | Obiekt zawierający zestaw opcjonalnych par klucz-wartość zmiennej środowiskowej określonej przez użytkownika. Para klucz-wartość w postaci (X,Y) jest eksportowana bez zmian (to jest,export X='Y' ) podczas uruchamiania kierowcy i pracowników.Aby określić dodatkowy zestaw SPARK_DAEMON_JAVA_OPTS , zalecamy dołączenie ich do $SPARK_DAEMON_JAVA_OPTS , jak pokazano w poniższym przykładzie. Dzięki temu wszystkie domyślne zmienne środowiskowe zarządzane przez usługę Databricks również zostaną uwzględnione.Przykładowe zmienne środowiskowe platformy Spark: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} lub{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
enable_elastic_disk |
BOOL |
Automatyczne skalowanie magazynu lokalnego: po włączeniu ten klaster dynamicznie uzyskuje dodatkowe miejsce na dysku, gdy pracownikom platformy Spark brakuje miejsca na dysku. Aby uzyskać szczegółowe informacje, zobacz Włączanie automatycznego skalowania magazynu lokalnego. |
driver_instance_pool_id |
STRING |
Opcjonalny identyfikator puli wystąpień do użycia dla węzła sterownika. Należy również określić wartość instance_pool_id . Aby uzyskać szczegółowe informacje, zapoznaj się z API pul wystąpień. |
instance_pool_id |
STRING |
Opcjonalny identyfikator puli wystąpień do użycia dla węzłów klastra. Jeśli driver_instance_pool_id jest obecny,instance_pool_id jest używany tylko dla węzłów roboczych. W przeciwnym razie jest używany zarówno dla węzła głównego, jak i węzłów roboczych. Aby uzyskać szczegółowe informacje, zapoznaj się z API pul wystąpień. |
WynikNotebooka
Nazwa pola | Rodzaj | Opis |
---|---|---|
result |
STRING |
Wartość przekazana do dbutils.notebook.exit(). Usługa Azure Databricks ogranicza ten interfejs API do zwrócenia pierwszych 1 MB wartości. Dla większego wyniku, twoje zadanie może przechowywać wyniki w chmurze. To pole będzie nieobecne, jeśli dbutils.notebook.exit() nigdy nie zostało wywołane. |
truncated |
BOOLEAN |
Czy wynik został obcięty czy nie. |
NotebookTask
Wszystkie komórki wyjściowe podlegają rozmiarowi 8 MB. Jeśli dane wyjściowe komórki mają większy rozmiar, pozostała część procesu zostanie anulowana, a proces zostanie uznany za nieudany. W takim przypadku mogą również brakować niektóre dane wyjściowe z innych komórek.
Jeśli potrzebujesz pomocy w znalezieniu komórki, która przekracza limit, uruchom notatnik przy użyciu klastra ogólnego przeznaczenia i użyj tej techniki automatycznego zapisywania notatnika.
Nazwa pola | Rodzaj | Opis |
---|---|---|
notebook_path |
STRING |
Ścieżka bezwzględna notatnika, który ma zostać uruchomiony w obszarze roboczym usługi Azure Databricks. Ta ścieżka musi zaczynać się od ukośnika. To pole jest wymagane. |
revision_timestamp |
LONG |
Sygnatura czasowa poprawki notesu. |
base_parameters |
Mapa ParamPair | Podstawowe parametry, które mają być używane dla każdego uruchomienia tego zadania. Jeśli uruchomienie zostanie zainicjowane przez wywołanie run-now z określonymi parametrami, obie mapy parametrów zostaną scalone. Jeśli ten sam klucz jest określony w base_parameters i w run-now , zostanie użyta wartość z run-now .Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. Jeśli notatnik przyjmuje parametr, który nie jest określony w parametrach zadania base_parameters lub w parametrach nadpisania run-now , zostanie użyta wartość domyślna z notatnika.Pobierz te parametry w notesie przy użyciu polecenia dbutils.widgets.get. |
ParamPair
Parametry oparte na nazwach dla zadań uruchamiających zadania notatnikowe.
Ważne
Pola w tej strukturze danych akceptują tylko znaki łacińskie (zestaw znaków ASCII). Użycie znaków innych niż ASCII zwróci błąd. Przykłady nieprawidłowych znaków innych niż ASCII to chiński, japoński kanjis i emoji.
Rodzaj | Opis |
---|---|
STRING |
Nazwa parametru. Wykorzystaj dbutils.widgets.get, aby pobrać wartość. |
STRING |
Wartość parametru. |
PipelineTask
Nazwa pola | Typ | Opis |
---|---|---|
pipeline_id |
STRING |
Pełna nazwa zadania potoku DLT do wykonania. |
Biblioteka PythonPyPi
Nazwa pola | Rodzaj | Opis |
---|---|---|
package |
STRING |
Nazwa pakietu PyPI do zainstalowania. Obsługiwana jest również opcjonalna dokładna specyfikacja wersji. Przykłady: simplejson i simplejson==3.8.0 . To pole jest wymagane. |
repo |
STRING |
Repozytorium, w którym można znaleźć pakiet. Jeśli nie zostanie określony, zostanie użyty domyślny indeks pip. |
RCranLibrary
Nazwa pola | Rodzaj | Opis |
---|---|---|
package |
STRING |
Nazwa pakietu CRAN do zainstalowania. To pole jest wymagane. |
repo |
STRING |
Repozytorium, w którym można znaleźć pakiet. Jeśli nie zostanie określony, zostanie użyte domyślne repozytorium CRAN. |
Biegnij
Wszystkie informacje dotyczące przebiegu, z wyjątkiem jego wyników. Dane wyjściowe można pobrać oddzielnie za pomocą getRunOutput
metody .
Nazwa pola | Rodzaj | Opis |
---|---|---|
job_id |
INT64 |
Kanoniczny identyfikator zadania zawierającego ten przebieg. |
run_id |
INT64 |
Kanoniczny identyfikator przebiegu. Ten identyfikator jest unikatowy dla wszystkich uruchomień i wszystkich zadań. |
creator_user_name |
STRING |
Nazwa użytkownika twórcy. To pole nie zostanie uwzględnione w odpowiedzi, jeśli użytkownik został już usunięty. |
number_in_job |
INT64 |
Numer sekwencji tego przebiegu spośród wszystkich wykonań zadania. Ta wartość zaczyna się od 1. |
original_attempt_run_id |
INT64 |
Jeśli to wykonanie jest ponowną próbą wcześniejszej próby, to pole zawiera run_id oryginalnej próby; w przeciwnym razie, jest takie samo jak run_id. |
state |
RunState | Stany cyklu życia i wyniki przebiegu. |
schedule |
CronSchedule | Harmonogram cron, który uruchomił to działanie, jeśli został aktywowany przez harmonogram periodyczny. |
task |
Zadanie | Zadanie wykonywane przez uruchomienie, jeśli istnieje. |
cluster_spec |
ClusterSpec | Zrzut specyfikacji klastra dla zadania w momencie utworzenia tego przebiegu. |
cluster_instance |
ClusterInstance | Klaster wykorzystany na potrzeby tego przebiegu. Jeśli przebieg ma używać nowego klastra, to pole zostanie ustawione, gdy usługa Zadań zażąda klastra dla przebiegu. |
overriding_parameters |
RunParameters | Parametry użyte dla tego przebiegu. |
start_time |
INT64 |
Czas, w którym rozpoczęto to uruchomienie, podany w milisekundach epoki (milisekundy od 1.1.1970 UTC). Może to nie być czas rozpoczęcia wykonywania zadania, na przykład jeśli zadanie zostało zaplanowane do uruchomienia w nowym klastrze, czas ten dotyczy momentu wydania wywołania tworzenia klastra. |
setup_duration |
INT64 |
Czas konfigurowania klastra w milisekundach. W przypadku przebiegów uruchamianych w nowych klastrach jest to moment utworzenia klastra, a dla przebiegów uruchamianych w istniejących klastrach ten czas powinien być bardzo krótki. |
execution_duration |
INT64 |
Czas w milisekundach potrzebny na wykonanie poleceń w pliku JAR lub notesie albo ich zakończenie, niepowodzenie, przekroczenie limitu czasu, anulowanie czy napotkanie nieoczekiwanego błędu. |
cleanup_duration |
INT64 |
Czas w milisekundach, który trwał, aby zakończyć działanie klastra i wyczyścić wszystkie skojarzone artefakty. Łączny czas trwania przebiegu to suma czasu przygotowania, czasu wykonania i czasu oczyszczania. |
end_time |
INT64 |
Czas, w którym ten przebieg zakończył się w milisekundach epoki (milisekundy od 1/1/1970 UTC). To pole zostanie ustawione na wartość 0, jeśli zadanie jest nadal uruchomione. |
trigger |
Typ wyzwalacza | Typ wyzwalacza, który uruchomił ten proces. |
run_name |
STRING |
Opcjonalna nazwa biegu. Domyślna wartość to Untitled . Maksymalna dozwolona długość to 4096 bajtów w kodowaniu UTF-8. |
run_page_url |
STRING |
Adres URL strony szczegółów przebiegu. |
run_type |
STRING |
Rodzaj biegu.
|
attempt_number |
INT32 |
Numer sekwencji tej próby uruchomienia wyzwolonego zadania. Początkowa próba uruchomienia ma numer próby równy 0. Jeśli początkowa próba uruchomienia zakończy się niepowodzeniem, a zadanie ma politykę ponawiania prób (max_retries > 0), kolejne uruchomienia zostaną utworzone z original_attempt_run_id identyfikatorem oryginalnej próby oraz rosnącym attempt_number . Próby są ponawiane tylko do momentu ich pomyślnego wykonania, a maksymalna attempt_number jest taka sama jak wartość max_retries dla zadania. |
RunJobTask
Nazwa pola | Typ | Opis |
---|---|---|
job_id |
INT32 |
Unikatowy identyfikator zadania do wykonania. To pole jest wymagane. |
RunLifeCycleState
Stan cyklu życia przebiegu. Dozwolone przejścia stanu to:
-
QUEUED
->PENDING
-
PENDING
- - ->RUNNING
>TERMINATING
>TERMINATED
-
PENDING
->SKIPPED
-
PENDING
->INTERNAL_ERROR
-
RUNNING
->INTERNAL_ERROR
-
TERMINATING
->INTERNAL_ERROR
Stan | Opis |
---|---|
QUEUED |
Przebieg został wyzwolony, ale jest kolejkowany, ponieważ osiągnął jeden z następujących limitów:
Zadanie lub proces muszą mieć włączoną kolejkę, zanim mogą osiągnąć ten stan. |
PENDING |
Uruchomienie zostało uruchomione. Jeśli osiągnięto już skonfigurowaną maksymalną liczbę współbieżnych uruchomień zadania, przebieg natychmiast przejdzie do stanu SKIPPED bez przygotowywania żadnych zasobów. W przeciwnym razie w toku jest przygotowanie klastra oraz jego realizacja. |
RUNNING |
Zadanie tego uruchomienia jest wykonywane. |
TERMINATING |
Zadanie tego uruchomienia zostało ukończone, a klaster i kontekst wykonywania jest czyszczony. |
TERMINATED |
Zadanie w ramach tego przebiegu zostało ukończone, a klaster i kontekst wykonania zostały wyczyszczone. Ten stan jest terminalny. |
SKIPPED |
Ten przebieg został przerwany, ponieważ poprzedni przebieg tego samego zadania był już aktywny. Ten stan jest terminalny. |
INTERNAL_ERROR |
Wyjątkowy stan wskazujący błąd w usłudze Jobs, taki jak awaria sieci w długim okresie. Jeśli zadanie w nowym klastrze zakończy się w stanie INTERNAL_ERROR , usługa Jobs zakończy działanie klastra tak szybko, jak to możliwe. Ten stan jest terminalny. |
RunParameters
Parametry dla tego przebiegu. W żądaniu python_params
należy określić tylko jedną z jar_params, run-now
lub notebook_params, w zależności od typu zadania.
Zadania z plikiem JAR platformy Spark lub zadaniem Python przyjmują listę parametrów pozycyjnych, a zadania z notatnika przyjmują mapę wartości kluczowych.
Nazwa pola | Rodzaj | Opis |
---|---|---|
jar_params |
Tablica STRING |
Lista parametrów dla zadań z wykorzystaniem Spark JAR, np. "jar_params": ["john doe", "35"] . Parametry będą używane do wywoływania głównej funkcji klasy głównej określonej w zadaniu Spark JAR. Jeśli wartość nie zostanie określona w parametrze run-now , domyślna będzie pusta lista. nie można określić jar_params w połączeniu z notebook_params. Reprezentacja JSON tego pola (tj. {"jar_params":["john doe","35"]} ) nie może przekraczać 10 000 bajtów.Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. |
notebook_params |
Mapa ParamPair | Mapa kluczy do wartości dla zadań z zadaniem w notatniku, np."notebook_params": {"name": "john doe", "age": "35"} . Mapa jest przekazywana do notesu i jest dostępna za pośrednictwem funkcji dbutils.widgets.get .Jeśli nie określono parametrów w momencie run-now , uruchomienie używa podstawowych parametrów zadania.notebook_params nie można określić w połączeniu z jar_params. Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. Reprezentacja tego pola w formacie JSON (tj. {"notebook_params":{"name":"john doe","age":"35"}} ) nie może przekraczać 10 000 bajtów. |
python_params |
Tablica STRING |
Lista parametrów dla zadań w języku Python, np. "python_params": ["john doe", "35"] . Parametry są przekazywane do pliku języka Python jako parametry wiersza polecenia. Jeśli parametr zostanie określony na run-now , zastąpi parametry określone w ustawieniu zadania. Reprezentacja JSON tego pola (tj. {"python_params":["john doe","35"]} ) nie może przekraczać 10 000 bajtów.Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. Te parametry akceptują tylko znaki łacińskie (zestaw znaków ASCII). Użycie znaków innych niż ASCII zwróci błąd. Przykłady nieprawidłowych znaków innych niż ASCII to chiński, japoński kanjis i emoji. |
spark_submit_params |
Tablica STRING |
Lista parametrów dla zadań z użyciem polecenia spark-submit, np."spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . Parametry są przekazywane do skryptu spark-submit jako parametry wiersza polecenia. Jeśli parametr zostanie określony na run-now , zastąpi parametry określone w ustawieniu zadania. Reprezentacja JSON tego pola (tj. {"python_params":["john doe","35"]} ) nie może przekraczać 10 000 bajtów.Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. Te parametry akceptują tylko znaki łacińskie (zestaw znaków ASCII). Użycie znaków innych niż ASCII zwróci błąd. Przykłady nieprawidłowych znaków innych niż ASCII to chiński, japoński kanjis i emoji. |
RunResultState
Stan wynikowy przebiegu.
- Jeśli
life_cycle_state
=TERMINATED
: jeśli przebieg miał zadanie, wynik ma gwarancję dostępności i wskazuje wynik zadania. - Jeśli
life_cycle_state
, = ,PENDING
,RUNNING
lubSKIPPED
, stan wyniku jest niedostępny. - Jeśli
life_cycle_state
=TERMINATING
lub lifecyclestate =INTERNAL_ERROR
: stan wyniku jest dostępny, jeśli przebieg zawierał zadanie i udało się je uruchomić.
Po udostępnieniu stan wyniku nigdy się nie zmienia.
Stan | Opis |
---|---|
SUCCESS |
Zadanie zostało ukończone pomyślnie. |
FAILED |
Zadanie zostało zakończone z błędem. |
TIMEDOUT |
Przebieg został zatrzymany po upływie limitu czasu. |
CANCELED |
Przebieg został anulowany na żądanie użytkownika. |
RunState
Nazwa pola | Rodzaj | Opis |
---|---|---|
life_cycle_state |
RunLifeCycleState | Opis aktualnej lokalizacji w cyklu życia przebiegu. To pole jest zawsze dostępne w odpowiedzi. |
result_state |
RunResultState | Stan wyniku przebiegu. Jeśli nie jest dostępna, odpowiedź nie będzie zawierać tego pola. Aby uzyskać szczegółowe informacje na temat dostępności result_state, zobacz RunResultState . |
user_cancelled_or_timedout |
BOOLEAN |
Czy przebieg został anulowany ręcznie przez użytkownika, czy przez harmonogram z powodu przekroczenia limitu czasu. |
state_message |
STRING |
Komunikat opisujący bieżący stan. To pole jest nieustrukturyzowane, a jego dokładny format podlega zmianie. |
SparkConfPair
Pary klucz-wartość konfiguracji platformy Spark.
Rodzaj | Opis |
---|---|
STRING |
Nazwa właściwości konfiguracyjnej. |
STRING |
Wartość właściwości konfiguracji. |
SparkEnvPair
Pary klucz-wartość zmiennej środowiskowej platformy Spark.
Ważne
Podczas określania zmiennych środowiskowych w klastrze zadań pola w tej strukturze danych akceptują tylko znaki łacińskie (zestaw znaków ASCII). Użycie znaków innych niż ASCII zwróci błąd. Przykłady nieprawidłowych znaków innych niż ASCII to chiński, japoński kanjis i emoji.
Rodzaj | Opis |
---|---|
STRING |
Nazwa zmiennej środowiskowej. |
STRING |
Wartość zmiennej środowiskowej. |
SparkJarTask
Nazwa pola | Typ | Opis |
---|---|---|
jar_uri |
STRING |
Nieaktualne od 04/2016 r. Zamiast tego podaj jar za pośrednictwem pola libraries . Aby zapoznać się z przykładem, zobacz Tworzenie. |
main_class_name |
STRING |
Pełna nazwa klasy zawierającej metodę główną do wykonania. Ta klasa musi być zawarta w pliku JAR udostępnionym jako biblioteka. Kod powinien użyć SparkContext.getOrCreate polecenia , aby uzyskać kontekst platformy Spark. W przeciwnym razie uruchomienie zadania zakończy się niepowodzeniem. |
parameters |
Tablica STRING |
Parametry przekazywane do metody "main". Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. |
SparkPythonTask
Nazwa pola | Rodzaj | Opis |
---|---|---|
python_file |
STRING |
Identyfikator URI pliku Python do uruchomienia. Obsługiwane są ścieżki systemu plików DBFS. To pole jest wymagane. |
parameters |
Tablica STRING |
Parametry wiersza polecenia przekazane do pliku języka Python. Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. |
SparkSubmitTask
Ważne
- Zadania Spark submit można wywoływać tylko w nowych klastrach.
- W specyfikacji new_cluster
libraries
ispark_conf
nie są obsługiwane. Zamiast tego użyj poleceń--jars
i--py-files
, aby dodać biblioteki Java i Python oraz--conf
ustawić konfigurację platformy Spark. -
master
,deploy-mode
iexecutor-cores
są automatycznie konfigurowane przez usługę Azure Databricks; nie można ich określić w parametrach. - Domyślnie zadanie przesyłane przez Spark uruchamia się z użyciem całej dostępnej pamięci, z wyłączeniem pamięci zarezerwowanej dla usług Azure Databricks. Możesz ustawić
--driver-memory
i--executor-memory
na mniejszą wartość, aby pozostawić pewne miejsce na użycie poza stertą. - Argumenty
--jars
,--py-files
,--files
obsługują ścieżki systemu plików DBFS.
Na przykład przy założeniu, że plik JAR jest przekazywany do systemu plików DBFS, można uruchomić SparkPi
, ustawiając następujące parametry.
{
"parameters": ["--class", "org.apache.spark.examples.SparkPi", "dbfs:/path/to/examples.jar", "10"]
}
Nazwa pola | Typ | Opis |
---|---|---|
parameters |
Tablica STRING |
Parametry wiersza polecenia przekazywane do „spark submit”. Użyj opcji Co to jest odwołanie do wartości dynamicznej? aby ustawić parametry zawierające informacje o uruchomieniach zadań. |
Typ wyzwalacza
Są to typy wyzwalaczy, które mogą uruchamiać proces.
Rodzaj | Opis |
---|---|
PERIODIC |
Harmonogramy, które okresowo wyzwalają uruchomienia, takie jak harmonogram cron. |
ONE_TIME |
Wyzwalacze jednorazowe, które wywołują jedno uruchomienie. Dzieje się tak, gdy uruchomisz jednorazowe działanie na żądanie za pośrednictwem interfejsu użytkownika lub API. |
RETRY |
Wskazuje uruchomienie, które jest wyzwalane jako ponowienie wcześniejszego nieudanego uruchomienia. Dzieje się tak, gdy żądasz ponownego uruchomienia zadania w przypadku awarii. |
Wyświetl przedmiot
Wyeksportowana zawartość jest w formacie HTML. Jeśli na przykład widok do wyeksportowania to pulpity nawigacyjne, dla każdego pulpitu nawigacyjnego jest zwracany jeden ciąg HTML.
Nazwa pola | Rodzaj | Opis |
---|---|---|
content |
STRING |
Zawartość widoku. |
name |
STRING |
Nazwa elementu widoku. W przypadku widoku kodu nazwa notesu. W przypadku widoku pulpitu nawigacyjnego nazwa pulpitu nawigacyjnego. |
type |
Typ widoku | Typ elementu widoku. |
Typ widoku
Rodzaj | Opis |
---|---|
NOTEBOOK |
Element widoku notatnika. |
DASHBOARD |
Element widoku pulpitu nawigacyjnego. |
Widoki_Do_Eksportu
Widok do wyeksportowania: kod źródłowy, wszystkie pulpity nawigacyjne lub wszystko.
Rodzaj | Opis |
---|---|
CODE |
Widok kodu notesu. |
DASHBOARDS |
Wszystkie widoki pulpitu nawigacyjnego notatnika. |
ALL |
Wszystkie widoki notatnika. |
Webhook
Nazwa pola | Rodzaj | Opis |
---|---|---|
id |
STRING |
Identyfikator odwołujący się do miejsca docelowego powiadomień systemowych. To pole jest wymagane. |
PowiadomieniaWebhook
Nazwa pola | Rodzaj | Opis |
---|---|---|
on_start |
Tablica elementów webhook | Opcjonalna lista adresów docelowych systemu, które mają być powiadamiane o rozpoczęciu uruchomienia. Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Można określić maksymalnie 3 miejsca docelowe dla właściwości on_start . |
on_success |
Tablica elementów webhook | Opcjonalna lista systemowych miejsc docelowych do powiadomienia o pomyślnym zakończeniu procesu. Przebieg jest uznawany za zakończony pomyślnie, jeśli kończy się elementem TERMINATED life_cycle_state i SUCCESSFUL result_state . Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Można określić maksymalnie 3 miejsca docelowe dla właściwości on_success . |
on_failure |
Tablica elementów webhook | Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane, gdy wykonanie zakończy się niepowodzeniem. Przebieg jest uznawany za zakończony niepowodzeniem, jeśli kończy się na INTERNAL_ERROR life_cycle_state lub SKIPPED , FAILED , lub TIMED_OUT result_state . Jeśli ta wartość nie jest określona podczas tworzenia, resetowania lub aktualizowania listy jest pusta, a powiadomienia nie są wysyłane. Można określić maksymalnie 3 miejsca docelowe dla właściwości on_failure . |
on_duration_warning_threshold_exceeded |
Tablica elementów webhook | Opcjonalna lista systemowych miejsc docelowych do powiadomienia, gdy czas trwania przebiegu przekracza próg określony dla metryki RUN_DURATION_SECONDS w polu health . Można określić maksymalnie 3 miejsca docelowe dla właściwości on_duration_warning_threshold_exceeded . |
Informacje o przechowywaniu przestrzeni roboczej
Informacje o przechowywaniu obszaru roboczego.
Nazwa pola | Rodzaj | Opis |
---|---|---|
destination |
STRING |
Miejsce docelowe pliku. Przykład: /Users/someone@domain.com/init_script.sh |