Udostępnij za pośrednictwem


Uruchamia interfejs wiersza polecenia (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.

Zadanie usługi Databricks uruchamia podpolecenia interfejsu wiersza polecenia, dołączając je do databricks runs poleceń interfejsu wiersza polecenia i podpolecenia interfejsu wiersza polecenia usługi Databricks, dołączając je do databricks jobspolecenia . W przypadku podpolecenia interfejsu wiersza polecenia zadań usługi Databricks zobacz interfejs wiersza polecenia zadań (starsza wersja). Razem te podpolecenia wywołają interfejs API zadań i interfejs API zadań 2.0.

Ważne

Zadanie usługi Databricks uruchamia interfejs wiersza polecenia obsługuje wywołania do dwóch wersji interfejsu API REST zadań usługi Databricks: w wersjach 2.1 i 2.0. (Funkcje uruchamiania zadań są częścią interfejsu API REST zadań). 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 nie można ich migrować.

O ile nie określono inaczej, zachowania programowe opisane w tym artykule mają zastosowanie równie do wersji 2.1 i 2.0.

Uwaga

Jeśli podczas wykonywania żądań interfejsu wiersza polecenia wystąpi błąd 500 poziomu, usługa Databricks zaleca ponawianie żądań przez maksymalnie 10 minut (z co najmniej 30-sekundowym interwałem między ponownymi próbami).

Wymagania dotyczące wywoływania interfejsu API REST zadań 2.1

Aby skonfigurować zadanie usługi Databricks, uruchamia interfejs wiersza polecenia (i interfejs wiersza polecenia zadań) w celu wywołania interfejsu API REST zadań 2.1, wykonaj następujące czynności:

  1. Zaktualizuj interfejs wiersza polecenia do wersji 0.16.0 lub nowszej.

  2. Wykonaj jedną z następujących czynności:

    • Uruchom polecenie databricks jobs configure --version=2.1. Spowoduje to dodanie ustawienia jobs-api-version = 2.1 do pliku ~/.databrickscfg w systemach Unix, Linux lub macOS lub %USERPROFILE%\.databrickscfg Windows. Wszystkie polecenia interfejsu wiersza polecenia (i interfejs wiersza polecenia zadań) 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 interfejs wiersza polecenia zadań) będą domyślnie wywoływać interfejs API REST zadań 2.1.
    • Dołącz opcję --version=2.1 (na przykład databricks runs list --version=2.1), aby poinstruować, że zadanie uruchamia interfejs wiersza polecenia w celu wywołania interfejsu API REST zadań 2.1 tylko dla tego wywołania.

    Jeśli żadne z powyższych akcji nie zostanie wykonane, zadanie uruchomi interfejs wiersza polecenia (i interfejs wiersza polecenia zadań) domyślnie wywoła interfejs API REST zadań 2.0.

Wymagania dotyczące wywoływania interfejsu API REST zadań 2.0

Aby skonfigurować zadanie usługi Databricks, uruchamia interfejs wiersza polecenia (i interfejs wiersza polecenia zadań) w celu 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 0.16.0 lub nowszej, a następnie wykonaj jedną z następujących czynności:
    • Uruchom polecenie databricks jobs configure --version=2.0. Spowoduje to dodanie ustawienia jobs-api-version = 2.0 do pliku ~/.databrickscfg w systemach Unix, Linux lub macOS lub %USERPROFILE%\.databrickscfg Windows. Wszystkie polecenia interfejsu wiersza polecenia (i interfejs wiersza polecenia zadań) 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 (i interfejs wiersza polecenia zadań) będą domyślnie wywoływać interfejs API REST zadań 2.0.
    • Dołącz opcję --version=2.1 (na przykład databricks runs list --version=2.0), aby poinstruować, że zadanie uruchamia interfejs wiersza polecenia w celu wywołania interfejsu API REST zadań 2.0 tylko dla tego wywołania.

Jeśli żadne z powyższych akcji nie zostanie wykonane, zadanie uruchomi interfejs wiersza polecenia (i interfejs wiersza polecenia zadań) domyślnie wywoła interfejs API REST zadań 2.0.

Podpolecenia i ogólne użycie

databricks runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...

  Utility to interact with jobs runs.

Options:
  -v, --version   [VERSION]
  --debug         Debug mode. Shows full stack trace on error.
  --profile TEXT  CLI connection profile to use. The default profile is
                  "DEFAULT".

  -h, --help      Show this message and exit.

Commands:
  cancel      Cancels the specified run.
  get         Gets the metadata about a run in JSON form.
  get-output  Gets the output of a run.
  list        Lists job runs.
  submit      Submits a one-time run.

Anulowanie przebiegu

Aby wyświetlić dokumentację użycia, uruchom polecenie databricks runs cancel --help.

databricks runs cancel --run-id 119
{}

Uzyskiwanie informacji o przebiegu

Aby wyświetlić dokumentację użycia, uruchom polecenie databricks runs get --help.

Ogólne użycie

databricks runs get --run-id 2785782

Przykładowe informacje o użyciu i odpowiedzi interfejsu wiersza polecenia zadań 2.1

Zobacz Przebiegi get in Updating from Jobs API 2.0 to 2.1 (Przebiegi są aktualizowane z interfejsu API zadań w wersji 2.0 do 2.1).

Przykład odpowiedzi interfejsu wiersza polecenia zadań 2.0

{
  "job_id": 1269263,
  "run_id": 2785782,
  "number_in_job": 1111,
  "original_attempt_run_id": 2785782,
  "state": {
    "life_cycle_state": "TERMINATED",
    "result_state": "SUCCESS",
    "state_message": ""
  },
  "task": {
    "notebook_task": {
      "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
    }
  },
  "cluster_spec": {
    "new_cluster": {
      "spark_version": "8.1.x-scala2.12",
      "node_type_id": "Standard_F16s",
      "enable_elastic_disk": true,
      "azure_attributes": {
        "availability": "ON_DEMAND_AZURE"
      },
      "num_workers": 8
    }
  },
  "cluster_instance": {
    "cluster_id": "1234-567890-abcd123",
    "spark_context_id": "1234567890123456789"
  },
  "start_time": 1620947196985,
  "setup_duration": 36000,
  "execution_duration": 119000,
  "cleanup_duration": 3000,
  "end_time": 1620947355499,
  "trigger": "ONE_TIME",
  "creator_user_name": "someone@example.com",
  "run_name": "my-notebook-run",
  "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
  "run_type": "JOB_RUN",
  "attempt_number": 0
}

Pobieranie danych wyjściowych przebiegu

Aby wyświetlić dokumentację użycia, uruchom polecenie databricks runs get-output --help.

Uwaga

Gdy obiekt notebook_task zwraca wartość z wywołania metody , dbutils.notebook.exit()usługa Databricks ogranicza zwracaną wartość do pierwszych 5 MB danych. Aby zwrócić większy wynik, możesz przechowywać wyniki zadania w usłudze magazynu w chmurze.

Ogólne użycie

databricks runs get-output --run-id 2785782

Uwagi dotyczące użycia interfejsu wiersza polecenia zadań 2.1

Zobacz Pobieranie danych wyjściowych w temacie Aktualizowanie z interfejsu API zadań 2.0 do 2.1.

Przykład odpowiedzi interfejsu wiersza polecenia zadań 2.0

{
  "metadata": {
    "job_id": 1269263,
    "run_id": 2785782,
    "number_in_job": 1111,
    "original_attempt_run_id": 2785782,
    "state": {
      "life_cycle_state": "TERMINATED",
      "result_state": "SUCCESS",
      "state_message": ""
    },
    "task": {
      "notebook_task": {
        "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
      }
    },
    "cluster_spec": {
      "new_cluster": {
        "spark_version": "8.1.x-scala2.12",
        "node_type_id": "Standard_F16s",
        "enable_elastic_disk": true,
        "azure_attributes": {
          "availability": "ON_DEMAND_AZURE"
        },
        "num_workers": 8
      }
    },
    "cluster_instance": {
      "cluster_id": "1234-567890-abcd123",
      "spark_context_id": "1234567890123456789"
    },
    "start_time": 1620947196985,
    "setup_duration": 36000,
    "execution_duration": 119000,
    "cleanup_duration": 3000,
    "end_time": 1620947355499,
    "trigger": "ONE_TIME",
    "creator_user_name": "someone@example.com",
    "run_name": "my-notebook-run",
    "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
    "run_type": "JOB_RUN",
    "attempt_number": 0
  },
  "notebook_output": {}
}

Uzyskiwanie informacji o wszystkich przebiegach

Aby wyświetlić dokumentację użycia, uruchom polecenie databricks runs list --help.

Ogólne użycie

databricks runs list --output JSON

Przykładowe informacje o użyciu i odpowiedzi interfejsu wiersza polecenia zadań 2.1

Zobacz Lista przebiegów w temacie Aktualizowanie z interfejsu API zadań 2.0 do 2.1.

Przykład odpowiedzi interfejsu wiersza polecenia zadań 2.0

{
  "runs": [
    {
      "job_id": 1269263,
      "run_id": 2785782,
      "number_in_job": 1111,
      "original_attempt_run_id": 2785782,
      "state": {
         "life_cycle_state": "TERMINATED",
         "result_state": "SUCCESS",
         "state_message": ""
      },
      "task": {
        "notebook_task": {
          "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
        }
      },
      "cluster_spec": {
        "new_cluster": {
          "spark_version": "8.1.x-scala2.12",
          "node_type_id": "Standard_F16s",
          "enable_elastic_disk": true,
          "azure_attributes": {
            "availability": "ON_DEMAND_AZURE"
          },
          "num_workers": 8
        }
      },
      "cluster_instance": {
        "cluster_id": "1234-567890-abcd123",
        "spark_context_id": "1234567890123456789"
      },
      "start_time": 1620947196985,
      "setup_duration": 36000,
      "execution_duration": 119000,
      "cleanup_duration": 3000,
      "end_time": 1620947355499,
      "trigger": "ONE_TIME",
      "creator_user_name": "someone@example.com",
      "run_name": "my-notebook-run",
      "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
      "run_type": "JOB_RUN",
      "attempt_number": 0
    },
    ...
  ],
  "has_more": false
}

Jeśli has_more zwraca wartość true, dostępne są informacje o dodatkowych uruchomieniach. --offset Użyj opcji , aby zwrócić informacje o przebiegach względem ostatniego przebiegu. Aby na przykład zwrócić informacje rozpoczynające się od dziesiątego ostatniego przebiegu, określ wartość --offset 10.

--limit Użyj opcji , aby zwrócić informacje o stałej liczbie przebiegów. Aby na przykład zwrócić informacje dla maksymalnie 5 następnych przebiegów, określ wartość --limit 5. Można określić maksymalnie 1000 przebiegów. Jeśli nie zostanie określony, wartość domyślna to 20.

Przesyłanie jednorazowego przebiegu

Aby wyświetlić dokumentację użycia, uruchom polecenie databricks runs submit --help.

Ogólne użycie

databricks runs submit --json-file submit-run.json

Przykład użycia interfejsu API REST zadań 2.1 i żądania

Zobacz Przesyłanie przebiegów w temacie Aktualizowanie z interfejsu API zadań w wersji 2.0 do 2.1.

Przykład żądania i odpowiedzi interfejsu API REST zadań 2.0

submit-run.json:

{
  "run_name": "my-spark-run",
  "new_cluster": {
    "spark_version": "8.1.x-scala2.12",
    "node_type_id": "Standard_F16s",
    "enable_elastic_disk": true,
    "azure_attributes": {
      "availability": "ON_DEMAND_AZURE"
    },
    "num_workers": 8
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}
{
  "run_id": 123
}