Interfejs API zadań 2.0

Ważne

W tym artykule dokumentacji interfejsu API zadań w wersji 2.0. Jednak usługa Databricks zaleca używanie interfejsu API zadań 2.1 dla nowych i istniejących klientów i skryptów. Aby uzyskać szczegółowe informacje na temat zmian z wersji 2.0 do 2.1, zobacz Aktualizowanie z interfejsu API zadań 2.0 do 2.1.

Interfejs API zadań umożliwia tworzenie, edytowanie i usuwanie zadań. Maksymalny dozwolony rozmiar żądania do interfejsu API zadań to 10 MB.

Aby uzyskać szczegółowe informacje o aktualizacjach interfejsu API zadań, które obsługują orkiestrację wielu zadań za pomocą zadań usługi Azure Databricks, zobacz Aktualizowanie z interfejsu API zadań 2.0 do 2.1.

Ostrzeżenie

Nigdy nie należy zapisywać wpisów tajnych kodu ani przechowywać ich w postaci zwykłego tekstu. Użyj interfejsu API wpisów tajnych, aby zarządzać wpisami tajnymi w interfejsie wiersza polecenia usługi Databricks. 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ń interfejsu API zadań wystąpi błąd 500 poziomów, usługa Databricks zaleca ponawianie żądań przez maksymalnie 10 minut (z co najmniej 30-sekundowym interwałem między ponownymi próbami).

Ważne

Aby uzyskać dostęp do interfejsów API REST, należy uwierzytelnić się.

Utworzyć

Punkt końcowy Metoda HTTP
2.0/jobs/create POST

Utwórz nowe zadanie.

Przykład

W tym przykładzie jest tworzone zadanie uruchamiające zadanie JAR o godzinie 10: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:

W tym przykładzie jest używany plik .netrc i plik jq.

Response

{
  "job_id": 1
}

Struktura żądań

Ważne

  • Po uruchomieniu zadania w nowym klastrze zadań zadanie jest traktowane jako obciążenie Obliczeniowe zadania (zautomatyzowane) z cennikiem obliczeń zadań.
  • Po uruchomieniu zadania w istniejącym klastrze ogólnego przeznaczenia jest on traktowany jako obciążenie obliczenia ogólnego przeznaczenia (interaktywne) z cennikiem obliczeń ogólnego przeznaczenia.
Nazwa pola Type 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 przebiegu.

Jeśli określisz wartość PipelineTask, to pole może być puste.
notebook_taskOR LUB spark_jar_task
spark_python_taskOR 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, wskazuje, że to zadanie powinno uruchomić notes. 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 przesyłania platformy Spark.

Jeśli pipeline_task, wskazuje, że to zadanie powinno uruchomić potok Delta Live Tables.

Jeśli run_job_task, wskazuje, ż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 powiadamiany o rozpoczęciu i ukończeniu tego zadania oraz po usunięciu tego zadania. Domyślne zachowanie polega na tym, aby nie wysyłać żadnych wiadomości e-mail.
webhook_notifications Elementy webhookNotifications Opcjonalny zestaw miejsc docelowych systemu do powiadamiania o rozpoczęciu, zakończeniu lub awarii tego zadania.
notification_settings JobNotification Ustawienia 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 zastosowany 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 FAILED , jeśli zakończy się z result_state lub
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 kolejnym uruchomieniem ponawiania. 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, klikając pozycję Uruchom teraz w interfejsie użytkownika zadań lub wysyłając żądanie interfejsu API do runNow.
max_concurrent_runs INT32 Opcjonalna dozwolona maksymalna dozwolona liczba współbieżnych uruchomień 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ę od ich parametrów wejściowych.

To ustawienie ma wpływ tylko na nowe uruchomienia. Załóżmy na przykład, że współbieżność zadania wynosi 4 i istnieje 4 współbieżne aktywne uruchomienia. Następnie ustawienie współbieżności na 3 nie spowoduje zabicia żadnego z aktywnych przebiegów. Jednak od tego czasu nowe przebiegi są pomijane, chyba że istnieje mniej niż 3 aktywne uruchomienia.

Ta wartość nie może przekroczyć 1000. Ustawienie tej wartości na 0 powoduje pominięcie wszystkich nowych przebiegów. Domyślne zachowanie polega na zezwalaniu na uruchamianie tylko 1 współbieżne.

Struktura odpowiedzi

Nazwa pola Type Opis
job_id INT64 Identyfikator kanoniczny nowo utworzonego zadania.

Listy

Punkt końcowy Metoda HTTP
2.0/jobs/list GET

Wyświetl listę wszystkich zadań.

Przykład

Zażądaj

curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .

Zastąp <databricks-instance> ciąg 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.

Response

{
  "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 Type 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 ma żadnej akcji, 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 jest gwarantowane do usunięcia po zakończeniu tego żądania. Jednak przebiegi, które były aktywne przed otrzymaniem tego żądania, mogą być nadal aktywne. Zostaną one przerwane asynchronicznie.

Przykład

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'

Wymiana:

W tym przykładzie jest używany plik .netrc .

Struktura żądań

Nazwa pola Type 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

Pobieranie informacji o pojedynczym zadaniu.

Przykład

Zażądaj

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:

W tym przykładzie jest używany plik .netrc i plik jq.

Response

{
  "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 Type Opis
job_id INT64 Identyfikator kanoniczny zadania do pobrania informacji. To pole jest wymagane.

Struktura odpowiedzi

Nazwa pola Type 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 Zadanie Ustawienia Ustawienia dla tego zadania i wszystkich jego przebiegów. Te ustawienia można zaktualizować przy użyciu punktów końcowych resetowania lub aktualizowania .
created_time INT64 Czas utworzenia tego zadania w milisekundach epoki (w milisekundach od 1.1.1.1970 UTC).

Zresetować

Punkt końcowy Metoda HTTP
2.0/jobs/reset POST

Zastąp wszystkie ustawienia dla określonego zadania. Użyj punktu końcowego aktualizacji , 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:

W tym przykładzie jest używany plik .netrc i plik jq.

Struktura żądań

Nazwa pola Type Opis
job_id INT64 Identyfikator kanoniczny zadania do zresetowania. To pole jest wymagane.
new_settings Zadanie Ustawienia Nowe ustawienia zadania. Te ustawienia całkowicie zastępują stare ustawienia.

Zmiany w polu JobSettings.timeout_seconds są stosowane do aktywnych przebiegów. Zmiany w innych polach są stosowane tylko do przyszłych przebiegów.

Aktualizacji

Punkt końcowy Metoda HTTP
2.0/jobs/update POST

Dodaj, zmień lub usuń określone ustawienia istniejącego zadania. Użyj pozycji Resetuj punkt końcowy, 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"]
}

Wymiana:

W tym przykładzie jest używany plik .netrc i plik jq.

Struktura żądań

Nazwa pola Type Opis
job_id INT64 Identyfikator kanoniczny zadania do zaktualizowania. To pole jest wymagane.
new_settings Zadanie Ustawienia Nowe ustawienia zadania.

Pola najwyższego poziomu określone w new_settingselemecie , z wyjątkiem tablic, są całkowicie zastępowane. Tablice są scalane na podstawie odpowiednich pól kluczy, takich jak task_key lub
job_cluster_keyi 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 przebiegów. Zmiany w innych polach są stosowane tylko do przyszłych przebiegów.
fields_to_remove Tablica STRING Usuń pola najwyższego poziomu w ustawieniach zadania. Usuwanie zagnieżdżonych pól nie jest obsługiwane, z wyjątkiem wpisów z tasks tablic 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 po zażądaniu uruchomienia, gdy natychmiastowe uruchomienie nie jest możliwe.
  • Liczba zadań, które można utworzyć w obszarze roboczym w ciągu godziny, jest ograniczona do 10000 (obejmuje "przesyłanie przebiegów"). Ten limit wpływa również na zadania utworzone przez przepływy pracy notesu i interfejsu API REST.
Punkt końcowy Metoda HTTP
2.0/jobs/run-now POST

Uruchom zadanie teraz i zwróć run_id wyzwalany przebieg.

Napiwek

Jeśli wywołasz metodę Utwórz razem z poleceniem Uruchom teraz, możesz zamiast tego użyć punktu końcowego Prześlij przebiegi, co umożliwia bezpośrednie przesyłanie obciążenia bez konieczności 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ładowe żądanie zadania notesu:

{
  "job_id": 1,
  "notebook_params": {
    "name": "john doe",
    "age": "35"
  }
}

Przykładowe żądanie zadania JAR:

{
  "job_id": 2,
  "jar_params": [ "john doe", "35" ]
}

Wymiana:

W tym przykładzie jest używany plik .netrc i plik jq.

Struktura żądań

Nazwa pola Type Opis
job_id INT64
jar_params Tablica STRING Lista parametrów zadań z zadaniami 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 z kluczy do wartości zadań z zadaniem notesu, 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 run-now, wyzwalany przebieg używa parametrów podstawowych 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 zadań z zadaniami 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ń z zadaniem przesyłania platformy Spark, np.
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. Parametry zostaną przekazane do skryptu spark-submit jako parametrów 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 gwarantujący idempotentność żądań uruchamiania zadania. Jeśli przebieg z podanym tokenem już istnieje, żądanie nie tworzy nowego przebiegu, ale zwraca identyfikator istniejącego przebiegu. Jeśli przebieg z podanym tokenem zostanie usunięty, zostanie zwrócony 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 Type Opis
run_id INT64 Globalnie unikatowy identyfikator nowo wyzwolonego przebiegu.
number_in_job INT64 Numer sekwencji tego przebiegu wśród wszystkich uruchomień zadania.

Przesyłanie przebiegów

Ważne

  • Obszar roboczy jest ograniczony do 1000 współbieżnych uruchomień zadań. Odpowiedź 429 Too Many Requests jest zwracana po zażądaniu uruchomienia, gdy natychmiastowe uruchomienie nie jest możliwe.
  • Liczba zadań, które można utworzyć w obszarze roboczym w ciągu godziny, jest ograniczona do 10000 (obejmuje "przesyłanie przebiegów"). Ten limit wpływa również na zadania utworzone przez przepływy pracy notesu i interfejsu API REST.
Punkt końcowy Metoda HTTP
2.0/jobs/runs/submit POST

Prześlij jednorazowy przebieg. 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

Zażądaj

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:

W tym przykładzie jest używany plik .netrc i plik jq.

Response

{
  "run_id": 123
}

Struktura żądań

Ważne

  • Po uruchomieniu zadania w nowym klastrze zadań zadanie jest traktowane jako obciążenie Obliczeniowe zadania (zautomatyzowane) z cennikiem obliczeń zadań.
  • Po uruchomieniu zadania w istniejącym klastrze ogólnego przeznaczenia jest on traktowany jako obciążenie obliczenia ogólnego przeznaczenia (interaktywne) z cennikiem obliczeń ogólnego przeznaczenia.
Nazwa pola Type 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 przebiegu.

Jeśli określono wartość PipelineTask, to pole może być puste.
notebook_taskOR LUB spark_jar_task
spark_python_taskOR 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, wskazuje, że to zadanie powinno uruchomić notes. 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 przesyłania platformy Spark.

Jeśli pipeline_task, wskazuje, że to zadanie powinno uruchomić potok Delta Live Tables.

Jeśli run_job_task, wskazuje, że to zadanie powinno uruchomić inne zadanie.
run_name STRING Opcjonalna nazwa przebiegu. Domyślna wartość to Untitled.
webhook_notifications Elementy webhookNotifications Opcjonalny zestaw miejsc docelowych systemu do powiadamiania o rozpoczęciu, zakończeniu lub awarii tego zadania.
notification_settings JobNotification Ustawienia Opcjonalne ustawienia powiadomień używane podczas wysyłania powiadomień do każdego webhook_notifications z tych uruchomień.
libraries Tablica biblioteki 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 zastosowany do każdego uruchomienia tego zadania. Domyślne zachowanie polega na braku limitu czasu.
idempotency_token STRING Opcjonalny token gwarantujący idempotentność żądań uruchamiania zadania. Jeśli przebieg z podanym tokenem już istnieje, żądanie nie tworzy nowego przebiegu, ale zwraca identyfikator istniejącego przebiegu. Jeśli przebieg z podanym tokenem zostanie usunięty, zostanie zwrócony 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 Type 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 uruchamiana 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, przed ich wygaśnięciem należy zapisać stare wyniki uruchamiania. 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

Zażądaj

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:

  • <databricks-instance>z nazwą wystąpienia obszaru roboczego usługi Azure Databricks, na przykład adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> z identyfikatorem zadania, na przykład 123.
  • <true-false> z lub truefalse.
  • <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.

Response

{
  "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 Type 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 jest uruchomieniem w obiekcie PENDING, RUNNINGlub TERMINATINGRunLifecycleState. To pole nie może być true , gdy completed_only to true.

Jeśli completed_only to true, w wynikach są uwzględniane tylko ukończone przebiegi. W przeciwnym razie wyświetlane są zarówno aktywne, jak i ukończone uruchomienia. To pole nie może być true , gdy active_only to true.
job_id INT64 Zadanie, dla którego ma być uruchomiona lista. W przypadku pominięcia usługa Zadań będzie wyświetlać listę uruchomień ze wszystkich zadań.
offset INT32 Przesunięcie pierwszego uruchomienia, które ma zostać zwrócone, względem ostatniego 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. Opis typów przebiegów można znaleźć w temacie Run (Uruchamianie).

Struktura odpowiedzi

Nazwa pola Type Opis
runs Tablica przebiegów Lista przebiegów, od ostatniego uruchomienia do najmniejszego.
has_more BOOL Jeśli wartość true, dodatkowe uruchomienia pasujące do podanego filtru są dostępne do wyświetlania listy.

Pobieranie przebiegów

Punkt końcowy Metoda HTTP
2.0/jobs/runs/get GET

Pobieranie metadanych przebiegu.

Uwaga

Przebiegi są automatycznie usuwane po upływie 60 dni. Jeśli chcesz odwoływać się do nich po upływie 60 dni, przed ich wygaśnięciem należy zapisać stare wyniki uruchamiania. 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

Zażądaj

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:

W tym przykładzie jest używany plik .netrc i plik jq.

Response

{
  "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 Type Opis
run_id INT64 Identyfikator kanoniczny przebiegu, dla którego mają zostać pobrane metadane. To pole jest wymagane.

Struktura odpowiedzi

Nazwa pola Type Opis
job_id INT64 Kanoniczny identyfikator zadania zawierającego ten przebieg.
run_id INT64 Identyfikator kanoniczny przebiegu. Ten identyfikator jest unikatowy we wszystkich uruchomieniach wszystkich zadań.
number_in_job INT64 Numer sekwencji tego przebiegu wśród wszystkich uruchomień zadania. Ta wartość zaczyna się od 1.
original_attempt_run_id INT64 Jeśli ten przebieg jest ponowną próbą wcześniejszej próby uruchomienia, to pole zawiera run_id oryginalnej próby; w przeciwnym razie jest taka sama jak run_id.
state RunState Wyniki i stany cyklu życia przebiegu.
schedule CronSchedule Harmonogram cron, który wyzwolił to uruchomienie, jeśli został wyzwolony przez harmonogram okresowy.
task ZadanieTask Zadanie wykonywane przez przebieg, jeśli istnieje.
cluster_spec ClusterSpec Migawka specyfikacji klastra zadania podczas tworzenia tego przebiegu.
cluster_instance Klasa ClusterInstance Klaster używany na potrzeby tego przebiegu. Jeśli przebieg zostanie określony do użycia nowego klastra, to pole zostanie ustawione po zażądaniu klastra dla uruchomienia przez usługę Zadań.
overriding_parameters RunParameters Parametry używane na potrzeby tego przebiegu.
start_time INT64 Czas rozpoczęcia tego przebiegu w milisekundach epoki (milisekundy od 1.1.1.1970 UTC). Może to nie być czas rozpoczęcia wykonywania zadania zadania, na przykład jeśli zadanie zostało zaplanowane do uruchomienia w nowym klastrze, jest to czas, w którym zostanie wydane wywołanie tworzenia klastra.
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.
setup_duration INT64 Czas w milisekundach zajęło skonfigurowanie klastra. W przypadku przebiegów uruchamianych w nowych klastrach jest to czas tworzenia klastra, w przypadku przebiegów uruchamianych w istniejących klastrach tym razem powinno być bardzo krótkie. Łączny czas trwania przebiegu to suma wartości setup_duration,
execution_durationi cleanup_duration. Pole setup_duration ma wartość 0 dla uruchomiń zadań wielotaskowych. Łączny czas trwania uruchomienia zadania wielotaskowego to wartość
run_duration Pole.
execution_duration INT64 Czas w milisekundach, który trwał, aby wykonać polecenia w pliku JAR lub notesie, dopóki nie zostały ukończone, zakończone niepowodzeniem, upłynął limit czasu, zostały anulowane lub napotkały nieoczekiwany błąd. Łączny czas trwania przebiegu to suma setup_durationwartości , execution_durationi
cleanup_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_durationi 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 zajęł uruchomienie zadania i wszystkie jego naprawy do zakończenia. To pole jest ustawione tylko dla uruchomiów zadań wielotaskowych, a nie dla przebiegów zadań podrzędnych. Czas trwania przebiegu zadania jest sumą
setup_duration, execution_durationi 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 zadanie uruchomienia zadania.

Uwaga

Tylko uruchomienia notesu można eksportować w formacie HTML. Eksportowanie przebiegów innych typów zakończy się niepowodzeniem.

Przykład

Zażądaj

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 .

Wymiana:

W tym przykładzie jest używany plik .netrc i plik jq.

Response

{
  "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 __DATABRICKS_NOTEBOOK_MODEL w obiekcie jest zakodowana.

Struktura żądań

Nazwa pola Type Opis
run_id INT64 Identyfikator kanoniczny przebiegu. To pole jest wymagane.
views_to_export ViewsToExport Które widoki mają być eksportowane (KOD, PULPITY NAWIGACYJNE lub WSZYSTKIE). Wartości domyślne to CODE.

Struktura odpowiedzi

Nazwa pola Type Opis
views Tablica elementu ViewItem Wyeksportowana zawartość w formacie HTML (jedna dla każdego elementu widoku).

Anulowanie przebiegów

Punkt końcowy Metoda HTTP
2.0/jobs/runs/cancel POST

Anuluj uruchomienie zadania. Ponieważ przebieg jest anulowany asynchronicznie, uruchomienie może być nadal uruchomione 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:

W tym przykładzie jest używany plik .netrc .

Struktura żądań

Nazwa pola Type Opis
run_id INT64 Identyfikator kanoniczny przebiegu do anulowania. To pole jest wymagane.

Przebiegi anulują 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> }'

Wymiana:

W tym przykładzie jest używany plik .netrc .

Struktura żądań

Nazwa pola Type Opis
job_id INT64 Identyfikator kanoniczny zadania do anulowania wszystkich przebiegów. To pole jest wymagane.

Uruchomienia pobierają dane wyjściowe

Punkt końcowy Metoda HTTP
2.0/jobs/runs/get-output GET

Pobieranie danych wyjściowych i metadanych pojedynczego uruchomienia zadania. Gdy zadanie notesu zwraca wartość za pośrednictwem wywołania dbutils.notebook.exit(), możesz użyć tego punktu końcowego do pobrania tej wartości. Usługa Azure Databricks ogranicza ten interfejs API do zwrócenia pierwszych 5 MB danych wyjściowych. Aby zwrócić większy wynik, możesz przechowywać wyniki zadania w usłudze magazynu 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, przed ich wygaśnięciem należy zapisać stare wyniki uruchamiania. 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

Zażądaj

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:

W tym przykładzie jest używany plik .netrc i plik jq.

Response

{
  "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 Type Opis
run_id INT64 Identyfikator kanoniczny przebiegu. W przypadku zadania z zadaniami wyciszenia jest run_id to zadanie podrzędne. Zobacz Uruchomienia pobierają dane wyjściowe. To pole jest wymagane.

Struktura odpowiedzi

Nazwa pola Type Opis
notebook_output LUB error NotesOutput LUB STRING Jeśli notebook_output, dane wyjściowe zadania notesu, jeśli są dostępne. Zadanie notesu, które kończy się (pomyślnie lub z błędem) bez wywoływania
dbutils.notebook.exit() jest uważany za puste dane wyjściowe. 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 jego danych wyjściowych.

Przebiegi usuwania

Punkt końcowy Metoda HTTP
2.0/jobs/runs/delete POST

Usuń nieaktywny przebieg. 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:

W tym przykładzie jest używany plik .netrc .

Struktura żądań

Nazwa pola Type Opis
run_id INT64 Identyfikator kanoniczny przebiegu, dla którego mają zostać pobrane metadane.

Struktury danych

W tej sekcji:

ABFSSStorageInfo

Informacje o magazynie usługi Azure Data Lake Storage (ADLS).

Nazwa pola Type Opis
destination STRING Miejsce docelowe pliku. Przykład: abfss://...

Autoskaluj

Zakres definiujący minimalną i maksymalną liczbę procesów roboczych klastra.

Nazwa pola Type Opis
min_workers INT32 Minimalna liczba procesów roboczych, do których klaster może być skalowany w dół, gdy nie jest wykorzystywana. Jest to również początkowa liczba procesów roboczych, które klaster będzie miał po utworzeniu.
max_workers INT32 Maksymalna liczba procesów roboczych, do których klaster może być skalowany w górę po przeciążeniu. max_workers musi być ściśle większa niż min_workers.

AzureAttributes

Atrybuty ustawione podczas tworzenia klastra powiązane z platformą Azure.

Nazwa pola Type Opis
first_on_demand INT32 Pierwsze first_on_demand węzły klastra zostaną umieszczone na wystąpieniach 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 węzły zostaną umieszczone na wystąpieniach 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 oferty 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), która określa, że wystąpienie nie może być eksmitowane na podstawie ceny. 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.

AzureAvailability

Zachowanie typu dostępności wystąpienia platformy Azure.

Type 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 wróć do wystąpień na żądanie, jeśli nie można uzyskać wystąpień typu spot (na przykład jeśli ceny typu spot platformy Azure są zbyt wysokie lub poza limitem przydziału). Nie dotyczy dostępności puli.

Klasa ClusterInstance

Identyfikatory dla klastra i kontekstu spark używanego przez przebieg. Te dwie wartości razem identyfikują kontekst wykonywania przez cały czas.

Nazwa pola Type Opis
cluster_id STRING Identyfikator kanoniczny klastra używanego przez przebieg. To pole jest zawsze dostępne dla przebiegów w 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 do /#setting/sparkui/$cluster_id/driver-logsstrony . Dzienniki będą nadal dostępne po zakończeniu przebiegu.

Odpowiedź nie będzie zawierać tego pola, jeśli identyfikator nie jest jeszcze dostępny.
spark_context_id STRING Identyfikator kanoniczny kontekstu platformy Spark używany przez przebieg. To pole zostanie wypełnione po rozpoczęciu wykonywania przebiegu. Ta wartość może służyć do wyświetlania interfejsu użytkownika platformy Spark, przechodząc do /#setting/sparkui/$cluster_id/$spark_context_idstrony . Interfejs użytkownika platformy Spark będzie nadal dostępny po zakończeniu przebiegu.

Odpowiedź nie będzie zawierać tego pola, jeśli identyfikator nie jest jeszcze dostępny.

ClusterLogConf

Ścieżka do dziennika klastra.

Nazwa pola Type Opis
dbfs DbfsStorageInfo Lokalizacja dbFS dziennika klastra. Należy podać miejsce docelowe. Przykład:
{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }

ClusterSpec

Ważne

  • Po uruchomieniu zadania w nowym klastrze zadań zadanie jest traktowane jako obciążenie Obliczeniowe zadania (zautomatyzowane) z cennikiem obliczeń zadań.
  • Po uruchomieniu zadania w istniejącym klastrze ogólnego przeznaczenia jest on traktowany jako obciążenie obliczenia ogólnego przeznaczenia (interaktywne) z cennikiem obliczeń ogólnego przeznaczenia.
Nazwa pola Type 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 przebiegu.

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.

Type Opis
STRING Klucz tagu. Klucz musi:

* Długość od 1 do 512 znaków
* Nie zawiera żadnych znaków <>%*&+?\\/
* Nie zaczyna się od azure, microsoftlub windows
STRING Wartość tagu. Długość wartości musi być mniejsza lub równa 256 znakom UTF-8.

CronSchedule

Nazwa pola Type Opis
quartz_cron_expression STRING Wyrażenie Cron używające składni kwarcowej opisujące harmonogram zadania. Aby uzyskać szczegółowe informacje, zobacz Wyzwalacz Cron. To pole jest wymagane.
timezone_id STRING Identyfikator strefy czasowej Java. Harmonogram zadania zostanie rozwiązany 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 "UNPAUSED".

DbfsStorageInfo

Informacje o magazynie SYSTEMU PLIKÓW DBFS.

Nazwa pola Type Opis
destination STRING Miejsce docelowe SYSTEMU PLIKÓW DBFS. Przykład: dbfs:/my/path

FileStorageInfo

Informacje o magazynie plików.

Uwaga

Ten typ lokalizacji jest dostępny tylko dla klastrów skonfigurowanych przy użyciu usług Kontener Services usługi Databricks.

Nazwa pola Type Opis
destination STRING Miejsce docelowe pliku. Przykład: file:/my/file.sh

InitScriptInfo

Ścieżka do skryptu init.

Aby uzyskać instrukcje dotyczące używania skryptów inicjowania w usługach Kontener Services usługi Databricks, zobacz Używanie skryptu inicjowania.

Uwaga

Typ magazynu plików (nazwa pola: file) jest dostępny tylko dla klastrów skonfigurowanych przy użyciu usługi Kontener Services usługi Databricks. Zobacz FileStorageInfo.

Nazwa pola Type Opis
workspace LUB
dbfs (przestarzałe)

LUB
abfss
WorkspaceStorageInfo

DbfsStorageInfo (przestarzałe)

ABFSSStorageInfo
Lokalizacja obszaru roboczego skryptu inicjowania. Należy podać miejsce docelowe. Przykład:
{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } }

(Przestarzałe) Lokalizacja dbFS skryptu init. Należy podać miejsce docelowe. 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 Type 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 oparta na bieżących ustawieniach zadania i jest ustawiona na twórcę zadania, jeśli kontrola dostępu do zadania jest wyłączona, lub is_owner uprawnienie, jeśli kontrola dostępu do zadania jest włączona.
settings Zadanie Ustawienia 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).

JobEmailNotifications

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 Type Opis
on_start Tablica STRING Lista adresów e-mail, które mają być powiadamiane o rozpoczęciu przebiegu. 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 przebiegu. Przebieg jest uznawany za zakończony pomyślnie, jeśli kończy się elementem TERMINATEDlife_cycle_state i .SUCCESSFULresult_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_stateSKIPPEDlub , FAILEDlub 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.
on_duration_warning_threshold_exceeded Tablica STRING Lista adresów e-mail, które mają być powiadamiane, gdy czas trwania przebiegu przekracza próg określony dla RUN_DURATION_SECONDS metryki w health polu. Jeśli w polu zadania nie określono health żadnej reguły dla RUN_DURATION_SECONDS metryki, powiadomienia nie są wysyłane.
no_alert_for_skipped_runs BOOL Jeśli wartość true, nie wysyłaj wiadomości e-mail do adresatów określonych w on_failure przypadku pominięcia przebiegu.
Nazwa pola Type Opis
on_start Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane o rozpoczęciu przebiegu. Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Dla właściwości można określić on_start maksymalnie 3 miejsca docelowe.
on_success Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane po pomyślnym zakończeniu przebiegu. Przebieg jest uznawany za zakończony pomyślnie, jeśli kończy się elementem TERMINATEDlife_cycle_state i .SUCCESSFULresult_state Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Dla właściwości można określić on_success maksymalnie 3 miejsca docelowe.
on_failure Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, 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_stateSKIPPEDlub , FAILEDlub 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. Dla właściwości można określić on_failure maksymalnie 3 miejsca docelowe.
on_duration_warning_threshold_exceeded Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane, gdy czas trwania przebiegu przekracza próg określony dla RUN_DURATION_SECONDS metryki w health polu. Dla właściwości można określić on_duration_warning_threshold_exceeded maksymalnie 3 miejsca docelowe.

JobNotification Ustawienia

Nazwa pola Type Opis
no_alert_for_skipped_runs BOOL Jeśli wartość true, nie wysyłaj powiadomień do adresatów określonych w on_failure poleceniu , jeśli przebieg zostanie pominięty.
no_alert_for_canceled_runs BOOL Jeśli wartość true, nie wysyłaj powiadomień do adresatów określonych w on_failure przypadku anulowania przebiegu.
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.

Zadanie Ustawienia

Ważne

  • Po uruchomieniu zadania w nowym klastrze zadań zadanie jest traktowane jako obciążenie Obliczeniowe zadania (zautomatyzowane) z cennikiem obliczeń zadań.
  • Po uruchomieniu zadania w istniejącym klastrze ogólnego przeznaczenia jest on traktowany jako obciążenie obliczenia ogólnego przeznaczenia (interaktywne) z cennikiem obliczeń ogólnego przeznaczenia.

Ustawienia dla zadania. Te ustawienia można zaktualizować przy użyciu resetJob metody .

Nazwa pola Type 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 przebiegu.

Jeśli określono wartość PipelineTask, to pole może być puste.
notebook_taskOR LUB spark_jar_task
spark_python_taskOR 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, wskazuje, że to zadanie powinno uruchomić notes. 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 przesyłania platformy Spark.

Jeśli pipeline_task, wskazuje, że to zadanie powinno uruchomić potok Delta Live Tables.

Jeśli run_job_task, wskazuje, ż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 Elementy webhookNotifications Opcjonalny zestaw miejsc docelowych systemu do powiadamiania o rozpoczęciu, zakończeniu lub awarii tego zadania.
notification_settings JobNotification Ustawienia 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 zastosowany 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 FAILED , jeśli zakończy się z result_state lub
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, klikając pozycję "Uruchom teraz" w interfejsie użytkownika zadań lub wysyłając żądanie interfejsu API do
runNow.
max_concurrent_runs INT32 Opcjonalna dozwolona maksymalna dozwolona liczba współbieżnych uruchomień 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ę od ich parametrów wejściowych.

To ustawienie ma wpływ tylko na nowe uruchomienia. Załóżmy na przykład, że współbieżność zadania wynosi 4 i istnieje 4 współbieżne aktywne uruchomienia. Następnie ustawienie współbieżności na 3 nie spowoduje zabicia żadnego z aktywnych przebiegów. Jednak od tego czasu nowe uruchomienia zostaną pominięte, chyba że istnieje mniej niż 3 aktywne uruchomienia.

Ta wartość nie może przekroczyć 1000. Ustawienie tej wartości na 0 powoduje pominięcie wszystkich nowych przebiegów. Domyślne zachowanie polega na zezwalaniu na uruchamianie tylko 1 współbieżne.
health ZadaniaHealthRules Opcjonalny zestaw reguł kondycji zdefiniowany dla zadania.

ZadanieTask

Nazwa pola Type Opis
notebook_taskOR LUB spark_jar_task
spark_python_taskOR 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, wskazuje, że to zadanie powinno uruchomić notes. 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 przesyłania platformy Spark.

Jeśli pipeline_task, wskazuje, że to zadanie powinno uruchomić potok Delta Live Tables.

Jeśli run_job_task, wskazuje, że to zadanie powinno uruchomić inne zadanie.

ZadaniaHealthRule

Nazwa pola Type Opis
metric STRING Określa metrykę kondycji, która jest oceniana dla określonej reguły kondycji. 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.

ZadaniaHealthRules

Nazwa pola Type Opis
rules Tablica zadańHealthRule Opcjonalny zestaw reguł kondycji, które można zdefiniować dla zadania.

Biblioteki

Nazwa pola Type Opis
jarLUB LUB eggwhl
pypiOR LUB mavencran
STRINGLUB STRINGSTRINGLUB PythonPyPiLibrary LUB MavenLibrary LUB RCranLibrary Jeśli plik jar, identyfikator 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 usługa ADLS jest używana, upewnij się, że klaster ma dostęp do odczytu w bibliotece.

Jeśli jajko, identyfikator URI jaja do zainstalowania. Obsługiwane są identyfikatory URL systemu plików DBFS i ADLS. Na przykład: { "egg": "dbfs:/my/egg" } lub
{ "egg": "abfss://<container-path>/egg" }.

Jeśli whl, identyfikator URI wheel pliku lub spakowanego wheels do zainstalowania. Obsługiwane są identyfikatory URL systemu plików 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 repo pola jest opcjonalne i 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, specyfikacja biblioteki Maven do zainstalowania. 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 Type Opis
coordinates STRING Współrzędne narzędzia 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 z programu . W przypadku pominięcia przeszukiwane są zarówno centralne repozytorium Maven, jak i pakiety Spark.
exclusions Tablica STRING Lista zależności do wykluczenia. Na przykład: ["slf4j:slf4j", "*:hadoop-client"].

Wykluczenia zależności narzędzia Maven: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html.

NewCluster

Nazwa pola Type Opis
num_workers LUB autoscale INT32 OR Autoskaluj Jeśli num_workers, liczba węzłów roboczych, które powinien mieć ten klaster. Klaster ma jeden sterownik Spark i num_workers funkcji wykonawczych dla łącznie num_workers i 1 węzłów platformy Spark.

Uwaga: podczas odczytywania właściwości klastra to pole odzwierciedla żądaną liczbę procesów roboczych, a nie rzeczywistą bieżącą liczbę procesów roboczych. Na przykład jeśli rozmiar klastra zostanie zmieniony z 5 na 10 procesów roboczych, to pole zostanie natychmiast zaktualizowane w celu odzwierciedlenia docelowego rozmiaru 10 procesów roboczych, natomiast pracownicy wymienieni w spark_info stopniowo rosną z 5 do 10 w miarę aprowizacji 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 platformy Spark określony przez użytkownika. Możesz również przekazać ciąg dodatkowych opcji JVM do sterownika i funkcji wykonawczych za pośrednictwem polecenia
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, instance_pool_id pole lub zasady klastra, które określają identyfikator typu węzła lub identyfikator puli wystąpień, jest wymagane.
driver_node_type_id STRING Typ węzła sterownika spark. To pole jest opcjonalne; jeśli nie zostanie ustawiona, typ węzła sterownika jest ustawiony jako ta sama wartość, jak node_type_id zdefiniowano powyżej.
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:

* Tagi nie są obsługiwane w starszych typach węzłów, takich jak zoptymalizowane pod kątem obliczeń i zoptymalizowane pod kątem pamięci
* Usługa Databricks zezwala na co najwyżej 45 tagów niestandardowych
cluster_log_conf ClusterLogConf Konfiguracja dostarczania dzienników platformy Spark do długoterminowego miejsca docelowego magazynu. Dla jednego klastra można określić tylko jedno miejsce docelowe. Jeśli konfikacja zostanie podana, dzienniki zostaną dostarczone do miejsca docelowego 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 inicjowania 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ść formularza (X,Y) jest eksportowana w postaci (tj.
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 pracownicy platformy Spark działają nisko 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 interfejsem 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 on używany zarówno dla węzła sterownika, jak i węzłów procesu roboczego. Aby uzyskać szczegółowe informacje, zapoznaj się z interfejsem API pul wystąpień.

NotesOutput

Nazwa pola Type 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. W przypadku większego wyniku zadanie może przechowywać wyniki w usłudze magazynu 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.

NotebookTask

Wszystkie komórki wyjściowe podlegają rozmiarowi 8 MB. Jeśli dane wyjściowe komórki mają większy rozmiar, pozostałe uruchomienia zostaną anulowane, a przebieg zostanie oznaczony jako niepowodzenie. W takim przypadku brakuje również niektórych danych wyjściowych zawartości z innych komórek.

Jeśli potrzebujesz pomocy w znalezieniu komórki, która przekracza limit, uruchom notes dla klastra ogólnego przeznaczenia i użyj tej techniki automatycznego zapisywanie notesu.

Nazwa pola Type Opis
notebook_path STRING Ścieżka bezwzględna notesu do uruchomienia 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 przebieg zostanie zainicjowany przez wywołanie metody run-now z określonymi parametrami, zostaną scalone dwie mapy parametrów. Jeśli ten sam klucz jest określony w i base_parameters w run-now, zostanie użyta wartość z run-now .

Użyj polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.

Jeśli notes przyjmuje parametr, który nie jest określony w parametrach zadania base_parameters lub run-now przesłonięcia, zostanie użyta wartość domyślna z notesu.

Pobierz te parametry w notesie przy użyciu polecenia dbutils.widgets.get.

ParamPair

Parametry oparte na nazwach dla zadań z uruchomionymi zadaniami notesu.

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.

Type Opis
STRING Nazwa parametru. Przekaż do pliku dbutils.widgets.get , aby pobrać wartość.
STRING Wartość parametru.

PipelineTask

Nazwa pola Type Opis
pipeline_id STRING Pełna nazwa zadania potoku Delta Live Tables do wykonania.

PythonPyPiLibrary

Nazwa pola Type 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 Type 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.

Uruchomić

Wszystkie informacje o przebiegu z wyjątkiem jego danych wyjściowych. Dane wyjściowe można pobrać oddzielnie za pomocą getRunOutput metody .

Nazwa pola Type Opis
job_id INT64 Kanoniczny identyfikator zadania zawierającego ten przebieg.
run_id INT64 Identyfikator kanoniczny przebiegu. Ten identyfikator jest unikatowy we wszystkich uruchomieniach 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 wśród wszystkich uruchomień zadania. Ta wartość zaczyna się od 1.
original_attempt_run_id INT64 Jeśli ten przebieg jest ponowną próbą wcześniejszej próby uruchomienia, to pole zawiera run_id oryginalnej próby; w przeciwnym razie jest taka sama jak run_id.
state RunState Wyniki i stany cyklu życia przebiegu.
schedule CronSchedule Harmonogram cron, który wyzwolił to uruchomienie, jeśli został wyzwolony przez harmonogram okresowy.
task ZadanieTask Zadanie wykonywane przez przebieg, jeśli istnieje.
cluster_spec ClusterSpec Migawka specyfikacji klastra zadania podczas tworzenia tego przebiegu.
cluster_instance Klasa ClusterInstance Klaster używany na potrzeby tego przebiegu. Jeśli przebieg zostanie określony do użycia nowego klastra, to pole zostanie ustawione po zażądaniu klastra dla uruchomienia przez usługę Zadań.
overriding_parameters RunParameters Parametry używane na potrzeby tego przebiegu.
start_time INT64 Czas rozpoczęcia tego przebiegu w milisekundach epoki (milisekundy od 1.1.1.1970 UTC). Może to nie być czas rozpoczęcia wykonywania zadania zadania, na przykład jeśli zadanie zostało zaplanowane do uruchomienia w nowym klastrze, jest to czas, w którym zostanie wydane wywołanie tworzenia klastra.
setup_duration INT64 Czas konfigurowania klastra w milisekundach. W przypadku przebiegów uruchamianych w nowych klastrach jest to czas tworzenia klastra, w przypadku przebiegów uruchamianych w istniejących klastrach tym razem powinno być bardzo krótkie.
execution_duration INT64 Czas w milisekundach, który trwał, aby wykonać polecenia w pliku JAR lub notesie, dopóki nie zostały ukończone, zakończone niepowodzeniem, upłynął limit czasu, zostały anulowane lub napotkały nieoczekiwany błąd.
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 setup_duration, execution_duration i cleanup_duration.
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 przebieg.
run_name STRING Opcjonalna nazwa przebiegu. 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 Typ przebiegu.

* JOB_RUN - Normalne uruchomienie zadania. Przebieg utworzony za pomocą polecenia Uruchom teraz.
* WORKFLOW_RUN — Przebieg przepływu pracy. Uruchomienie utworzone za pomocą polecenia dbutils.notebook.run.
* SUBMIT_RUN — Prześlij przebieg. Przebieg utworzony za pomocą polecenia Uruchom teraz.
attempt_number INT32 Numer sekwencji tej próby uruchomienia wyzwolonego zadania. Początkowa próba uruchomienia ma attempt_number 0. Jeśli początkowa próba uruchomienia zakończy się niepowodzeniem, a zadanie ma zasady ponawiania prób (max_retries> 0), kolejne uruchomienia zostaną utworzone przy użyciu original_attempt_run_id identyfikatora oryginalnej próby i przyrostu attempt_number. Uruchomienia są ponawiane tylko do momentu pomyślnego wykonania, a maksymalna attempt_number wartość jest taka sama jak max_retries wartość zadania.

RunJobTask

Nazwa pola Type Opis
job_id INT32 Unikatowy identyfikator zadania do uruchomienia. To pole jest wymagane.

RunLifeCycleState

Stan cyklu życia przebiegu. Dozwolone przejścia stanu to:

  • PENDING- - ->RUNNING>TERMINATING>TERMINATED
  • PENDING ->SKIPPED
  • PENDING ->INTERNAL_ERROR
  • RUNNING ->INTERNAL_ERROR
  • TERMINATING ->INTERNAL_ERROR
Stan opis
PENDING Przebieg został wyzwolony. Jeśli nie ma jeszcze aktywnego uruchomienia tego samego zadania, jest przygotowywany kontekst klastra i wykonywania. Jeśli istnieje już aktywny przebieg tego samego zadania, przebieg zostanie natychmiast przeniesiony do SKIPPED stanu bez przygotowywania żadnych zasobów.
RUNNING Zadanie tego przebiegu jest wykonywane.
TERMINATING Zadanie tego przebiegu zostało ukończone, a kontekst klastra i wykonywania są czyszczone.
TERMINATED Zadanie tego uruchomienia zostało ukończone, a kontekst klastra i wykonywania zostały wyczyszczone. Ten stan to terminal.
SKIPPED Ten przebieg został przerwany, ponieważ poprzedni przebieg tego samego zadania był już aktywny. Ten stan to terminal.
INTERNAL_ERROR Wyjątkowy stan wskazujący błąd w usłudze Jobs, taki jak awaria sieci w długim okresie. Jeśli uruchomienie w nowym klastrze zakończy się w INTERNAL_ERROR stanie, usługa Zadania zakończy klaster tak szybko, jak to możliwe. Ten stan to terminal.

RunParameters

Parametry dla tego przebiegu. W żądaniu run-now należy określić tylko jedną z jar_params lub python_paramsnotebook_params w zależności od typu zadania. Zadania z zadaniem JAR platformy Spark lub zadaniem języka Python zajmują listę parametrów opartych na pozycji, a zadania z zadaniami notesu wykonują mapę kluczowych wartości.

Nazwa pola Type Opis
jar_params Tablica STRING Lista parametrów zadań z zadaniami 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 polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.
notebook_params Mapa ParamPair Mapa z kluczy do wartości zadań z zadaniem notesu, 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 run-now, wyzwalany przebieg używa parametrów podstawowych zadania.

notebook_params nie można określić w połączeniu z jar_params.

Użyj polecenia Przekaż kontekst zadania podrzędnego, 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 zadań z zadaniami 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 polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.

> [! WAŻNE] >> 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 zadań z zadaniem przesyłania platformy Spark, np.
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. Parametry są przekazywane do skryptu spark-submit jako parametrów 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 polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.

> [! WAŻNE] >> 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 wyniku 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 = PENDINGstan wyniku , RUNNINGlub SKIPPEDjest niedostępny.
  • Jeśli life_cycle_state = TERMINATING lub lifecyclestate = INTERNAL_ERROR: stan wyniku jest dostępny, jeśli przebieg miał zadanie i udało mu się go 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 osiągnięciu limitu czasu.
CANCELED Przebieg został anulowany na żądanie użytkownika.

RunState

Nazwa pola Type Opis
life_cycle_state RunLifeCycleState Opis bieżącej lokalizacji przebiegu 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, ponieważ upłynął limit czasu uruchomienia.
state_message STRING Opisowy komunikat dla bieżącego stanu. To pole jest nieustrukturyzowane, a jego dokładny format podlega zmianie.

SparkConfPair

Pary klucz-wartość konfiguracji platformy Spark.

Type Opis
STRING Nazwa właściwości konfiguracji.
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.

Type Opis
STRING Nazwa zmiennej środowiskowej.
STRING Wartość zmiennej środowiskowej.

SparkJarTask

Nazwa pola Type Opis
jar_uri STRING Przestarzałe od 04.2016 r. jar Zamiast tego podaj wartość za pośrednictwem libraries pola. Aby zapoznać się z przykładem, zobacz Tworzenie.
main_class_name STRING Pełna nazwa klasy zawierającej metodę main 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 przekazane do metody main.

Użyj polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.

SparkPythonTask

Nazwa pola Type Opis
python_file STRING Identyfikator URI pliku języka Python do wykonania. 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 polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.

SparkSubmitTask

Ważne

  • Zadania przesyłania platformy Spark można wywoływać tylko w nowych klastrach.
  • W specyfikacji libraries new_cluster i spark_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-modei executor-cores są automatycznie konfigurowane przez usługę Azure Databricks; nie można ich określić w parametrach.
  • Domyślnie zadanie przesyłania platformy Spark używa całej dostępnej pamięci (z wyłączeniem zarezerwowanej pamięci dla usług Azure Databricks). Możesz ustawić --driver-memorywartość i --executor-memory na mniejszą wartość, aby pozostawić trochę miejsca na użycie sterty poza stertą.
  • --jarsArgumenty , --files--py-filesobsł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 Type Opis
parameters Tablica STRING Parametry wiersza polecenia przekazane do przesyłania platformy Spark.

Użyj polecenia Przekaż kontekst zadania podrzędnego, aby ustawić parametry zawierające informacje o uruchomieniach zadań.

Typ wyzwalacza

Są to typy wyzwalaczy, które mogą uruchamiać przebieg.

Type Opis
PERIODIC Harmonogramy, które okresowo wyzwalają uruchomienia, takie jak harmonogram cron.
ONE_TIME Jednorazowe wyzwalacze, które uruchamiają pojedynczy przebieg. Dzieje się tak, że jeden przebieg na żądanie został wyzwolony za pośrednictwem interfejsu użytkownika lub interfejsu API.
RETRY Wskazuje przebieg, który jest wyzwalany jako ponawianie wcześniej nieudanego przebiegu. Dzieje się tak, gdy żądasz ponownego uruchomienia zadania w przypadku awarii.

ViewItem

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 Type 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

Type Opis
NOTEBOOK Element widoku notesu.
DASHBOARD Element widoku pulpitu nawigacyjnego.

ViewsToExport

Widok do wyeksportowania: kod, wszystkie pulpity nawigacyjne lub wszystkie.

Type Opis
CODE Widok kodu notesu.
DASHBOARDS Wszystkie widoki pulpitu nawigacyjnego notesu.
ALL Wszystkie widoki notesu.

Element webhook

Nazwa pola Type Opis
id STRING Identyfikator odwołujący się do miejsca docelowego powiadomień systemowych. To pole jest wymagane.

Elementy webhookNotifications

Nazwa pola Type Opis
on_start Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane o rozpoczęciu przebiegu. Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Dla właściwości można określić on_start maksymalnie 3 miejsca docelowe.
on_success Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane po pomyślnym zakończeniu przebiegu. Przebieg jest uznawany za zakończony pomyślnie, jeśli kończy się elementem TERMINATEDlife_cycle_state i .SUCCESSFULresult_state Jeśli nie określono wartości podczas tworzenia, resetowania lub aktualizowania zadań, lista jest pusta, a powiadomienia nie są wysyłane. Dla właściwości można określić on_success maksymalnie 3 miejsca docelowe.
on_failure Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, 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_stateSKIPPEDlub , FAILEDlub TIMED_OUTresult_state. Jeśli ta wartość nie jest określona podczas tworzenia, resetowania lub aktualizowania listy jest pusta, a powiadomienia nie są wysyłane. Dla właściwości można określić on_failure maksymalnie 3 miejsca docelowe.
on_duration_warning_threshold_exceeded Tablica elementów webhook Opcjonalna lista miejsc docelowych systemu, które mają być powiadamiane, gdy czas trwania przebiegu przekracza próg określony dla RUN_DURATION_SECONDS metryki w health polu. Dla właściwości można określić on_duration_warning_threshold_exceeded maksymalnie 3 miejsca docelowe.

WorkspaceStorageInfo

Informacje o magazynie obszaru roboczego.

Nazwa pola Type Opis
destination STRING Miejsce docelowe pliku. Przykład: /Users/someone@domain.com/init_script.sh