Interfejs wiersza polecenia zadań (starsza wersja)
Ważne
Ta dokumentacja została wycofana i może nie zostać zaktualizowana.
Te informacje dotyczą starszych wersji interfejsu wiersza polecenia usługi Databricks w wersji 0.18 i poniżej. Usługa Databricks zaleca użycie nowszego interfejsu wiersza polecenia usługi Databricks w wersji 0.205 lub nowszej. Zobacz Co to jest interfejs wiersza polecenia usługi Databricks?. Aby znaleźć swoją wersję interfejsu wiersza polecenia usługi Databricks, uruchom polecenie databricks -v
.
Aby przeprowadzić migrację z interfejsu wiersza polecenia usługi Databricks w wersji 0.18 lub nowszej do interfejsu wiersza polecenia usługi Databricks w wersji 0.205 lub nowszej, zobacz Migracja interfejsu wiersza polecenia usługi Databricks.
Uruchamiasz polecenia interfejsu wiersza polecenia zadań usługi Databricks, dołączając je do databricks jobs
polecenia i zadanie usługi Databricks uruchamia podpolecenia interfejsu wiersza polecenia, dołączając je do databricks runs
polecenia . W przypadku zadania usługi Databricks uruchamia polecenia podrzędne interfejsu wiersza polecenia, zobacz interfejs wiersza polecenia uruchamiania (starsza wersja). Razem te podpolecenia wywołają interfejs API zadań i interfejs API zadań 2.0.
Ważne
Interfejs wiersza polecenia zadań usługi Databricks obsługuje wywołania dwóch wersji interfejsu API REST zadań usługi Databricks: w wersjach 2.1 i 2.0. Wersja 2.1 dodaje obsługę orkiestracji zadań z wieloma zadaniami; Zobacz Planowanie i organizowanie przepływów pracy oraz Aktualizowanie z interfejsu API zadań 2.0 do 2.1. Usługa Databricks zaleca wywołanie wersji 2.1, chyba że masz starsze skrypty, które korzystają z wersji 2.0 i których nie można migrować.
O ile nie określono inaczej, zachowania programowe opisane w tym artykule mają zastosowanie równie do wersji 2.1 i 2.0.
Wymagania dotyczące wywoływania interfejsu API REST zadań 2.1
Aby skonfigurować interfejs wiersza polecenia zadań usługi Databricks i użyć go do wywołania interfejsu API REST zadań 2.1, wykonaj następujące czynności:
Zaktualizuj interfejs wiersza polecenia do wersji 0.16.0 lub nowszej.
Wykonaj jedną z następujących czynności:
- Uruchom polecenie
databricks jobs configure --version=2.1
. Spowoduje to dodanie ustawieniajobs-api-version = 2.1
do pliku~/.databrickscfg
w systemach Unix, Linux lub macOS lub%USERPROFILE%\.databrickscfg
Windows. Wszystkie polecenia interfejsu wiersza polecenia (i zadania uruchamiają interfejs wiersza polecenia) będą domyślnie wywoływać interfejs API REST zadań 2.1. - Ręcznie dodaj ustawienie
jobs-api-version = 2.1
do pliku~/.databrickscfg
w systemach Unix, Linux lub macOS lub%USERPROFILE%\.databrickscfg
Windows. Wszystkie polecenia interfejsu wiersza polecenia (i zadania uruchamiają interfejs wiersza polecenia) będą domyślnie wywoływać interfejs API REST zadań 2.1. - Dołącz opcję
--version=2.1
(na przykładdatabricks jobs list --version=2.1
), aby poinstruować interfejs wiersza polecenia zadań w celu wywołania interfejsu API REST zadań w wersji 2.1 tylko dla tego wywołania.
Jeśli nie wykonasz żadnej z powyższych akcji, interfejs wiersza polecenia zadań (i uruchamia interfejs wiersza polecenia zadania) domyślnie wywoła interfejs API REST zadań 2.0.
- Uruchom polecenie
Wymagania dotyczące wywoływania interfejsu API REST zadań 2.0
Aby skonfigurować interfejs wiersza polecenia zadań usługi Databricks i użyć go do wywołania interfejsu API REST zadań 2.0, wykonaj jedną z następujących czynności:
- Użyj wersji interfejsu wiersza polecenia usługi Databricks poniżej wersji 0.16.0 lub
-
Zaktualizuj interfejs wiersza polecenia do wersji X.Y.Z lub nowszej, a następnie wykonaj jedną z następujących czynności:
- Uruchom polecenie
databricks jobs configure --version=2.0
. Spowoduje to dodanie ustawieniajobs-api-version = 2.0
do pliku~/.databrickscfg
w systemach Unix, Linux lub macOS lub%USERPROFILE%\.databrickscfg
Windows. Wszystkie polecenia interfejsu wiersza polecenia zadań (i zadania uruchamiają interfejs wiersza polecenia) będą domyślnie wywoływać interfejs API REST zadań 2.0. - Ręcznie dodaj ustawienie
jobs-api-version = 2.0
do pliku~/.databrickscfg
w systemach Unix, Linux lub macOS lub%USERPROFILE%\.databrickscfg
Windows. Wszystkie polecenia interfejsu wiersza polecenia zadań (i zadania uruchamiają interfejs wiersza polecenia) będą domyślnie wywoływać interfejs API REST zadań 2.0. - Dołącz opcję
--version=2.1
(na przykładdatabricks jobs list --version=2.0
), aby poinstruować interfejs wiersza polecenia zadań w celu wywołania interfejsu API REST zadań w wersji 2.0 tylko dla tego wywołania.
- Uruchom polecenie
Jeśli nie wykonasz żadnej z powyższych akcji, interfejs wiersza polecenia zadań (i uruchamia interfejs wiersza polecenia zadania) domyślnie wywoła interfejs API REST zadań 2.0.
Podpolecenia i ogólne użycie
databricks jobs -h
Usage: databricks jobs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs.
Job runs are handled by ``databricks runs``.
Options:
-v, --version [VERSION]
-h, --help Show this message and exit.
Commands:
create Creates a job.
Options:
--json-file PATH File containing JSON request to POST to /api/2.0/jobs/create.
--json JSON JSON string to POST to /api/2.0/jobs/create.
delete Deletes a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
get Describes the metadata for a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
list Lists the jobs in the Databricks Job Service.
reset Resets (edits) the definition of a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
--json-file PATH File containing JSON request to POST to /api/2.0/jobs/create.
--json JSON JSON string to POST to /api/2.0/jobs/create.
run-now Runs a job with optional per-run parameters.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/#job/$JOB_ID. [required]
--jar-params JSON JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
--notebook-params JSON JSON string specifying a map of key-value pairs. i.e. '{"name": "john doe", "age": 35}'
--python-params JSON JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
--spark-submit-params JSON JSON string specifying an array of parameters. i.e. '["--class", "org.apache.spark.examples.SparkPi"]'
Tworzenie zadania
Aby wyświetlić dokumentację użycia, uruchom polecenie databricks jobs create --help
.
Ogólne użycie
databricks jobs create --json-file create-job.json
Przykład użycia interfejsu wiersza polecenia zadań 2.1 i żądania
Zobacz Artykuł Create in Updating from Jobs API 2.0 to 2.1 (Tworzenie w aktualizowaniu z interfejsu API zadań 2.0 do 2.1).
Przykład ładunku żądania i odpowiedzi dla interfejsu wiersza polecenia zadań 2.0
create-job.json
:
{
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
}
}
{ "job_id": 246 }
Napiwek
Aby skopiować zadanie, uruchom create
polecenie i przekaż obiekt JSON z ustawieniami zadania do skopiowania. Ten przykład kopiuje ustawienia zadania z identyfikatorem 246
do nowego zadania.
Wymaga narzędzia jq.
SETTINGS_JSON=$(databricks jobs get --job-id 246 | jq .settings)
databricks jobs create --json "$SETTINGS_JSON"
{ "job_id": 247 }
Usuwanie zadania
Aby wyświetlić dokumentację użycia, uruchom polecenie databricks jobs delete --help
.
databricks job delete --job-id 246
W przypadku powodzenia żadne dane wyjściowe nie są wyświetlane.
Napiwek
Aby usunąć wiele zadań mających to samo ustawienie, pobierz listę identyfikatorów zadań pasujących do tego ustawienia, a następnie uruchom delete
polecenie dla każdego zgodnego identyfikatora zadania. W tym przykładzie wszystkie zadania są usuwane z nazwą Untitled
zadania .
Wymaga narzędzia jq.
databricks jobs list --output json | jq '.jobs[] | select(.settings.name == "Untitled") | .job_id' | xargs -n 1 databricks jobs delete --job-id
Wyświetlanie listy informacji o zadaniu
Aby wyświetlić dokumentację użycia, uruchom polecenie databricks jobs get --help
.
Ogólne użycie
databricks jobs get --job-id 246
Przykładowe informacje o użyciu i odpowiedzi interfejsu wiersza polecenia zadań 2.1
Zobacz Pobieranie aktualizacji z interfejsu API zadań 2.0 do 2.1.
Przykład odpowiedzi interfejsu wiersza polecenia zadań 2.0
{
"job_id": 246,
"settings": {
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
},
"timeout_seconds": 0,
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"max_concurrent_runs": 1
},
"created_time": 1620163107742,
"creator_user_name": "someone@example.com"
}
Wyświetlanie listy informacji o dostępnych zadaniach
Aby wyświetlić dokumentację użycia, uruchom polecenie databricks jobs list --help
.
Ogólne użycie
databricks jobs list
Przykładowe informacje o użyciu i odpowiedzi interfejsu wiersza polecenia zadań 2.1
Zobacz Artykuł List in Updating from Jobs API 2.0 to 2.1 (Lista w aktualizowaniu z interfejsu API zadań 2.0 do 2.1).
Przykład odpowiedzi interfejsu wiersza polecenia zadań 2.0
{
"jobs": [
{
"job_id": 246,
"settings": {
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
},
"timeout_seconds": 0,
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"max_concurrent_runs": 1
},
"created_time": 1620163107742,
"creator_user_name": "someone@example.com"
},
...
]
}
Wyświetlanie listy wszystkich zadań (tylko interfejs API 2.1)
Aby poinstruować interfejs wiersza polecenia, aby zwracał wszystkie zadania, wykonując sekwencyjne wywołania interfejsu API, użyj --all
opcji . Aby użyć --all
tej opcji, należy ustawić wersję interfejsu API na 2.1.
databricks jobs list --all
Stronicuj listę zadań (tylko interfejs API 2.1)
Aby zwrócić listę zadań podzielonych na strony, użyj --limit
argumentów i --offset
. Domyślnie lista zadań jest zwracana jako tabela zawierająca identyfikator zadania i nazwę zadania. Aby opcjonalnie zwrócić dokument JSON zawierający informacje o zadaniu, użyj argumentu --output JSON
.
Aby użyć --limit
argumentów i --offset
, należy ustawić wersję interfejsu API na 2.1.
W przypadku korzystania z --output JSON
elementu lista jest zwracana w kolejności malejącej według daty utworzenia zadania. W przypadku korzystania z --output TABLE
elementu lista jest zwracana w kolejności malejącej według daty utworzenia zadania, a następnie sortowana alfabetycznie według nazwy zadania.
Następujące przykładowe strony na liście zadań zawierają 10 zadań jednocześnie i zwracają wyniki w formacie JSON:
databricks jobs list --output JSON --limit 10
databricks jobs list --output JSON --limit 10 --offset 10
databricks jobs list --output JSON --limit 10 --offset 20
Zmienianie ustawień zadania
Aby wyświetlić dokumentację użycia, uruchom polecenie databricks jobs reset --help
.
Ogólne użycie
databricks jobs reset --job-id 246 --json-file reset-job.json
Przykład użycia interfejsu wiersza polecenia zadań 2.1 i żądania
Zobacz Aktualizowanie i resetowanie w temacie Aktualizowanie z interfejsu API zadań w wersji 2.0 do 2.1.
Przykład żądania interfejsu wiersza polecenia zadań 2.0
reset-job.json
:
{
"job_id": 246,
"existing_cluster_id": "2345-678901-batch234",
"name": "my-changed-job",
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Other Notebook"
},
"email_notifications": {
"on_success": [
"someone-else@example.com"
],
"on_failure": [
"someone-else@example.com"
]
}
}
W przypadku powodzenia żadne dane wyjściowe nie są wyświetlane.
Uruchamianie zadania
Aby wyświetlić dokumentację użycia, uruchom polecenie databricks jobs run-now --help
.
databricks jobs run-now --job-id 246
{
"run_id": 122,
"number_in_job": 1
}