Udostępnij przez


Zasoby pakietów aktywów usługi Databricks

Pakiety zasobów usługi Databricks umożliwiają określenie informacji o zasobach usługi Azure Databricks używanych w ramach pakietu w mapowaniu resources w ramach konfiguracji pakietu. Zobacz odwzorowanie zasobów i kluczowy odnośnik zasobów.

Ta strona zawiera informacje o konfiguracji dla wszystkich obsługiwanych typów zasobów dla pakietów oraz zawiera szczegółowe informacje i przykład dla każdego obsługiwanego typu. Aby uzyskać dodatkowe przykłady, zobacz przykłady konfiguracji pakietu .

Schemat JSON dla pakietów używanych do sprawdzania poprawności konfiguracji YAML znajduje się w repozytorium GitHub Databricks CLI.

Tip

Aby wygenerować kod YAML dla dowolnego istniejącego zasobu, użyj polecenia databricks bundle generate. Zobacz generowanie pakietu usługi databricks.

Obsługiwane zasoby

W poniższej tabeli wymieniono obsługiwane typy zasobów dla pakietów (YAML i Python, jeśli ma to zastosowanie). Niektóre zasoby można utworzyć, definiując je w pakiecie i wdrażając pakiet, a niektóre zasoby można utworzyć tylko przez odwołanie do istniejącego zasobu do uwzględnienia w pakiecie.

Konfiguracja zasobu definiuje obiekt usługi Databricks odpowiadający obiektowi interfejsu API REST usługi Databricks . Obsługiwane pola żądania tworzenia obiektu interfejsu API REST wyrażone jako YAML są obsługiwanymi kluczami zasobu. Linki do dokumentacji dla każdego odpowiedniego zasobu znajdują się w poniższej tabeli.

Tip

Polecenie databricks bundle validate zwraca ostrzeżenia, jeśli w plikach konfiguracji pakietu znajdują się nieznane właściwości zasobu.

Resource Obsługa języka Python Odpowiedni obiekt interfejsu API REST
alert Obiekt alertu
app obiekt aplikacji
cluster obiekt klastra
dashboard Obiekt pulpitu nawigacyjnego
database_catalog Obiekt wykazu bazy danych
database_instance Obiekt wystąpienia bazy danych
experiment obiekt eksperymentu
job Zadania Obiekt zadania
model (starsza wersja) model (starsza wersja) obiektu
model_serving_endpoint Model obsługujący obiekt punktu końcowego
pipeline Pipelines potokowy obiekt
quality_monitor obiekt monitora jakości
zarejestrowany_model (Unity Catalog) zarejestrowany obiekt modelu
schema (Katalog Unity) Schematów obiekt schematu
secret_scope Obiekt tajnego zakresu
sql_warehouse Obiekt usługi SQL Warehouse
zsynchronizowana_tabela_bazy_danych Synchronizowany obiekt tabeli bazy danych
wolumin (Unity Catalog) Objętości Obiekt woluminu

czujny

Type: Map

Zasób alertu definiuje alert SQL (wersja 2).

alerts:
  <alert-name>:
    <alert-field-name>: <alert-field-value>
Key Typ Description
custom_description String Opcjonalny. Niestandardowy opis alertu. Obsługuje szablon wąsów.
custom_summary String Opcjonalny. Niestandardowe podsumowanie alertu. Obsługuje szablon wąsów.
display_name String To jest wymagane. Nazwa wyświetlana alertu, na przykład Example alert.
evaluation Map To jest wymagane. Konfiguracja oceny alertu. Zobacz alert.evaluation.
parent_path String Opcjonalny. Ścieżka folderu w przestrzeni roboczej zawierającego alert. Można ustawić tylko przy tworzeniu i nie można tego zaktualizować. Przykład: /Users/someone@example.com.
permissions Sequence Uprawnienia alertu. Zobacz uprawnienia.
query_text String To jest wymagane. Tekst zapytania do uruchomienia, na przykład SELECT 1.
run_as Map Opcjonalny. Określa tożsamość, która będzie używana do uruchamiania alertu. To pole umożliwia skonfigurowanie alertów do uruchamiania jako określony użytkownik lub jednostka usługi. Zobacz run_as.
  • W przypadku tożsamości użytkownika: ustaw user_name na adres e-mail aktywnego użytkownika obszaru roboczego. Użytkownicy mogą ustawić tę wartość tylko na własną pocztę e-mail.
  • W przypadku principal usługi: ustaw service_principal_name jako identyfikator aplikacji. Wymaga roli servicePrincipal/user. Jeśli nie zostanie określone inaczej, alert uruchomi się w kontekście użytkownika składającego żądanie.
schedule Map To jest wymagane. Konfiguracja harmonogramu dla alertu. Zobacz alert.schedule.
warehouse_id String To jest wymagane. Identyfikator usługi SQL Warehouse dołączonej do alertu, na przykład a7066a8ef796be84.

alert.ocena

Type: Map

Konfiguracja oceny alertu.

Key Typ Description
comparison_operator String Operator używany do porównania przy przeprowadzaniu oceny alarmu.
empty_result_state String Stan alertu, jeśli wynik jest pusty. Unikaj ustawiania tego pola na UNKNOWN, ponieważ stan UNKNOWN ma zostać wycofany.
notification Map Użytkownik lub inne miejsce docelowe do powiadamiania o wyzwoleniu alertu. Zobacz alert.evaluation.notification.
source Map Kolumna źródłowa wyniku używana do oceny alertu. Zobacz alert.evaluation.source.
threshold Map Próg do użycia na potrzeby oceny alertów. Może to być kolumna lub wartość. Zobacz alert.evaluation.threshold.

alert.ocena.powiadomienie

Type: Map

Użytkownik lub inne miejsce docelowe do powiadamiania o wyzwoleniu alertu.

Key Typ Description
notify_on_ok logiczny Opcjonalny. Czy powiadamiać subskrybentów alertów o powrocie alertu z powrotem do normalnego.
retrigger_seconds Integer Opcjonalny. Liczba sekund, przez którą alert czeka po wyzwoleniu, zanim będzie możliwe wysłanie kolejnego powiadomienia. Jeśli zostanie ustawiona 0 wartość lub pominięta, alert nie będzie wysyłać żadnych dalszych powiadomień po pierwszym wyzwalaczu. Ustawienie tej wartości na 1 umożliwia alertowi wysyłanie powiadomienia przy każdej ocenie, w której warunek jest spełniony, co skutkuje tym, że alert jest zawsze ponownie wyzwalany dla celów powiadamiania.
subscriptions Sequence Opcjonalny. Nieurządkowana lista subskrypcji powiadomień. Zobacz alert.evaluation.notification.subscriptions.
alert.evaluation.notification.subscriptions

Type: Sequence

Nieurządkowana lista subskrypcji powiadomień.

Każdy element na liście to AlertSubscription:

Key Typ Description
destination_id String Identyfikator miejsca docelowego powiadomienia.
user_email String Adres e-mail użytkownika, który ma być powiadamiany.

alert.evaluation.source

Type: Map

Kolumna źródłowa z wyniku do użycia w celu oceny alertu.

Key Typ Description
aggregation String Metoda agregacji, która ma być stosowana do kolumny źródłowej. Prawidłowe wartości to SUM, , COUNTCOUNT_DISTINCT, AVGMEDIAN, , MIN, , , MAXSTDDEV
display String Nazwa wyświetlana kolumny źródłowej.
name String Nazwa kolumny źródłowej z wyniku zapytania.

alert.evaluation.threshold

Type: Map

Próg używany do oceny alertów może być kolumną lub wartością.

Key Typ Description
column Map Odwołanie do kolumny, które ma być używane jako próg. Zobacz alert.evaluation.source.
value Map Stała wartość do użycia jako próg. Zobacz alert.evaluation.threshold.value.
alert.ocena.prog.wartość

Type: Map

Wartość dosłowna do użycia jako próg. Określ jeden z następujących typów wartości.

Key Typ Description
bool_value logiczny Opcjonalny. Wartość logiczna progu, na przykład true.
double_value Double Opcjonalny. Wartość liczbowa progu, na przykład 1.25.
string_value String Opcjonalny. Wartość ciągu dla progu, na przykład test.

alert.schedule

Type: Map

Konfiguracja harmonogramu dla alertu.

Key Typ Description
pause_status String Opcjonalny. Czy ten harmonogram jest wstrzymany, czy nie. Prawidłowe wartości: UNPAUSED, PAUSED. Wartość domyślna: UNPAUSED.
quartz_cron_schedule String To jest wymagane. Wyrażenie cron używające syntaksu Quartz określające harmonogram dla tego przepływu pracy. Format kwarcowy jest opisany w formacie harmonogramu kwarcowego.
timezone_id String To jest wymagane. Identyfikator strefy czasowej Java. Harmonogram zostanie rozwiązany przy użyciu tej strefy czasowej. Zostanie ona połączona z elementem quartz_cron_schedule w celu ustalenia harmonogramu. Zobacz SET TIME ZONE , aby uzyskać szczegółowe informacje.

Examples

Poniższa przykładowa konfiguracja definiuje alert z prostą oceną:

resources:
  alerts:
    my_alert:
      display_name: my_alert
      evaluation:
        comparison_operator: EQUAL
        source:
          name: '1'
        threshold:
          value:
            double_value: 2
      query_text: select 2
      schedule:
        quartz_cron_schedule: '44 19 */1 * * ?'
        timezone_id: Europe/Amsterdam
      warehouse_id: 799f096837fzzzz4

Poniższa przykładowa konfiguracja definiuje alert z uprawnieniami, które oceniają użycie agregacji i wysyła powiadomienia:

resources:
  alerts:
    my_alert:
      permissions:
        - level: CAN_MANAGE
          user_name: someone@example.com
      custom_summary: 'My alert'
      display_name: 'My alert'
      evaluation:
        comparison_operator: 'EQUAL'
        notification:
          notify_on_ok: false
          retrigger_seconds: 1
        source:
          aggregation: 'MAX'
          display: '1'
          name: '1'
        threshold:
          value:
            double_value: 2
      query_text: 'select 2'
      schedule:
        pause_status: 'UNPAUSED'
        quartz_cron_schedule: '44 19 */1 * * ?'
        timezone_id: 'Europe/Amsterdam'
      warehouse_id: 799f096837fzzzz4

aplikacja

Type: Map

Zasób aplikacji definiuje aplikację Databricks. Aby uzyskać informacje na temat usługi Databricks Apps, zobacz Aplikacje usługi Databricks.

Aby dodać aplikację, określ ustawienia do zdefiniowania aplikacji, w tym wymagane source_code_path.

Tip

Pakiet można zainicjować za pomocą aplikacji Streamlit Databricks przy użyciu następującego polecenia:

databricks bundle init https://github.com/databricks/bundle-examples --template-dir contrib/templates/streamlit-app
apps:
  <app-name>:
    <app-field-name>: <app-field-value>
Key Typ Description
budget_policy_id String Identyfikator zasad budżetu dla aplikacji.
compute_size String Rozmiar obliczeniowy aplikacji. Prawidłowe wartości są MEDIUM lub LARGE zależą od konfiguracji obszaru roboczego.
config Map Deprecated. Zdefiniuj polecenia konfiguracji aplikacji i zmienne środowiskowe w app.yaml pliku. Zobacz Konfigurowanie aplikacji usługi Databricks.
description String Opis aplikacji.
lifecycle Map Zachowanie zasobu w momencie wdrażania lub niszczenia. Zobacz cykl życia.
name String Nazwa aplikacji. Nazwa musi zawierać tylko małe litery alfanumeryczne i łączniki. Musi być unikatowa w obszarze roboczym.
permissions Sequence Uprawnienia aplikacji. Zobacz uprawnienia.
resources Sequence Zasoby obliczeniowe aplikacji. Zobacz app.resources.
source_code_path String Ścieżka lokalna ./app kodu źródłowego aplikacji usługi Databricks.
user_api_scopes Sequence Zakresy interfejsu API użytkownika.

app.zasoby

Type: Sequence

Lista zasobów obliczeniowych dla aplikacji.

Każdy element na liście to AppResource:

Key Typ Description
description String Opis zasobu aplikacji.
database Map Ustawienia identyfikujące bazę danych Lakebase do użycia. Zobacz app.resources.database.
genie_space Map Ustawienia identyfikujące miejsce Genie do użycia. Zobacz app.resources.genie_space.
job Map Ustawienia identyfikujące zasób zadania do użycia. Zobacz app.resources.job.
name String Nazwa zasobu aplikacji.
secret Map Ustawienia identyfikujące zasób tajny usługi Azure Databricks do użycia. Zobacz app.resources.secret.
serving_endpoint Map Ustawienia identyfikujące model obsługujący zasób punktu końcowego do użycia. Zobacz app.resources.serving_endpoint.
sql_warehouse Map Ustawienia identyfikujące zasób usługi SQL Warehouse do użycia. Zobacz app.resources.sql_warehouse.
uc_securable Map Ustawienia identyfikujące wolumin wykazu aparatu Unity do użycia. Zobacz app.resources.uc_securable.

aplikacja.zasoby.baza_danych

Type: Map

Ustawienia identyfikujące bazę danych Lakebase do użycia.

Key Typ Description
database_name String Nazwa bazy danych.
instance_name String Nazwa wystąpienia bazy danych.
permission String Poziom uprawnień dla bazy danych. Prawidłowe wartości to CAN_CONNECT_AND_CREATE.

app.resources.genie_space

Type: Map

Ustawienia identyfikujące miejsce Genie do użycia.

Key Typ Description
name String Nazwa przestrzeni Genie.
permission String Poziom uprawnień dla miejsca. Prawidłowe wartości to CAN_VIEW, , CAN_EDITCAN_MANAGE, CAN_RUN.
space_id String Identyfikator obszaru Genie, na przykład 550e8400-e29b-41d4-a716-999955440000.

app.resources.job

Type: Map

Ustawienia identyfikujące zasób zadania do użycia.

Key Typ Description
id String Identyfikator zadania.
permission String Poziom uprawnień dla zadania. Prawidłowe wartości to CAN_VIEW, , CAN_MANAGE_RUNCAN_MANAGE, IS_OWNER.

app.zasoby.tajny

Type: Map

Ustawienia identyfikujące zasób tajny usługi Azure Databricks do użycia.

Key Typ Description
key String Klucz tajny do udzielenia uprawnień.
permission String Poziom uprawnień dla tajemnicy. Prawidłowe wartości to READ, , WRITEMANAGE.
scope String Nazwa tajnego zakresu.

app.resources.punkt_końcowy_świadczenia_usług

Type: Map

Ustawienia identyfikujące model obsługujący zasób punktu końcowego do użycia.

Key Typ Description
name String Nazwa obsługującego punktu końcowego.
permission String Poziom uprawnień dla punktu końcowego obsługującego. Prawidłowe wartości to CAN_QUERY, , CAN_MANAGECAN_VIEW.

app.resources.sql_warehouse

Type: Map

Ustawienia identyfikujące magazyn SQL do użycia.

Key Typ Description
id String Identyfikator usługi SQL Warehouse.
permission String Poziom uprawnień dla usługi SQL Warehouse. Prawidłowe wartości to CAN_USE, , CAN_MANAGEIS_OWNER.

app.resources.uc_securable

Type: Map

Ustawienia identyfikujące wolumin wykazu aparatu Unity do użycia.

Key Typ Description
permission String Poziom uprawnień dla zabezpieczalnego katalogu Unity. Prawidłowe wartości to READ_VOLUME i WRITE_VOLUME.
securable_full_name String Pełna nazwa zabezpieczalnego elementu w Unity Catalog w formacie catalog.schema.volume.
securable_type String Typ zabezpieczalnego elementu Unity Catalog. Prawidłowe wartości to VOLUME.

Example

Poniższy przykład tworzy aplikację o nazwie my_app, która zarządza zadaniem utworzonym przez pakiet:

resources:
  jobs:
    # Define a job in the bundle
    hello_world:
      name: hello_world
      tasks:
        - task_key: task
          spark_python_task:
            python_file: ../src/main.py
          environment_key: default

      environments:
        - environment_key: default
          spec:
            environment_version: '2'

  # Define an app that manages the job in the bundle
  apps:
    job_manager:
      name: 'job_manager_app'
      description: 'An app which manages a job created by this bundle'

      # The location of the source code for the app
      source_code_path: ../src/app

      # The resources in the bundle which this app has access to. This binds the resource in the app with the bundle resource.
      resources:
        - name: 'app-job'
          job:
            id: ${resources.jobs.hello_world.id}
            permission: 'CAN_MANAGE_RUN'

app.yaml Odpowiednia konfiguracja określa uruchamianie aplikacji:

command:
  - flask
  - --app
  - app
  - run
  - --debug
env:
  - name: JOB_ID
    valueFrom: 'app-job'

Aby sprawdzić pełny pakiet przykładowy aplikacji Databricks, zobacz repozytorium GitHub bundle-examples.

klaster

Type: Map

Zasób klastra definiuje klaster.

clusters:
  <cluster-name>:
    <cluster-field-name>: <cluster-field-value>
Key Typ Description
apply_policy_default_values logiczny Gdy wartość true jest ustawiona, wartości stałe i domyślne z polityki będą używane dla pól, które są pominięte. Jeśli ustawiono na false, zostaną zastosowane tylko stałe wartości z zasad.
autoscale Map Parametry potrzebne do automatycznego skalowania klastrów w górę i w dół na podstawie obciążenia. Zobacz autoskalowanie.
autotermination_minutes Integer Automatycznie wyłącza klaster po upływie ustawionego czasu nieaktywności, wyrażonego w minutach. Jeśli nie zostanie ustawiona, ten klaster nie zostanie automatycznie zakończony. Jeśli zostanie określony, próg musi należeć do zakresu od 10 do 10000 minut. Użytkownicy mogą również ustawić tę wartość na 0, aby jawnie wyłączyć automatyczne kończenie.
aws_attributes Map Atrybuty związane z klastrami uruchomionymi w usługach Amazon Web Services. Jeśli nie zostanie określony podczas tworzenia klastra, zostanie użyty zestaw wartości domyślnych. Zobacz aws_attributes.
azure_attributes Map Atrybuty związane z klastrami uruchomionymi na platformie Microsoft Azure. Jeśli nie zostanie określony podczas tworzenia klastra, zostanie użyty zestaw wartości domyślnych. Zobacz azure_attributes.
cluster_log_conf Map Konfiguracja dostarczania logów Spark do długoterminowego magazynu docelowego. Zobacz cluster_log_conf.
cluster_name String Nazwa klastra żądana przez użytkownika. Nie musi to być unikatowe. Jeśli nie zostanie określony podczas tworzenia, nazwa klastra będzie pustym ciągiem.
custom_tags Map Dodatkowe tagi dla zasobów klastra. Usługa Databricks oznaczy wszystkie zasoby klastra (np. instancje AWS i woluminy EBS) za pomocą tych tagów, oprócz default_tags.
data_security_mode String Model zarządzania danymi stosowany podczas uzyskiwania dostępu do danych z klastra. Prawidłowe wartości to NONE, , SINGLE_USERUSER_ISOLATION, LEGACY_SINGLE_USER, LEGACY_TABLE_ACL, LEGACY_PASSTHROUGH.
docker_image Map Niestandardowy obraz Dockera. Zobacz docker_image.
driver_instance_pool_id String Opcjonalny identyfikator puli wystąpień, do której należy sterownik klastra. Klaster basenowy używa puli instancji o identyfikatorze (instance_pool_id), jeśli pula sterowników nie została przypisana.
driver_node_type_id String Typ węzła sterownika Spark. Pamiętaj, że to pole jest opcjonalne; jeśli nie zostanie ustawione, typ węzła sterownika zostanie ustawiony na tę samą wartość, co node_type_id zdefiniowano powyżej. To pole wraz z node_type_id nie powinno być ustawione, jeśli virtual_cluster_size jest ustawiona. Jeśli określono zarówno driver_node_type_id, node_type_id, jak i virtual_cluster_size, pierwszeństwo mają driver_node_type_id i node_type_id.
enable_elastic_disk logiczny Autoskalowanie magazynu lokalnego: po włączeniu ten klaster będzie dynamicznie uzyskiwać dodatkowe miejsce na dysku, gdy procesy robocze Spark mają mało miejsca na dysku. Ta funkcja wymaga określonych uprawnień platformy AWS do poprawnego działania — zapoznaj się z podręcznikiem użytkownika, aby uzyskać więcej informacji.
enable_local_disk_encryption logiczny Czy włączyć LUKS na dyskach lokalnych maszyn wirtualnych klastra
gcp_attributes Map Atrybuty związane z klastrami uruchomionymi na platformie Google Cloud Platform. Jeśli nie zostanie określony podczas tworzenia klastra, zostanie użyty zestaw wartości domyślnych. Zobacz gcp_attributes.
init_scripts Sequence Konfiguracja przechowywania skryptów inicjowania. Można określić dowolną liczbę miejsc docelowych. Skrypty są wykonywane sekwencyjnie w podanej kolejności. Zobacz init_scripts.
instance_pool_id String Opcjonalny identyfikator puli wystąpień, do której należy klaster.
is_single_node logiczny To pole może być używane tylko wtedy, gdy kind = CLASSIC_PREVIEW. Po ustawieniu wartości true Databricks automatycznie ustawi elementy związane z jednym węzłem custom_tags, spark_conf i num_workers
kind String Rodzaj obliczeń opisany przez tę specyfikację obliczeniową.
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ń. Listę dostępnych typów węzłów można pobrać przy użyciu wywołania interfejsu API :method:clusters/listNodeTypes.
num_workers Integer Liczba węzłów roboczych, które powinien mieć ten klaster. Klaster ma jeden sterownik Spark i num_workers funkcje wykonawcze dla łącznie num_workers + 1 węzłów Spark.
permissions Sequence Uprawnienia klastra. Zobacz uprawnienia.
policy_id String Identyfikator zasad klastra użytych do utworzenia klastra, jeśli ma to zastosowanie.
runtime_engine String Określa aparat środowiska uruchomieniowego klastra, albo STANDARD, albo PHOTON.
single_user_name String Nazwa pojedynczego użytkownika, jeśli data_security_mode jest SINGLE_USER
spark_conf Map Obiekt zawierający zestaw opcjonalnych par klucz-wartość konfiguracji Spark określonych przez użytkownika. Użytkownicy mogą również przekazać ciąg dodatkowych opcji JVM do sterownika i funkcji wykonawczych odpowiednio za pośrednictwem spark.driver.extraJavaOptions i spark.executor.extraJavaOptions .
spark_env_vars Map Obiekt zawierający zestaw opcjonalnych par klucz-wartość zmiennej środowiskowej określonej przez użytkownika.
spark_version String Wersja Spark używana w klastrze, np. 3.3.x-scala2.11. Listę dostępnych wersji platformy Spark można pobrać przy użyciu wywołania interfejsu API :method:clusters/sparkVersions.
ssh_public_keys Sequence Zawartość klucza publicznego SSH, która zostanie dodana do każdego węzła Spark w tym klastrze. Odpowiednie klucze prywatne mogą służyć do logowania się przy użyciu nazwy ubuntu użytkownika na porcie 2200. Można określić maksymalnie 10 kluczy.
use_ml_runtime logiczny To pole może być używane tylko wtedy, gdy kind = CLASSIC_PREVIEW. effective_spark_version jest określany przez spark_version (wydanie DBR), to pole use_ml_runtime, i czy node_type_id jest węzłem gpu, czy nie.
workload_type Map Atrybuty klastra wyświetlane dla typów obciążeń klastrów. Zobacz workload_type.

cluster.autoscale

Type: Map

Parametry automatycznego skalowania klastrów w górę i w dół na podstawie obciążenia.

Key Typ Description
min_workers Integer 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 Integer Maksymalna liczba procesów roboczych, do których klaster może być skalowany w górę po przeciążeniu. max_workers wartość musi być ściśle większa niż min_workers.

cluster.aws_attributes

Type: Map

Atrybuty związane z klastrami uruchomionymi w usługach Amazon Web Services.

Key Typ Description
zone_id String Identyfikator strefy dostępności/centrum danych, w którym znajduje się klaster. Ten ciąg będzie mieć postać taką jak us-west-2a.
availability String Typ dostępności używany dla wszystkich kolejnych węzłów obok first_on_demand tych. Prawidłowe wartości to SPOT, , ON_DEMANDSPOT_WITH_FALLBACK.
spot_bid_price_percent Integer Maksymalna cena instancji typu spot na platformie AWS wyrażona jako procent ceny dla instancji na żądanie odpowiadającego typu.
instance_profile_arn String Węzły dla tego klastra będą umieszczane tylko na wystąpieniach AWS z tym profilem wystąpienia.
first_on_demand Integer Pierwsze węzły first_on_demand klastra zostaną umieszczone na instancjach na żądanie. Ta wartość powinna być większa niż 0, aby upewnić się, że węzeł sterownika klastra zostanie umieszczony w instancji na żądanie.
ebs_volume_type String Typ woluminów EBS, które będą uruchomione wraz z tym klastrem. Prawidłowe wartości to GENERAL_PURPOSE_SSD lub THROUGHPUT_OPTIMIZED_HDD.
ebs_volume_count Integer Liczba uruchomionych woluminów dla każdego wystąpienia.
ebs_volume_size Integer Rozmiar każdego woluminu EBS (w GiB) przydzielony dla każdego wystąpienia.
ebs_volume_iops Integer Liczba operacji we/wy na sekundę na wolumin GPS GP3.
ebs_volume_throughput Integer Przepustowość na wolumin EBS gp3, w MiB na sekundę.

cluster.azure_attributes

Type: Map

Atrybuty związane z klastrami uruchomionymi na platformie Microsoft Azure.

Key Typ Description
first_on_demand Integer Pierwsze węzły first_on_demand klastra zostaną umieszczone na instancjach na żądanie.
availability String Typ dostępności używany dla wszystkich kolejnych węzłów obok first_on_demand tych. Prawidłowe wartości to SPOT_AZURE, , ON_DEMAND_AZURESPOT_WITH_FALLBACK_AZURE.
spot_bid_max_price Number Maksymalna cena instancji typu spot dla platformy Azure. Użyj -1, aby określić najniższą cenę.

cluster.gcp_attributes

Type: Map

Atrybuty związane z klastrami uruchomionymi na platformie Google Cloud Platform.

Key Typ Description
use_preemptible_executors logiczny Czy używać wywłaszczalnych egzekutorów. Wywłaszczalne wykonawce to wywłaszczalne wystąpienia GCE, które mogą zostać odzyskane przez GCE w dowolnym momencie.
google_service_account String Konto usługi Google, które ma być użyte przez instancje maszyn wirtualnych klastra Databricks.
local_ssd_count Integer Liczba lokalnych dysków SSD do dołączenia do każdego węzła w klastrze. Domyślna wartość to 0.
zone_id String Identyfikator strefy dostępności/centrum danych, w którym znajduje się klaster.
availability String Typ dostępności używany dla wszystkich węzłów. Prawidłowe wartości to PREEMPTIBLE_GCP, , ON_DEMAND_GCPPREEMPTIBLE_WITH_FALLBACK_GCP.
boot_disk_size Integer Rozmiar dysku rozruchowego w GB. Wartości zazwyczaj wahają się od 100 do 1000.

cluster.cluster_log_conf (konfiguracja logów klastra)

Konfiguracja dostarczania dzienników Spark do miejsca długoterminowego przechowywania.

Key Typ Description
dbfs Map Lokalizacja systemu plików DBFS na potrzeby dostarczania dziennika klastra. Zobacz dbfs.
s3 Map Lokalizacja S3 dla dostarczania logów klastra. Zobacz s3.
volumes Map Lokalizacja woluminów na potrzeby dostarczania dziennika klastra. Zobacz woluminy.

cluster.cluster_log_conf.dbfs

Type: Map

Lokalizacja systemu plików DBFS na potrzeby dostarczania dziennika klastra.

Key Typ Description
destination String Ścieżka DBFS do dostarczenia dziennika klastra (na przykład dbfs:/cluster-logs).

cluster.cluster_log_conf.s3

Type: Map

Lokalizacja S3 dla dostarczania logów klastra.

Key Typ Description
destination String Identyfikator URI S3 na potrzeby dostarczania dziennika klastra (na przykład s3://my-bucket/cluster-logs).
region String Region AWS kubełka S3.
endpoint String Adres URL punktu końcowego S3 (opcjonalnie).
enable_encryption logiczny Czy włączyć szyfrowanie dzienników klastra.
encryption_type String Typ szyfrowania. Prawidłowe wartości to SSE_S3, SSE_KMS.
kms_key String ARN klucza KMS do szyfrowania (w przypadku korzystania z SSE_KMS).
canned_acl String Predefiniowana lista ACL do zastosowania w dziennikach klastra.

cluster.cluster_log_conf.volumes

Type: Map

Lokalizacja woluminów na potrzeby dostarczania dziennika klastra.

Key Typ Description
destination String Ścieżka woluminu do dostarczenia logów klastra (na przykład /Volumes/catalog/schema/volume/cluster_log).

cluster.docker_image

Type: Map

Niestandardowa konfiguracja obrazu platformy Docker.

Key Typ Description
url String Adres URL obrazu platformy Docker.
basic_auth Map Uwierzytelnianie podstawowe dla repozytorium platformy Docker. Zobacz basic_auth.

cluster.docker_image.basic_auth

Type: Map

Uwierzytelnianie podstawowe dla repozytorium platformy Docker.

Key Typ Description
username String Nazwa użytkownika do uwierzytelniania w rejestrze Docker.
password String Hasło do uwierzytelniania rejestru platformy Docker.

cluster.init_scripts

Type: Map

Konfiguracja przechowywania skryptów inicjowania. Należy określić co najmniej jeden typ lokalizacji.

Key Typ Description
dbfs Map Lokalizacja skryptu inicjalizacyjnego DBFS. Zobacz dbfs.
workspace Map Lokalizacja obszaru roboczego skryptu inicjowania. Zobacz obszar roboczy.
s3 Map Lokalizacja S3 skryptu inicjalizującego. Zobacz s3.
abfss Map Lokalizacja skryptu inicjalizacyjnego ABFSS. Zobacz abfss.
gcs Map Lokalizacja GCS skryptu inicjalizacyjnego. Zobacz gcs.
volumes Map Lokalizacja woluminów UC dla skryptu init. Zobacz woluminy.

cluster.init_scripts.dbfs

Type: Map

Lokalizacja skryptu inicjalizacyjnego DBFS.

Key Typ Description
destination String Ścieżka DBFS skryptu inicjalizacji.

cluster.init_scripts.workspace

Type: Map

Lokalizacja obszaru roboczego skryptu inicjowania.

Key Typ Description
destination String Ścieżka obszaru roboczego skryptu inicjowania.

cluster.init_scripts.s3

Type: Map

Lokalizacja S3 skryptu inicjalizującego.

Key Typ Description
destination String Identyfikator URI S3 skryptu inicjalizacyjnego.
region String Region AWS kubełka S3.
endpoint String Adres URL punktu końcowego S3 (opcjonalnie).

cluster.init_scripts.abfss

Type: Map

Lokalizacja skryptu inicjalizacyjnego ABFSS.

Key Typ Description
destination String Ścieżka ABFSS skryptu inicjalizacyjnego.

cluster.init_scripts.gcs

Type: Map

Lokalizacja GCS skryptu inicjalizacyjnego.

Key Typ Description
destination String Ścieżka GCS skryptu inicjalizacji.

cluster.init_scripts.volumes

Type: Map

Lokalizacja woluminów skryptu init.

Key Typ Description
destination String Ścieżka woluminów UC dla skryptu inicjującego.

klaster.typ_obciążenia

Type: Map

Atrybuty klastra przedstawiające typy obciążeń klastra.

Key Typ Description
clients Map Określa, jakiego typu klienci mogą używać klastra. Zobacz klienci.

klaster.typ_obciążenia.klienci

Type: Map

Typ klientów dla tego obciążenia obliczeniowego.

Key Typ Description
jobs logiczny Czy klaster może obsługiwać zadania?
notebooks logiczny Czy klaster może uruchamiać notebooki.

Examples

Poniższy przykład tworzy dedykowany (pojedynczy użytkownik) klaster dla bieżącego użytkownika z usługą Databricks Runtime 15.4 LTS i zasadami klastra:

resources:
  clusters:
    my_cluster:
      num_workers: 0
      node_type_id: 'i3.xlarge'
      driver_node_type_id: 'i3.xlarge'
      spark_version: '15.4.x-scala2.12'
      spark_conf:
        'spark.executor.memory': '2g'
      autotermination_minutes: 60
      enable_elastic_disk: true
      single_user_name: ${workspace.current_user.userName}
      policy_id: '000128DB309672CA'
      enable_local_disk_encryption: false
      data_security_mode: SINGLE_USER
      runtime_engine": STANDARD

W tym przykładzie tworzony jest prosty klaster my_cluster i jest on ustawiany jako klaster do uruchomienia notatnika w my_job.

bundle:
  name: clusters

resources:
  clusters:
    my_cluster:
      num_workers: 2
      node_type_id: 'i3.xlarge'
      autoscale:
        min_workers: 2
        max_workers: 7
      spark_version: '13.3.x-scala2.12'
      spark_conf:
        'spark.executor.memory': '2g'

  jobs:
    my_job:
      tasks:
        - task_key: test_task
          notebook_task:
            notebook_path: './src/my_notebook.py'
          existing_cluster_id: ${resources.clusters.my_cluster.id}

panel sterowania

Type: Map

Zasób umożliwia zarządzanie dashboardami AI/BI w pakiecie. Aby uzyskać informacje na temat pulpitów nawigacyjnych AI/BI, zobacz Dashboards.

Jeśli wdrożono pakiet zawierający pulpit nawigacyjny ze środowiska lokalnego, a następnie użyjesz interfejsu użytkownika do zmodyfikowania tego pulpitu nawigacyjnego, modyfikacje wprowadzone za pośrednictwem interfejsu użytkownika nie zostaną zastosowane do pliku JSON pulpitu nawigacyjnego w pakiecie lokalnym, chyba że jawnie zaktualizujesz go przy użyciu polecenia bundle generate. Możesz użyć opcji --watch, aby stale sprawdzać zmiany i pobierać je z pulpitu nawigacyjnego. Zobacz generowanie pakietu usługi databricks.

Ponadto w przypadku próby wdrożenia pakietu ze środowiska lokalnego zawierającego plik JSON pulpitu nawigacyjnego, który różni się od tego w zdalnym obszarze roboczym, wystąpi błąd. Aby wymusić wdrożenie i zastąpienie pulpitu nawigacyjnego w zdalnym obszarze roboczym jego lokalną wersją, użyj opcji --force. Zobacz wdrażanie pakietu usługi databricks.

Note

W przypadku korzystania z pakietów zasobów Databricks z obsługą dashboardów Git, zapobiegaj generowaniu zduplikowanych dashboardów, dodając mapowanie synchronizacji, aby wykluczyć dashboardy z synchronizacji jako pliki.

sync:
  exclude:
    - src/*.lvdash.json
dashboards:
  <dashboard-name>:
    <dashboard-field-name>: <dashboard-field-value>
Key Typ Description
display_name String Nazwa pulpitu nawigacyjnego.
embed_credentials logiczny Określa, czy poświadczenia tożsamości wdrożenia pakietu są używane do wykonywania zapytań dla wszystkich osób przeglądających pulpit nawigacyjny. Jeśli ustawiona jest wartość false, używane są poświadczenia użytkownika. Domyślna wartość to false.
etag String Etag dla konsoli. Można opcjonalnie podać podczas aktualizacji, aby upewnić się, że pulpit nawigacyjny nie został zmodyfikowany od czasu ostatniego odczytu.
file_path String Lokalna ścieżka zasobu pulpitu nawigacyjnego, w tym nazwa pliku. Wyeksportowane pulpity nawigacyjne zawsze mają rozszerzenie .lvdash.jsonpliku .
permissions Sequence Uprawnienia pulpitu nawigacyjnego. Zobacz uprawnienia.
serialized_dashboard Any Zawartość pulpitu nawigacyjnego w postaci serializowanego ciągu.
warehouse_id String Identyfikator magazynu używany do uruchamiania pulpitu nawigacyjnego.

Example

Na poniższym przykładzie przedstawiono sposób wdrożenia przykładowego pulpitu nawigacyjnego NYC Taxi Trip Analysis w obszarze roboczym usługi Databricks.

resources:
  dashboards:
    nyc_taxi_trip_analysis:
      display_name: 'NYC Taxi Trip Analysis'
      file_path: ../src/nyc_taxi_trip_analysis.lvdash.json
      warehouse_id: ${var.warehouse_id}

katalog_bazy_danych

Type: Map

Zasób wykazu baz danych umożliwia definiowanie katalogów baz danych odpowiadających wystąpieniom bazy danych w pakiecie. Wykaz baz danych to baza danych Lakebase zarejestrowana jako wykaz wykazu aparatu Unity.

Aby uzyskać informacje o katalogach baz danych, zobacz Tworzenie wykazu.

database_catalogs:
  <database_catalog-name>:
    <database_catalog-field-name>: <database_catalog-field-value>
Key Typ Description
create_database_if_not_exists logiczny Czy utworzyć bazę danych, jeśli nie istnieje.
database_instance_name String Nazwa wystąpienia, w ramach których jest używana baza danych.
database_name String Nazwa bazy danych (w wystąpieniu) skojarzona z wykazem.
lifecycle Map Zawiera ustawienia cyklu życia zasobu, w tym zachowanie zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Nazwa wykazu w wykazie aparatu Unity.

Example

W poniższym przykładzie zdefiniowano wystąpienie bazy danych z odpowiednim wykazem baz danych:

resources:
  database_instances:
    my_instance:
      name: my-instance
      capacity: CU_1
  database_catalogs:
    my_catalog:
      database_instance_name: ${resources.database_instances.my_instance.name}
      name: example_catalog
      database_name: my_database
      create_database_if_not_exists: true

instancja_bazy_danych

Type: Map

Zasób wystąpienia bazy danych umożliwia definiowanie wystąpień bazy danych w pakiecie . Wystąpienie bazy danych usługi Lakebase zarządza zasobami magazynu i zasobów obliczeniowych oraz udostępnia punkty końcowe, z którymi użytkownicy się łączą.

Ważne

Po wdrożeniu pakietu z wystąpieniem bazy danych wystąpienie natychmiast zacznie działać i podlega cenom. Zobacz Cennik usługi Lakebase.

Aby uzyskać informacje o wystąpieniach bazy danych, zobacz Co to jest wystąpienie bazy danych?.

database_instances:
  <database_instance-name>:
    <database_instance-field-name>: <database_instance-field-value>
Key Typ Description
capacity String Jednostka SKU wystąpienia. Prawidłowe wartości to CU_1, CU_2, CU_4, CU_8.
custom_tags Sequence Lista par klucz-wartość określająca tagi niestandardowe skojarzone z wystąpieniem.
enable_pg_native_login logiczny Czy wystąpienie ma włączone natywne logowanie przy użyciu hasła PG. Wartość domyślna to true.
enable_readable_secondaries logiczny Czy umożliwić usługom pomocniczym obsługę ruchu tylko do odczytu. Wartość domyślna to false.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Nazwa wystąpienia. Jest to unikatowy identyfikator wystąpienia.
node_count Integer Liczba węzłów w wystąpieniu składająca się z 1 podstawowych i 0 lub większej liczby sekund. Wartość domyślna to 1 podstawowy i 0 sekund.
parent_instance_ref Map Odwołanie do wystąpienia nadrzędnego. Jest to dostępne tylko wtedy, gdy wystąpienie jest wystąpieniem podrzędnym. Zobacz wystąpienie nadrzędne.
permissions Sequence Uprawnienia wystąpienia bazy danych. Zobacz uprawnienia.
retention_window_in_days Integer Okno przechowywania dla wystąpienia. Jest to przedział czasu w dniach, dla których są przechowywane dane historyczne. Wartość domyślna to 7 dni. Prawidłowe wartości to od 2 do 35 dni.
stopped logiczny Czy wystąpienie zostało zatrzymane.
usage_policy_id String Preferowane zasady użycia do powiązania z instancją.

database_instance.parent_instance_ref

Type: Map

Odwołanie do wystąpienia nadrzędnego. Jest to dostępne tylko wtedy, gdy wystąpienie jest wystąpieniem podrzędnym.

Key Typ Description
branch_time String Czas tworzenia gałęzi instancji bazy danych ref. W przypadku odwołania do nadrzędnego wystąpienia, jest to moment w czasie na wystąpieniu nadrzędnym, z którego utworzono dane wystąpienie. Dla instancji odwołania podrzędnego jest to moment w czasie, w którym ta instancja została utworzona.
lsn String Określony przez użytkownika WAL LSN wystąpienia bazy danych referencyjnej.
name String Nazwa instancji bazy danych "ref".

Example

W poniższym przykładzie zdefiniowano wystąpienie bazy danych z odpowiednim wykazem baz danych:

resources:
  database_instances:
    my_instance:
      name: my-instance
      capacity: CU_1
  database_catalogs:
    my_catalog:
      database_instance_name: ${resources.database_instances.my_instance.name}
      name: example_catalog
      database_name: my_database
      create_database_if_not_exists: true

Przykładowy pakiet demonstrujący sposób definiowania wystąpienia bazy danych i odpowiedniego wykazu baz danych można znaleźć w repozytorium GitHub z przykładami pakietów.

eksperyment

Type: Map

Zasób do eksperymentów umożliwia zdefiniowanie eksperymentów MLflow w ramach pakietu. Aby uzyskać informacje na temat eksperymentów MLflow, zobacz Organizowanie przebiegów trenowania za pomocą eksperymentów MLflow.

experiments:
  <experiment-name>:
    <experiment-field-name>: <experiment-field-value>
Key Typ Description
artifact_location String Lokalizacja, w której są przechowywane artefakty eksperymentu.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Przyjazna nazwa identyfikująca eksperyment. Nazwa eksperymentu musi być ścieżką bezwzględną w obszarze roboczym usługi Databricks, na przykład /Workspace/Users/someone@example.com/my_experiment.
permissions Sequence Uprawnienia eksperymentu. Zobacz uprawnienia.
tags Sequence Dodatkowe pary klucz-wartość metadanych. Zobacz tagi.

Example

W poniższym przykładzie zdefiniowano eksperyment, który może wyświetlać wszyscy użytkownicy:

resources:
  experiments:
    experiment:
      name: /Workspace/Users/someone@example.com/my_experiment
      permissions:
        - level: CAN_READ
          group_name: users
      description: MLflow experiment used to track runs

zadanie

Type: Map

Zadania są obsługiwane w języku Python dla Databricks Asset Bundles. Zobacz databricks.bundles.jobs.

Zasób pracy umożliwia zdefiniowanie prac i odpowiadających im zadań w pakiecie.

Aby uzyskać informacje o zadaniach, zobacz Zadania lakeflow. Aby zapoznać się z samouczkiem, który używa szablonu pakietów zasobów usługi Databricks do utworzenia zadania, zobacz Tworzenie zadania za pomocą pakietów zasobów usługi Databricks.

jobs:
  <job-name>:
    <job-field-name>: <job-field-value>
Key Typ Description
budget_policy_id String Identyfikator zasad budżetu określonych przez użytkownika do zastosowania dla tego zadania. Jeśli nie zostanie określony, podczas tworzenia lub modyfikowania zadania można zastosować domyślne zasady budżetu. Zobacz effective_budget_policy_id zasady budżetu używane przez to obciążenie.
continuous Map Opcjonalna nieprzerwana właściwość dla tego zadania. Właściwość continuous gwarantuje, że zawsze jest wykonywane jedno uruchomienie. Można użyć tylko jednego z schedule elementów i continuous . Zobacz ciągłe.
deployment Map Informacje o wdrażaniu zadań zarządzanych przez źródła zewnętrzne. Zobacz wdrażanie.
description String Opcjonalny opis zadania. Maksymalna długość wynosi 27700 znaków w kodowaniu UTF-8.
edit_mode String Tryb edycji zadania: albo UI_LOCKED, albo EDITABLE.
email_notifications Map Opcjonalny zestaw adresów e-mail, który jest powiadamiany o rozpoczęciu lub ukończeniu tego zadania, a także po usunięciu tego zadania. Zobacz email_notifications.
environments Sequence Lista specyfikacji środowiska wykonawczego, które mogą być przywoływane przez funkcje bezserwerowe tego projektu. Środowisko musi być obecne w przypadku zadań bezserwerowych. W przypadku zadań notesu bezserwerowego środowisko jest dostępne w panelu środowiska notesu. W przypadku innych zadań bezserwerowych środowisko zadań jest wymagane do określenia przy użyciu environment_key w ustawieniach zadania. Zobacz środowiska.
format String Deprecated. Format zadania.
git_source Map Opcjonalna specyfikacja zdalnego repozytorium Git zawierającego kod źródłowy używany przez zadania. Zobacz job.git_source.
Ważne:git_source Pole oraz pole zadania source ustawione na wartość GIT nie są zalecane w przypadku pakietów, ponieważ lokalne ścieżki względne mogą nie wskazywać na tę samą zawartość w repozytorium Git. Pakiety oczekują, że wdrożone zadanie ma taką samą zawartość jak lokalna kopia, z której zostało pierwotnie wdrożone.
Zamiast tego sklonuj repozytorium lokalnie i skonfiguruj projekt pakietu w tym repozytorium, aby źródło zadań stanowił obszar roboczy.
health Map Opcjonalny zestaw reguł zdrowotnych, które można zdefiniować dla tego zadania. Zobacz kondycję.
job_clusters Sequence Lista specyfikacji klastra zadań, które mogą być współużytkowane i ponownie używane przez zadania tego zadania. Zobacz job_clusters.
max_concurrent_runs Integer Opcjonalnie maksymalna liczba współbieżnych uruchomień tego zadania. Ustaw tę wartość, jeśli chcesz mieć możliwość współbieżnego wykonywania wielu uruchomień tego samego zadania.
name String Opcjonalna nazwa zadania. Maksymalna długość to 4096 bajtów w kodowaniu UTF-8.
notification_settings Map Opcjonalne ustawienia powiadomień używane podczas wysyłania powiadomień do każdego z elementów email_notifications i webhook_notifications dla tego zadania. Zobacz notification_settings.
parameters Sequence Definicje parametrów na poziomie zadania.
performance_target String Określa, jak wydajna lub ekonomiczna powinna być realizacja wykonania w trybie bezserwerowym.
permissions Sequence Uprawnienia pracy. Zobacz uprawnienia.
queue Map Ustawienia kolejki zadania. Zobacz kolejkę.
run_as Map Ustawienie tylko do zapisu. Określa użytkownika lub jednostkę usługi, który wykonuje zadanie. Jeśli użytkownik nie zostanie określony, zadanie zostanie uruchomione za użytkownika, który utworzył zadanie. Należy określić wartość user_name lub service_principal_name . Jeśli nie, zostanie zgłoszony błąd. Zobacz run_as.
schedule Map Opcjonalny harmonogram okresowy dla tego zadania. Domyślne zachowanie polega na tym, że zadanie jest uruchamiane tylko po wyzwoleniu, klikając 'Uruchom teraz' w panelu zadań albo wysyłając żądanie interfejsu API do runNow. Zobacz harmonogram.
tags Map Mapa tagów skojarzonych z zadaniem. Są one przekazywane do klastra jako tagi klastra dla klastrów zadań i podlegają tym samym ograniczeniom co tagi klastra. Do zadania można dodać maksymalnie 25 tagów.
tasks Sequence Lista specyfikacji zadań, które mają być wykonane w ramach tego zlecenia. Zobacz Dodawanie zadań do zadań w pakietach zasobów usługi Databricks.
timeout_seconds Integer Opcjonalny limit czasu stosowany do każdego uruchomienia tego zadania. Wartość oznacza brak limitu 0 czasu.
trigger Map Konfiguracja wyzwalania przebiegu po spełnieniu określonych warunków. Zobacz wyzwalacz.
webhook_notifications Map Kolekcja identyfikatorów powiadomień systemowych do powiadamiania o rozpoczęciu lub ukończeniu tego zadania. Zobacz webhook_notifications.

zadanie.ciągłe

Type: Map

Konfiguracja ciągłego wykonywania zadań.

Key Typ Description
pause_status String Czy ciągłe zadanie jest wstrzymane, czy nie. Prawidłowe wartości: PAUSED, UNPAUSED.
task_retry_mode String Wskaż, jak proces ciągły stosuje ponawianie prób na poziomie zadania. Prawidłowe wartości to NEVER i ON_FAILURE. Wartość domyślna to NEVER.

zadanie.wdrożenie

Type: Map

Informacje o wdrażaniu zadań zarządzanych przez źródła zewnętrzne.

Key Typ Description
kind String Rodzaj wdrożenia. Na przykład BUNDLE.
metadata_file_path String Ścieżka do pliku metadanych wdrożenia.

job.powiadomienia_email

Type: Map

Ustawienia powiadomień e-mail dla wykonywania zadań.

Key Typ Description
on_start Sequence Lista adresów e-mail do powiadamiania, gdy rozpoczyna się uruchomienie.
on_success Sequence Lista adresów e-mail, które należy powiadomić o pomyślnym zakończeniu procesu.
on_failure Sequence Lista adresów e-mail, które mają być powiadamiane, gdy uruchomienie zakończy się niepowodzeniem.
on_duration_warning_threshold_exceeded Sequence Lista adresów e-mail do powiadamiania o przekroczeniu progu ostrzeżenia przez czas działania.
no_alert_for_skipped_runs logiczny Czy pominąć wysyłanie alertów dotyczących pominiętych uruchomień.

job.environments

Type: Sequence

Lista specyfikacji środowiska wykonywania zadań, które mogą być przywoływane przez zadania bezserwerowe w środowisku zadania.

Każdy element na liście to JobEnvironment:

Key Typ Description
environment_key String Klucz środowiska. Musi być unikatowa w ramach zadania.
spec Map Jednostka reprezentująca środowisko bezserwerowe. Zobacz job.environments.spec.

job.environments.spec

Type: Map

Jednostka reprezentująca środowisko bezserwerowe.

Key Typ Description
client String Deprecated. Wersja klienta.
dependencies Sequence Lista zależności obsługiwanych przez wersję narzędzia w tym środowisku.
environment_version String To jest wymagane. Wersja środowiska używana przez środowisko. Każda wersja zawiera określoną wersję języka Python i zestaw pakietów języka Python. Wersja jest ciągiem składającym się z liczby całkowitej.

zadanie.git_źródło

Type: Map

Konfiguracja repozytorium Git dla kodu źródłowego zadania.

Key Typ Description
git_branch String Nazwa gałęzi, która ma być wyewidencjonowana i używana przez to zadanie. Nie można określić tego pola w połączeniu z git_tag lub git_commit.
git_commit String Zatwierdzenie do wyewidencjonowania i użycia przez to zadanie. Nie można określić tego pola w połączeniu z git_branch lub git_tag.
git_provider String Unikatowy identyfikator usługi używanej do hostowania repozytorium Git. Wartość jest niewrażliwa na wielkość liter. Prawidłowe wartości to gitHub, , bitbucketCloud, gitLabazureDevOpsServicesgitHubEnterprise, , , . bitbucketServergitLabEnterpriseEdition
git_snapshot Map Stan tylko do odczytu repozytorium zdalnego w momencie uruchomienia zadania. To pole jest uwzględniane tylko w uruchomieniach zadań. Zobacz git_snapshot.
git_tag String Nazwa tagu do wyewidencjonowania i użycia przez to zadanie. Nie można określić tego pola w połączeniu z git_branch lub git_commit.
git_url String Adres URL repozytorium, który ma zostać sklonowany przez to zadanie.

job.git_source.git_snapshot

Type: Map

Migawka danych o zatwierdzeniu tylko do odczytu.

Key Typ Description
used_commit String Zatwierdzenie, które zostało użyte do wykonania przebiegu. Jeśli git_branch został określony, wskazuje to HEAD gałęzi w momencie uruchomienia; jeśli git_tag został określony, wskazuje to na zatwierdzenie, na które wskazuje tag.

stan.zdrowia.zadania

Type: Map

Konfiguracja monitorowania stanu zdrowia zadania.

Key Typ Description
rules Sequence Lista zasad zdrowotnych dla zadań Każda reguła zawiera metric, operator op oraz value. Zobacz job.health.rules.

zasady.zdrowia.zadania

Type: Sequence

Lista zasad zdrowotnych dla zadań

Każdy element na liście to JobHealthRule:

Key Typ Description
metric String Określa miarę zdrowotną, która jest oceniana dla określonej zasady zdrowotnej.
  • RUN_DURATION_SECONDS: oczekiwany całkowity czas uruchomienia w sekundach.
  • STREAMING_BACKLOG_BYTES: Oszacowanie maksymalnej liczby bajtów danych oczekujących na użycie we wszystkich strumieniach. Ta metryka jest dostępna w publicznej wersji zapoznawczej.
  • STREAMING_BACKLOG_RECORDS: Oszacowanie maksymalnego opóźnienia przesunięcia we wszystkich strumieniach. Ta metryka jest dostępna w publicznej wersji zapoznawczej.
  • STREAMING_BACKLOG_SECONDS: Oszacowanie maksymalnego opóźnienia użytkownika we wszystkich strumieniach. Ta metryka jest dostępna w publicznej wersji zapoznawczej.
  • STREAMING_BACKLOG_FILES: Oszacowanie maksymalnej liczby zaległych plików we wszystkich strumieniach. Ta metryka jest dostępna w publicznej wersji zapoznawczej.
op String Określa operator używany do porównywania wartości metryki kondycji z określonym progiem.
value Integer Określa wartość progową, którą metryka kondycji powinna przestrzegać w celu spełnienia reguły kondycji.

job.job_clusters

Type: Sequence

Lista specyfikacji klastra zadań, które mogą być współużytkowane i ponownie używane przez zadania tego zadania. Nie można zadeklarować bibliotek w klastrze zadań udostępnionych. Biblioteki zależne należy zadeklarować w ustawieniach zadań.

Każdy element na liście to JobCluster:

Key Typ Description
job_cluster_key String Unikatowa nazwa klastra zadań. To pole jest wymagane i musi być unikatowe w ramach zadania. JobTaskSettings Może się odwoływać do tego pola, aby określić, który klaster ma zostać uruchomiony do wykonania zadania.
new_cluster Map Jeśli new_cluster, opis klastra utworzonego dla każdego zadania. Zobacz klaster.

ustawienia_powiadomień_zadania

Type: Map

Ustawienia powiadomień, które mają zastosowanie do wszystkich powiadomień dotyczących zadania.

Key Typ Description
no_alert_for_skipped_runs logiczny Czy pominąć wysyłanie alertów dotyczących pominiętych uruchomień.
no_alert_for_canceled_runs logiczny Czy należy pominąć wysyłanie alertów dla anulowanych operacji.

kolejka.zadań

Type: Map

Konfiguracja kolejki dla zadania.

Key Typ Description
enabled logiczny Czy włączyć kolejkowanie dla zadania.

harmonogram.zadań

Type: Map

Konfiguracja harmonogramu okresowego wykonywania zadania.

Key Typ Description
quartz_cron_expression String Wyrażenie Cron używające składni kwarcowej, które określa, kiedy zadanie jest uruchamiane. Na przykład 0 0 9 * * ? uruchamia zadanie codziennie o godzinie 9:00 czasu UTC.
timezone_id String Strefa czasowa harmonogramu. Na przykład: America/Los_Angeles lub UTC.
pause_status String Czy harmonogram jest zawieszony, czy nie? Prawidłowe wartości: PAUSED, UNPAUSED.

zadanie.wyzwalacz

Type: Map

Konfiguracja wyzwalacza na potrzeby wykonywania zadań sterowanych zdarzeniami.

Key Typ Description
file_arrival Map Wyzwalacz po przybyciu pliku. Zobacz file_arrival.
table Map Wyzwalacz na podstawie tabeli. Zobacz tabelę.
table_update Map Wyzwalacz na podstawie aktualizacji tabeli. Zobacz table_update.
periodic Map Wyzwalacz okresowy. Zobacz okresowe.

job.trigger.przybycie_pliku

Type: Map

Konfiguracja aktywatora na bazie dostarczenia pliku.

Key Typ Description
url String Ścieżka pliku do monitorowania nowych plików.
min_time_between_triggers_seconds Integer Minimalny czas w sekundach między zdarzeniami związanymi z wyzwalaniem.
wait_after_last_change_seconds Integer Czas oczekiwania w sekundach po ostatniej modyfikacji pliku przed aktywacją.

zadanie.wyzwalacz.tabela

Type: Map

Konfiguracja wyzwalana na podstawie tabeli.

Key Typ Description
table_names Sequence Lista nazw tabel do monitorowania.
condition String Warunek SQL, który musi zostać spełniony, aby wyzwolić zadanie.

job.trigger.aktualizacja_tabeli

Type: Map

Konfiguracja wyzwalacza na podstawie aktualizacji tabeli.

Key Typ Description
table_names Sequence Lista nazw tabel do monitorowania aktualizacji.
condition String Warunek SQL, który musi zostać spełniony, aby wyzwolić zadanie.
wait_after_last_change_seconds Integer Czas oczekiwania w sekundach po ostatniej aktualizacji tabeli przed uruchomieniem.

praca.wyzwalacz.okresowy

Type: Map

Konfiguracja wyzwalacza okresowego.

Key Typ Description
interval Integer Wartość interwału dla wyzwalacza okresowego.
unit String Jednostka czasu dla interwału. Prawidłowe wartości: SECONDS, , MINUTESHOURS, DAYS, WEEKS.

job.powiadomienia_webhook

Type: Map

Ustawienia powiadomień webhook dla przebiegów zadań.

Key Typ Description
on_start Sequence Lista identyfikatorów powiadomień webhook do powiadamiania, gdy rozpoczyna się uruchomienie.
on_success Sequence Lista identyfikatorów powiadomień webhook do powiadamiania, gdy przebieg zakończy się sukcesem.
on_failure Sequence Lista identyfikatorów powiadomień webhook, które mają być użyte do powiadamiania w przypadku niepowodzenia uruchomienia.
on_duration_warning_threshold_exceeded Sequence Lista identyfikatorów powiadomień elementu webhook, które mają być powiadamiane, gdy czas trwania przebiegu przekracza próg ostrzeżenia.

Examples

W poniższym przykładzie zdefiniowano zadanie z kluczem zasobu hello-job z jednym zadaniem w notatniku:

resources:
  jobs:
    hello-job:
      name: hello-job
      tasks:
        - task_key: hello-task
          notebook_task:
            notebook_path: ./hello.py

W poniższym przykładzie zdefiniowano zadanie za pomocą notesu SQL:

resources:
  jobs:
    job_with_sql_notebook:
      name: 'Job to demonstrate using a SQL notebook with a SQL warehouse'
      tasks:
        - task_key: notebook
          notebook_task:
            notebook_path: ./select.sql
            warehouse_id: 799f096837fzzzz4

Aby uzyskać dodatkowe przykłady konfiguracji zadań, zobacz Konfiguracja zadania.

Aby uzyskać informacje na temat definiowania zadań pracy i nadpisywania ustawień pracy, odwołaj się do:

model (starsza wersja)

Type: Map

Zasób dotyczący modelu pozwala na definiowanie starszych modeli w pakietach. Usługa Databricks zaleca zamiast tego korzystanie z zarejestrowanych modeli w Katalogu Unity.

punkt_serwowania_modelu

Type: Map

Zasób model_serving_endpoint umożliwia zdefiniowanie modelu obsługującego punkty końcowe. Zobacz Zarządzanie modelem obsługującym punkty końcowe.

model_serving_endpoints:
  <model_serving_endpoint-name>:
    <model_serving_endpoint-field-name>: <model_serving_endpoint-field-value>
Key Typ Description
ai_gateway Map Konfiguracja bramy sztucznej inteligencji dla punktu końcowego obsługującego. UWAGA: Obecnie obsługiwane są tylko zewnętrzne modele i punkty końcowe z konfigurowaną przepływnością. Zobacz ai_gateway.
config Map Podstawowa konfiguracja punktu końcowego obsługującego. Zobacz konfigurację.
name String Nazwa obsługującego punktu końcowego. To pole jest wymagane i musi być unikatowe w obszarze roboczym usługi Databricks. Nazwa punktu końcowego może zawierać znaki alfanumeryczne, kreski i podkreślenia.
permissions Sequence Model obsługujący uprawnienia punktu końcowego. Zobacz uprawnienia.
rate_limits Sequence Deprecated. Limity szybkości, które mają być stosowane do punktu końcowego obsługi. Użyj AI Gateway do zarządzania limitami ilościowymi.
route_optimized logiczny Włącz optymalizację tras dla punktu końcowego obsługi.
tags Sequence Tagi, które mają być dołączone do punktu końcowego obsługi i automatycznie propagowane do dzienników rozliczeniowych.

punkt_koncowy_świadczenia_modelu.ai_brama

Type: Map

Konfiguracja bramy sztucznej inteligencji dla punktu końcowego obsługującego.

Key Typ Description
guardrails Map Konfiguracja poręczy. Zobacz zabezpieczenia.
inference_table_config Map Konfiguracja rejestrowania inferencji w tabelach Unity Catalog. Zobacz inference_table_config.
rate_limits Sequence Konfiguracje limitu szybkości.
usage_tracking_config Map Konfiguracja śledzenia użycia. Zobacz usage_tracking_config.

punkt_serwowania_modeli.ai_gateway.ograniczenia

Type: Map

Konfiguracja barier zabezpieczających bramy sztucznej inteligencji.

Key Typ Description
input Map Konfiguracja poręczy wejściowych z polami takimi jak safety, pii.
output Map Konfiguracja poręczy wyjściowych z polami takimi jak safety, pii.
invalid_keywords Sequence Lista słów kluczowych do zablokowania.

model_serving_endpoint.ai_gateway.inference_table_config

Type: Map

Konfiguracja rejestrowania inferencji w tabelach Unity Catalog.

Key Typ Description
catalog_name String Nazwa wykazu w wykazie aparatu Unity.
schema_name String Nazwa schematu w Unity Catalog.
table_name_prefix String Prefiks nazw tabel wnioskowania.
enabled logiczny Określa, czy rejestrowanie tabeli wnioskowania jest włączone.

punkt_końcowy_obsługi_modeli.brama_AI.konfiguracja_śledzenia_użycia

Type: Map

Konfiguracja bramy AI do monitorowania użytkowania.

Key Typ Description
enabled logiczny Określa, czy śledzenie użycia jest włączone.

model_serving_endpoint.config

Type: Map

Podstawowa konfiguracja punktu końcowego obsługującego.

Key Typ Description
served_entities Sequence Lista obsługiwanych jednostek dla punktu końcowego. Każda obsługiwana jednostka zawiera pola, takie jak entity_name, , entity_versionworkload_size, scale_to_zero_enabled, workload_type, environment_vars.
served_models Sequence (Przestarzałe: użyj served_entities zamiast tego) Lista obsługiwanych modeli dla punktu końcowego do obsługi.
traffic_config Map Konfiguracja ruchu definiująca sposób kierowania wywołań do punktu końcowego obsługującego. Zobacz traffic_config.
auto_capture_config Map Konfiguracja tabel inferencyjnych, która automatycznie rejestruje żądania i odpowiedzi do Unity Catalog. Zobacz auto_capture_config.

model_serving_endpoint.config.konfiguracja_ruchu

Type: Map

Konfiguracja ruchu definiująca sposób kierowania wywołań do punktu końcowego obsługującego.

Key Typ Description
routes Sequence Lista tras dystrybucji ruchu. Każda trasa zawiera served_model_name i traffic_percentage.

model_serving_endpoint.config.auto_capture_config (parametr konfiguracji automatycznego zbierania danych)

Type: Map

Konfiguracja tabel inferencyjnych, która automatycznie rejestruje żądania i odpowiedzi do Unity Catalog.

Key Typ Description
catalog_name String Nazwa wykazu w wykazie aparatu Unity.
schema_name String Nazwa schematu w Unity Catalog.
table_name_prefix String Prefiks nazw tabel wnioskowania.
enabled logiczny Określa, czy rejestrowanie tabeli wnioskowania jest włączone.

Example

W poniższym przykładzie zdefiniowano punkt końcowy serwowania modelu w Katalogu Unity.

resources:
  model_serving_endpoints:
    uc_model_serving_endpoint:
      name: 'uc-model-endpoint'
      config:
        served_entities:
          - entity_name: 'myCatalog.mySchema.my-ads-model'
            entity_version: '10'
            workload_size: 'Small'
            scale_to_zero_enabled: 'true'
        traffic_config:
          routes:
            - served_model_name: 'my-ads-model-10'
              traffic_percentage: '100'
      tags:
        - key: 'team'
          value: 'data science'

przewód

Type: Map

Pipeline'y są obsługiwane w Pythonie dla pakietów zasobów Databricks. Zobacz databricks.bundles.pipelines.

Zasób potoku umożliwia tworzenie potoków. Aby uzyskać informacje o potokach, zobacz Lakeflow Spark Deklaratywne potoki. Aby zapoznać się z samouczkiem, który używa szablonu pakietów zasobów usługi Databricks do tworzenia potoku, zobacz Develop Lakeflow Spark Deklaratative Pipelines with Databricks Asset Bundles (Tworzenie potoków deklaratywnych platformy Spark w usłudze Lakeflow za pomocą pakietów zasobów usługi Databricks).

pipelines:
  <pipeline-name>:
    <pipeline-field-name>: <pipeline-field-value>
Key Typ Description
allow_duplicate_names logiczny Jeśli ustawione na false, wdrożenie się nie powiedzie, jeśli nazwa będzie w konflikcie z innym potokiem.
budget_policy_id String Polityka budżetowa tego pipeline.
catalog String Katalog w Unity Catalog do publikowania danych z tego potoku. Jeśli target zostanie określony, tabele w tym potoku są publikowane w schemacie target w ramach catalog (na przykład catalog.target.table). Jeśli target nie zostanie określony, żadne dane nie zostaną opublikowane w Unity Catalog.
channel String Kanał wydań Lakeflow Spark Declarative Pipelines, który określa, która wersja tych potoków deklaratywnych ma być używana.
clusters Sequence Ustawienia konfiguracji klastra dla tego wdrożenia potoku. Zobacz klaster.
configuration Map Konfiguracja tego wykonania potoku.
continuous logiczny Określa, czy potok jest ciągły, czy wyzwalany. To zastępuje trigger.
deployment Map Typ wdrożenia tego ciągu technologicznego. Zobacz wdrażanie.
development logiczny Czy pipeline jest w trybie rozwoju. Wartość domyślna to fałsz.
dry_run logiczny Czy potok jest potokiem przebiegu suchego.
edition String Edycja produktu do zarządzania potokiem.
environment Map Specyfikacja środowiska użytego w tym potoku do instalacji zależności na platformie obliczeniowej bez serwera. Zobacz środowisko. Ten klucz jest obsługiwany tylko w interfejsie wiersza polecenia usługi Databricks w wersji 0.258 lub nowszej.
event_log Map Konfiguracja dziennika zdarzeń dla tego potoku. Zobacz event_log.
filters Map Filtry określające, które pakiety potoków mają zostać uwzględnione w wdrożonym grafie. Zobacz filtry.
id String Unikatowy identyfikator tego potoku.
ingestion_definition Map Konfiguracja zarządzanego potoku wprowadzania. Tych ustawień nie można używać z ustawieniami libraries, schema, targetlub catalog . Zobacz ingestion_definition.
libraries Sequence Lista bibliotek lub kodu wymaganych przez to wdrożenie. Zobacz pipeline.libraries.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Przyjazna nazwa tego pipeline'u.
notifications Sequence Ustawienia powiadomień dla tej pipelinii.
permissions Sequence Uprawnienia potoku. Zobacz uprawnienia.
photon logiczny Określa, czy dla tego kanału włączono Photon.
root_path String Ścieżka główna dla tego potoku. Jest używany jako katalog główny podczas edytowania potoku w interfejsie użytkownika usługi Databricks i jest dodawany do sys.path przy uruchamianiu źródeł Pythona w trakcie wykonywania potoku.
run_as Map Tożsamość, w ramach którego działa potok. Jeśli nie zostanie określone, pipeline jest uruchamiany przez użytkownika, który go utworzył. Można określić tylko user_name lub service_principal_name. Jeśli oba te elementy zostaną określone, wystąpi błąd. Zobacz run_as.
schema String Domyślny schemat (baza danych), w którym tabele są odczytywane z lub publikowane.
serverless logiczny Określa, czy dla tego potoku danych jest włączone przetwarzanie w trybie bezserwerowym.
storage String Katalog główny systemu plików DBFS do przechowywania punktów kontrolnych i tabel.
tags Map Mapa tagów związanych z potokiem danych. Są one przekazywane do klastra jako tagów klastra i dlatego podlegają tym samym ograniczeniom. Do potoku można dodać maksymalnie 25 tagów.
target String Docelowy schemat (baza danych) do dodawania tabel w tej ścieżce przetwarzania. Należy określić dokładnie jeden z schema lub target. Aby opublikować w Unity Catalog, określ również wartość catalog. To starsze pole jest przestarzałe na potrzeby tworzenia potoku na rzecz pola schema.

pipeline.wdrożenie

Type: Map

Konfiguracja typu wdrożenia dla potoku.

Key Typ Description
kind String Rodzaj wdrożenia. Na przykład BUNDLE.
metadata_file_path String Ścieżka do pliku metadanych wdrożenia.

środowisko.potoku

Type: Map

Specyfikacja środowiska do instalowania zależności na obliczeniach bezserwerowych.

Key Typ Description
dependencies Sequence Lista zależności pip obsługiwanych przez wersję pip w tym środowisku. Każda zależność jest linią w pliku wymagań pip.

pipeline.dziennik_zdarzeń

Type: Map

Konfiguracja dziennika zdarzeń dla potoku.

Key Typ Description
catalog String Katalog Unity Catalog, pod którym publikowany jest dziennik zdarzeń.
name String Nazwa, do której dziennik zdarzeń jest publikowany w Unity Catalog.
schema String Schemat Unity Catalog, pod którym jest publikowany dziennik zdarzeń.

pipeline.filters

Type: Map

Filtry określające, które pakiety potoków mają zostać uwzględnione na wdrożonym grafie.

Key Typ Description
include Sequence Lista nazw pakietów do uwzględnienia.
exclude Sequence Lista nazw pakietów do wykluczenia.

pipeline.ingestion_definition

Type: Map

Konfiguracja zarządzanego potoku przetwarzania. Tych ustawień nie można używać z ustawieniami libraries, schema, targetlub catalog .

Key Typ Description
connection_name String Nazwa połączenia do użycia do pozyskiwania.
ingestion_gateway_id String Identyfikator bramy wejściowej.
objects Sequence To jest wymagane. Ustawienia określające tabele do replikacji i miejsce docelowe dla replikowanych tabel. Każdy obiekt może być schemaSpec, TableSpec lub ReportSpec.
source_configuration Map Parametry konfiguracji źródła na poziomie katalogu. Zobacz source_configuration.
table_configuration Map Konfiguracja tabel importu. Zobacz table_configuration.

SchemaSpec

Type: Map

Specyfikacja obiektu schematu do pozyskiwania wszystkich tabel ze schematu.

Key Typ Description
source_schema String Nazwa schematu źródłowego do pobierania.
destination_catalog String Nazwa katalogu docelowego w Unity Catalog.
destination_schema String Nazwa docelowego schematu w Unity Catalog.
table_configuration Map Konfiguracja stosowania do wszystkich tabel w tym schemacie. Zobacz pipeline.ingestion_definition.table_configuration.

Specyfikacja Tabeli

Type: Map

Specyfikacja obiektu tabeli do wczytywania określonej tabeli.

Key Typ Description
source_schema String Nazwa schematu źródłowego zawierającego tabelę.
source_table String Nazwa tabeli źródłowej do ingestowania.
destination_catalog String Nazwa katalogu docelowego w Unity Catalog.
destination_schema String Nazwa docelowego schematu w Unity Catalog.
destination_table String Nazwa tabeli docelowej w katalogu Unity.
table_configuration Map Konfiguracja tej konkretnej tabeli. Zobacz pipeline.ingestion_definition.table_configuration.

Specyfikacja Raportu

Type: Map

Specyfikacja obiektu raportu na potrzeby pobierania raportów analitycznych.

Key Typ Description
source_url String Adres URL raportu źródłowego.
source_report String Nazwa lub identyfikator raportu źródłowego.
destination_catalog String Nazwa katalogu docelowego w Unity Catalog.
destination_schema String Nazwa docelowego schematu w Unity Catalog.
destination_table String Nazwa tabeli docelowej dla danych raportu.
table_configuration Map Konfiguracja tabeli raportów. Zobacz pipeline.ingestion_definition.table_configuration.

pipeline.ingestion_definition.source_configuration

Type: Map

Konfiguracja źródła.

Key Typ Description
catalog Map Parametry konfiguracji źródła na poziomie katalogu. Zobacz katalog.
rura.definicja_pobierania.konfiguracja_źródła.katalog

Type: Map

Parametry konfiguracji źródła na poziomie wykazu

Key Typ Description
postgres Map Parametry konfiguracji na poziomie wykazu specyficzne dla bazy danych Postgres. Zawiera jeden slot_config klucz reprezentujący konfigurację Map slotu Postgres do wykorzystania przy replikacji logicznej.
source_catalog String Nazwa katalogu źródłowego.

pipeline.ingestion_definition.table_configuration

Type: Map

Opcje konfiguracji tabel do importu danych.

Key Typ Description
exclude_columns Sequence Lista nazw kolumn, które mają być wykluczone z przyjmowania. Jeśli nie jest określone, include_columns całkowicie kontroluje, które kolumny mają być pobierane. Po określeniu wszystkie inne kolumny, w tym przyszłe, zostaną automatycznie dołączone do pozyskiwania. To pole jest wzajemnie wykluczające się z include_columns.
include_columns Sequence Lista nazw kolumn do importu. Kiedy nie jest określone, wszystkie kolumny oprócz tych w exclude_columns są uwzględniane. Przyszłe kolumny zostaną automatycznie dołączone. Po określeniu wszystkie inne przyszłe kolumny zostaną automatycznie wykluczone z pozyskiwania. To pole jest wzajemnie wykluczające się z exclude_columns.
primary_keys Sequence Lista nazw kolumn, które mają być używane jako klucze podstawowe dla tabeli.
sequence_by Sequence Nazwy kolumn określające logiczną kolejność zdarzeń w danych źródłowych. Potoki deklaratywne Spark wykorzystują to sekwencjonowanie do obsługi zdarzeń zmiany, które przychodzą w niewłaściwej kolejności.

pipeline.biblioteki

Type: Sequence

Definiuje listę bibliotek lub kodu wymaganego przez tę ścieżkę.

Każdy element na liście jest definicją:

Key Typ Description
file Map Ścieżka do pliku, który definiuje potok i jest przechowywany w repozytoriach usługi Databricks. Zobacz pipeline.libraries.file.
glob Map Ujednolicone pole do uwzględnienia kodu źródłowego. Każdy wpis może być ścieżką notesu, ścieżką pliku lub ścieżką folderu, która kończy się /**. Tego pola nie można używać razem z notebook lub file. Zobacz pipeline.libraries.glob.
notebook Map Ścieżka do notesu, który definiuje potok i jest przechowywany w obszarze roboczym usługi Databricks. Zobacz pipeline.libraries.notebook.
whl String To pole jest wycofane

pipeline.biblioteki.plik

Type: Map

Ścieżka do pliku, który definiuje potok danych i jest przechowywany w repozytoriach Databricks.

Key Typ Description
path String Ścieżka bezwzględna kodu źródłowego.

pipeline.libraries.glob

Type: Map

Ujednolicone pole do uwzględnienia kodu źródłowego. Każdy wpis może być ścieżką notesu, ścieżką pliku lub ścieżką folderu, która kończy się /**. Tego pola nie można używać razem z notebook lub file.

Key Typ Description
include String Kod źródłowy do uwzględnienia dla potoków

pipeline.biblioteki.notatnik

Type: Map

Ścieżka do notesu, który definiuje potok i jest przechowywany w obszarze roboczym usługi Databricks.

Key Typ Description
path String Ścieżka bezwzględna kodu źródłowego.

Example

W poniższym przykładzie zdefiniowano rurkę o kluczu zasobu hello-pipeline:

resources:
  pipelines:
    hello-pipeline:
      name: hello-pipeline
      clusters:
        - label: default
          num_workers: 1
      development: true
      continuous: false
      channel: CURRENT
      edition: CORE
      photon: false
      libraries:
        - notebook:
            path: ./pipeline.py

Aby zapoznać się z dodatkowymi przykładami konfiguracji potoku, zobacz Konfiguracja potoku.

quality_monitor (wykaz aparatu Unity)

Type: Map

Zasób quality_monitor umożliwia zdefiniowanie monitora tabeli Unity Catalog. Aby uzyskać informacje o monitorach, zobacz Profilowanie danych.

quality_monitors:
  <quality_monitor-name>:
    <quality_monitor-field-name>: <quality_monitor-field-value>
Key Typ Description
assets_dir String Katalog do przechowywania zasobów monitorowania (np. pulpit nawigacyjny, tabele metryk).
baseline_table_name String Nazwa tabeli bazowej, z której są obliczane metryki dryfu. Kolumny w monitorowanej tabeli powinny być również obecne w tabeli bazowej.
custom_metrics Sequence Niestandardowe metryki do obliczenia na monitorowanej tabeli. Mogą to być metryki zagregowane, metryki pochodne (pochodzące z metryk zagregowanych) lub metryki dryfu (porównujące metryki w różnych oknach czasowych). Zobacz custom_metrics.
inference_log Map Konfiguracja monitorowania dzienników wnioskowania. Zobacz inference_log.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
notifications Map Ustawienia powiadomień dla monitora. Zobacz powiadomienia.
output_schema_name String Schemat, w którym są tworzone tabele metryk wyjściowych.
schedule Map Harmonogram automatycznego aktualizowania i odświeżania tabel metryk. Zobacz harmonogram.
skip_builtin_dashboard logiczny Czy pominąć tworzenie domyślnego pulpitu nawigacyjnego podsumowującego metryki jakości danych.
slicing_exprs Sequence Lista wyrażeń kolumn do podziału danych na potrzeby skupionej analizy. Dane są pogrupowane niezależnie od każdego wyrażenia, co powoduje utworzenie oddzielnego wycinka dla każdego predykatu i jego uzupełnień. W przypadku kolumn o wysokiej kardynalności tylko 100 pierwszych unikatowych wartości według częstotliwości spowoduje wygenerowanie wycinków.
snapshot Map Konfiguracja do monitorowania tabel migawek. Zobacz migawkę.
table_name String Pełna nazwa tabeli.
time_series Map Konfiguracja monitorowania tabel szeregów czasowych. Zobacz time_series.
warehouse_id String Opcjonalny argument określający magazyn na potrzeby tworzenia pulpitu nawigacyjnego. Jeśli nie zostanie określony, zostanie użyty pierwszy uruchomiony magazyn.

quality_monitor.metryki_niestandardowe

Type: Sequence

Lista niestandardowych definicji metryk.

Każdy element na liście to CustomMetric:

Key Typ Description
definition String Szablon Jinja dla wyrażenia SQL, który określa sposób obliczania metryki. Zobacz tworzenie definicji metryki.
input_columns Sequence Lista nazw kolumn w tabeli wejściowej, dla których powinna zostać obliczona metryka. Można użyć :table, aby wskazać, że metryka potrzebuje danych z wielu kolumn.
name String Nazwa metryki w tabelach wyjściowych.
output_data_type String Typ danych wyjściowych metryki niestandardowej
type String Może być tylko jednym z CUSTOM_METRIC_TYPE_AGGREGATE, CUSTOM_METRIC_TYPE_DERIVED lub CUSTOM_METRIC_TYPE_DRIFT. CUSTOM_METRIC_TYPE_AGGREGATE i CUSTOM_METRIC_TYPE_DERIVED Metryki są obliczane na jednej tabeli, podczas gdy CUSTOM_METRIC_TYPE_DRIFT metryki porównawcze porównują metryki między tabelą bazową a tabelą wejściową lub między dwoma kolejnymi oknami czasowymi.
  • CUSTOM_METRIC_TYPE_AGGREGATE: zależny jest tylko od istniejących kolumn w tabeli
  • CUSTOM_METRIC_TYPE_DERIVED: zależy od wcześniej obliczonych zagregowanych metryk
  • CUSTOM_METRIC_TYPE_DRIFT: opiera się na wcześniej obliczonych zagregowanych lub pochodnych miarach

monitor_jakości.konfiguracja_klasyfikacji_danych

Type: Map

Konfiguracja klasyfikacji danych.

Key Typ Description
enabled logiczny Określa, czy klasyfikacja danych jest włączona.

quality_monitor.inference_log

Type: Map

Konfiguracja monitorowania dzienników wnioskowania.

Key Typ Description
granularities Sequence Szczegółowość czasowa agregacji logów wnioskowania (na przykład ["1 day"]).
model_id_col String Nazwa kolumny zawierającej identyfikator modelu.
prediction_col String Nazwa kolumny zawierającej przewidywanie.
timestamp_col String Nazwa kolumny zawierającej znacznik czasu.
problem_type String Typ problemu uczenia maszynowego. Prawidłowe wartości to PROBLEM_TYPE_CLASSIFICATION, PROBLEM_TYPE_REGRESSION.
label_col String Nazwa kolumny zawierającej etykietę (rzeczywiste dane).

powiadomienia_monitor_jakości

Type: Map

Ustawienia powiadomień dla monitora.

Key Typ Description
on_failure Map Ustawienia powiadomień, kiedy monitor ulegnie awarii. Zobacz on_failure.
on_new_classification_tag_detected Map Ustawienia powiadomień po wykryciu nowych tagów klasyfikacji. Zobacz on_new_classification_tag_detected.

quality_monitor.notifications.on_failure

Type: Map

Ustawienia powiadomień, kiedy monitor ulegnie awarii.

Key Typ Description
email_addresses Sequence Lista adresów e-mail do powiadamiania o niepowodzeniu monitorowania.

monitor_jakości.powiadomienia.wykryto_nowy_tag_klasyfikacyjny

Type: Map

Ustawienia powiadomień po wykryciu nowych tagów klasyfikacji.

Key Typ Description
email_addresses Sequence Lista adresów e-mail do powiadamiania o wykryciu nowych tagów klasyfikacji.

harmonogram_monitorowania_jakości

Type: Map

Zaplanuj automatyczne aktualizowanie i odświeżanie tabel metryk.

Key Typ Description
quartz_cron_expression String Wyrażenie Cron używające składni kwarcowej. Na przykład 0 0 8 * * ? działa codziennie o godzinie 8:00 AM.
timezone_id String Strefa czasowa harmonogramu (na przykład UTC, America/Los_Angeles).
pause_status String Czy harmonogram jest wstrzymany. Prawidłowe wartości: PAUSED, UNPAUSED.

quality_monitor.migawka

Type: Map

Konfiguracja do monitorowania tabel migawek.

monitor_jakości.szereg_czasowy

Konfiguracja monitorowania tabel szeregów czasowych.

Key Typ Description
granularities Sequence Granulacje czasu dla agregacji danych szeregów czasowych (na przykład ["30 minutes"]).
timestamp_col String Nazwa kolumny zawierającej znacznik czasu.

Examples

Pełny przykładowy pakiet, który definiuje element quality_monitor, zobacz pakiet mlops_demo.

W poniższych przykładach zdefiniowano monitory jakości dla InferenceLog, TimeSeriesi typy profilów migawki.

# InferenceLog profile type
resources:
  quality_monitors:
    my_quality_monitor:
      table_name: dev.mlops_schema.predictions
      output_schema_name: ${bundle.target}.mlops_schema
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/databricks_lakehouse_monitoring
      inference_log:
        granularities: [1 day]
        model_id_col: model_id
        prediction_col: prediction
        label_col: price
        problem_type: PROBLEM_TYPE_REGRESSION
        timestamp_col: timestamp
      schedule:
        quartz_cron_expression: 0 0 8 * * ? # Run Every day at 8am
        timezone_id: UTC
# TimeSeries profile type
resources:
  quality_monitors:
    my_quality_monitor:
      table_name: dev.mlops_schema.predictions
      output_schema_name: ${bundle.target}.mlops_schema
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/databricks_lakehouse_monitoring
      time_series:
        granularities: [30 minutes]
        timestamp_col: timestamp
      schedule:
        quartz_cron_expression: 0 0 8 * * ? # Run Every day at 8am
        timezone_id: UTC
# Snapshot profile type
resources:
  quality_monitors:
    my_quality_monitor:
      table_name: dev.mlops_schema.predictions
      output_schema_name: ${bundle.target}.mlops_schema
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/databricks_lakehouse_monitoring
      snapshot: {}
      schedule:
        quartz_cron_expression: 0 0 8 * * ? # Run Every day at 8am
        timezone_id: UTC

registered_model (wykaz aparatu Unity)

Type: Map

Zasób zarejestrowanego modelu umożliwia definiowanie modeli w katalogu Unity. Aby uzyskać informacje na temat modeli zarejestrowanych w katalogu Unity, zobacz Zarządzanie cyklem życia modelu w katalogu Unity.

registered_models:
  <registered_model-name>:
    <registered_model-field-name>: <registered_model-field-value>
Key Typ Description
aliases Sequence Lista aliasów skojarzonych z zarejestrowanym modelem. Zobacz registered_model.aliases.
browse_only logiczny Wskazuje, czy podmiot główny jest ograniczony do pobierania metadanych dla powiązanego obiektu za pomocą uprawnienia BROWSE, gdy include_browse zostanie włączone w żądaniu.
catalog_name String Nazwa wykazu, w którym znajduje się schemat i zarejestrowany model.
comment String Komentarz dołączony do zarejestrowanego modelu.
full_name String Trzy-poziomowa (w pełni kwalifikowana) nazwa zarejestrowanego modelu
grants Sequence Dotacje powiązane z zarejestrowanym modelem. Zobacz przyznanie.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Nazwa zarejestrowanego modelu.
schema_name String Nazwa schematu, w którym znajduje się zarejestrowany model.
storage_location String Lokalizacja w chmurze, w której są przechowywane pliki danych wersji modelu.

aliasy_zarejestrowanego_modelu (registered_model.aliases)

Type: Sequence

Lista aliasów skojarzonych z zarejestrowanym modelem.

Każdy element na liście to Alias:

Key Typ Description
alias_name String Nazwa aliasu, np. "champion" lub "latest_stable"
catalog_name String Nazwa wykazu zawierającego wersję modelu
id String Unikatowy identyfikator aliasu
model_name String Nazwa nadrzędnego zarejestrowanego modelu wersji względem nadrzędnego schematu
schema_name String Nazwa schematu zawierającego wersję modelu w odniesieniu do katalogu głównego
version_num Integer Numer całkowity wersji modelu, na którą wskazuje ten alias.

Example

W poniższym przykładzie zdefiniowano zarejestrowany model w katalogu Unity.

resources:
  registered_models:
    model:
      name: my_model
      catalog_name: ${bundle.target}
      schema_name: mlops_schema
      comment: Registered model in Unity Catalog for ${bundle.target} deployment target
      grants:
        - privileges:
            - EXECUTE
          principal: account users

schemat (Unity Catalog)

Type: Map

Schematy są obsługiwane w języku Python dla pakietów zasobów usługi Databricks. Zobacz databricks.bundles.schemas.

Typ zasobu schematu umożliwia zdefiniowanie schematów Unity Catalog dla tabel i innych zasobów w przepływach pracy i potokach tworzonych w ramach pakietu. Schemat, inny niż inne typy zasobów, ma następujące ograniczenia:

  • Właściciel zasobu schematu jest zawsze użytkownikiem wdrożenia i nie można go zmienić. Jeśli run_as zostanie określony w pakiecie, zostanie on zignorowany przez operacje w schemacie.
  • Dla zasobu schematu są dostępne tylko pola obsługiwane przez odpowiedni obiekt Schemas create API. Na przykład enable_predictive_optimization nie jest obsługiwany, ponieważ jest dostępny tylko w aktualizacji API .
schemas:
  <schema-name>:
    <schema-field-name>: <schema-field-value>
Key Typ Description
catalog_name String Nazwa katalogu nadrzędnego.
comment String Opis tekstowy w formie dowolnej podany przez użytkownika.
grants Sequence Dotacje związane ze schematem. Zobacz przyznanie.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Nazwa schematu względem katalogu nadrzędnego.
properties Map Mapa właściwości typu klucz-wartość dołączona do schematu.
storage_root String Główny adres URL magazynu dla tabel zarządzanych w schemacie.

Examples

W poniższym przykładzie zdefiniowano potok z kluczem zasobu my_pipeline, który tworzy schemat Unity Catalog z kluczem my_schema jako element docelowy.

resources:
  pipelines:
    my_pipeline:
      name: test-pipeline-{{.unique_id}}
      libraries:
        - notebook:
            path: ../src/nb.ipynb
        - file:
            path: ../src/range.sql
      development: true
      catalog: ${resources.schemas.my_schema.catalog_name}
      target: ${resources.schemas.my_schema.id}

  schemas:
    my_schema:
      name: test-schema-{{.unique_id}}
      catalog_name: main
      comment: This schema was created by Databricks Asset Bundles.

Mapowanie uprawnień najwyższego poziomu nie jest obsługiwane przez pakiety zasobów usługi Databricks, więc jeśli chcesz ustawić uprawnienia dla schematu, zdefiniuj uprawnienia dla schematu w ramach mapowania schemas. Aby uzyskać więcej informacji na temat uprawnień, zobacz Pokazywanie, przyznawanie i cofanie przywilejów.

W poniższym przykładzie zdefiniowano schemat Unity Catalog z grantami.

resources:
  schemas:
    my_schema:
      name: test-schema
      grants:
        - principal: users
          privileges:
            - SELECT
        - principal: my_team
          privileges:
            - CAN_MANAGE
      catalog_name: main

sekret_zakres

Type: Map

Zasób secret_scope umożliwia definiowanie tajnych zakresów w pakiecie. Aby uzyskać informacje o zakresach wpisów tajnych, zobacz Zarządzanie wpisami tajnymi.

secret_scopes:
  <secret_scope-name>:
    <secret_scope-field-name>: <secret_scope-field-value>
Key Typ Description
backend_type String Typ zaplecza technologicznego, za pomocą którego zostanie utworzony zakres. Jeśli nie zostanie określony, ta wartość domyślna to DATABRICKS.
keyvault_metadata Map Metadane zakresu wpisu tajnego, jeśli element backend_type ma wartość AZURE_KEYVAULT. Zobacz keyvault_metadata.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Nazwa zakresu żądana przez użytkownika. Nazwy zakresów są unikatowe.
permissions Sequence Uprawnienia, które mają być zastosowane do zakresu tajnego. Uprawnienia są zarządzane za pośrednictwem wpisów ACL tajnych zakresu. Zobacz uprawnienia.

secret_scope.keyvault_metadata

Type: Map

Metadane dla zakresów tajnych kluczy opartych na Azure Key Vault.

Key Typ Description
resource_id String Identyfikator zasobu Azure dla Key Vault.
dns_name String Nazwa DNS usługi Azure Key Vault.

Examples

W poniższym przykładzie zdefiniowano zakres wpisów tajnych, który używa zaplecza magazynu kluczy:

resources:
  secret_scopes:
    secret_scope_azure:
      name: test-secrets-azure-backend
      backend_type: 'AZURE_KEYVAULT'
      keyvault_metadata:
        resource_id: my_azure_keyvault_id
        dns_name: my_azure_keyvault_dns_name

W poniższym przykładzie skonfigurowano niestandardową listę ACL przy użyciu zakresów sekretów i zezwoleń.

resources:
  secret_scopes:
    my_secret_scope:
      name: my_secret_scope
      permissions:
        - user_name: admins
          level: WRITE
        - user_name: users
          level: READ

Aby zobaczyć przykładowy pakiet, który pokazuje, jak zdefiniować zakres tajny oraz zadanie, które odczytuje z niego, przejdź do repozytorium GitHub bundle-examples.

sql_warehouse

Type: Map

Zasób usługi SQL Warehouse umożliwia zdefiniowanie magazynu SQL Warehouse w pakiecie. Aby uzyskać informacje na temat magazynów SQL, zobacz Magazynowanie danych w usłudze Azure Databricks.

sql_warehouses:
  <sql-warehouse-name>:
    <sql-warehouse-field-name>: <sql-warehouse-field-value>
Key Typ Description
auto_stop_mins Integer Czas w minutach, przez który usługa SQL Warehouse musi być bezczynna (na przykład bez uruchomionych zapytań), zanim zostanie automatycznie zatrzymana. Prawidłowe wartości to 0, co oznacza brak autostopu, lub wartości większe lub równe 10. Wartość domyślna to 120.
channel Map Szczegóły kanału. Zobacz kanał
cluster_size String Rozmiar klastrów przydzielonych dla tego magazynu. Zwiększenie rozmiaru klastra Spark umożliwia uruchamianie na nim większych zapytań. Jeśli chcesz zwiększyć liczbę współbieżnych zapytań, dostosuj max_num_clusters. Aby uzyskać obsługiwane wartości, zobacz cluster_size.
creator_name String Nazwa użytkownika, który utworzył magazyn.
enable_photon logiczny Czy magazyn powinien używać klastrów zoptymalizowanych pod Photon. Wartość domyślna to fałsz.
enable_serverless_compute logiczny Czy magazyn powinien używać bezserwerowych obliczeń.
instance_profile_arn String Deprecated. Profil wystąpienia używany do przekazywania roli IAM do klastra
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
max_num_clusters Integer Maksymalna liczba klastrów tworzonych przez moduł skalowania automatycznego w celu obsługi zapytań współbieżnych. Wartości muszą być mniejsze lub równe 30 i większe niż lub równe min_num_clusters. Wartość domyślna to min_clusters, jeśli nie jest ustawiona.
min_num_clusters Integer Minimalna liczba dostępnych klastrów, które będą utrzymywane dla tego magazynu SQL. Zwiększenie tej wartości zapewni, że większa liczba klastrów zawsze działa i w związku z tym może skrócić czas zimnego startu nowych zapytań. Jest to podobne do zarezerwowanych i odwołalnych rdzeni w menedżerze zasobów. Wartości muszą być większe niż 0 i mniejsze lub równe min (max_num_clusters, 30). Wartość domyślna to 1.
name String Nazwa logiczna klastra. Nazwa musi być unikatowa w organizacji i może zawierać mniej niż 100 znaków.
permissions Sequence Uprawnienia, które mają być zastosowane w magazynie. Zobacz uprawnienia.
spot_instance_policy String Czy używać wystąpień typu spot. Prawidłowe wartości to POLICY_UNSPECIFIED, , COST_OPTIMIZEDRELIABILITY_OPTIMIZED. Wartość domyślna to COST_OPTIMIZED.
tags Map Zestaw par klucz-wartość, które zostaną przypisane do wszystkich zasobów (np. wystąpienia AWS i woluminy EBS) powiązanych z tym magazynem danych SQL. Liczba tagów musi być mniejsza niż 45.
warehouse_type String Typ magazynu, PRO lub CLASSIC. Jeśli chcesz używać bezserwerowych obliczeń, ustaw to pole na PRO, a także ustaw pole enable_serverless_compute na wartość true.

sql_warehouse.channel

Type: Map

Konfiguracja kanału dla usługi SQL Warehouse.

Key Typ Description
name String Nazwa kanału. Prawidłowe wartości to CHANNEL_NAME_CURRENT, , CHANNEL_NAME_PREVIEWCHANNEL_NAME_CUSTOM.
dbsql_version String Wersja bazy danych DBSQL dla kanałów niestandardowych.

Example

W poniższym przykładzie zdefiniowano usługę SQL Warehouse:

resources:
  sql_warehouses:
    my_sql_warehouse:
      name: my_sql_warehouse
      cluster_size: X-Large
      enable_serverless_compute: true
      max_num_clusters: 3
      min_num_clusters: 1
      auto_stop_mins: 60
      warehouse_type: PRO

zsynchronizowana_tabela_bazy_danych

Type: Map

Zsynchronizowany zasób tabeli bazy danych umożliwia definiowanie tabel bazy danych Lakebase w pakiecie.

Aby uzyskać informacje o zsynchronizowanych tabelach bazy danych, zobacz Co to jest wystąpienie bazy danych?.

synced_database_tables:
  <synced_database_table-name>:
    <synced_database_table-field-name>: <synced_database_table-field-value>
Key Typ Description
database_instance_name String Nazwa docelowego wystąpienia bazy danych. Jest to wymagane podczas tworzenia zsynchronizowanych tabel bazy danych w standardowych wykazach. Jest to opcjonalne podczas tworzenia zsynchronizowanych tabel bazy danych w zarejestrowanych wykazach.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
logical_database_name String Nazwa docelowego obiektu bazy danych Postgres (logicznej bazy danych) dla tej tabeli.
name String Pełna nazwa tabeli w formularzu catalog.schema.table.
spec Map Specyfikacja tabeli bazy danych. Zobacz specyfikację zsynchronizowanej tabeli bazy danych.

synced_database_table.spec

Type: Map

Specyfikacja tabeli bazy danych.

Key Typ Description
create_database_objects_if_missing logiczny Czy utworzyć logiczną bazę danych i zasoby schematu zsynchronizowanej tabeli, jeśli jeszcze nie istnieją.
existing_pipeline_id String Identyfikator istniejącego rurociągu. Jeśli to zostanie ustawione, zsynchronizowana tabela zostanie spakowana do istniejącego potoku, do którego się odnosi. Pozwala to uniknąć tworzenia nowego potoku i umożliwia współdzielenie istniejących zasobów obliczeniowych. W takim przypadku, ta zsynchronizowana tabela scheduling_policy musi być zgodna z regułami harmonogramowania istniejącego potoku. Należy zdefiniować co najwyżej jeden z existing_pipeline_id i new_pipeline_spec.
new_pipeline_spec Map Specyfikacja dla nowego rurociągu. Zobacz new_pipeline_spec. Należy zdefiniować co najwyżej jeden z existing_pipeline_id i new_pipeline_spec.
primary_key_columns Sequence Lista nazw kolumn, które tworzą klucz podstawowy.
scheduling_policy String Zasady planowania na potrzeby synchronizacji. Prawidłowe wartości to SNAPSHOT, CONTINUOUS.
source_table_full_name String Pełna nazwa tabeli źródłowej w formacie catalog.schema.table.
timeseries_key String Klucz szeregów czasowych do deduplikowania wierszy z tym samym kluczem podstawowym.

synced_database_table.spec.new_pipeline_spec

Type: Map

Specyfikacja potoku danych wykorzystywanego przez zsynchronizowaną tabelę bazy danych.

Key Typ Description
budget_policy_id String Identyfikator zasad budżetowych do ustawienia na nowo utworzonej pipeline.
storage_catalog String Katalog dla pipeline'u do przechowywania plików pośrednich, takich jak punkty kontrolne i dzienniki zdarzeń. Musi to być standardowy wykaz, w którym użytkownik ma uprawnienia do tworzenia tabel delty.
storage_schema String Schemat dla potoku do przechowywania plików pośrednich, takich jak punkty kontrolne i dzienniki zdarzeń. Musi to znajdować się w wykazie standardowym, w którym użytkownik ma uprawnienia do tworzenia tabel delty.

Examples

W poniższym przykładzie zdefiniowano zsynchronizowaną tabelę bazy danych w odpowiednim wykazie baz danych:

resources:
  database_instances:
    my_instance:
      name: my-instance
      capacity: CU_1
  database_catalogs:
    my_catalog:
      database_instance_name: my-instance
      database_name: 'my_database'
      name: my_catalog
      create_database_if_not_exists: true
  synced_database_tables:
    my_synced_table:
      name: ${resources.database_catalogs.my_catalog.name}.${resources.database_catalogs.my_catalog.database_name}.my_destination_table
      database_instance_name: ${resources.database_catalogs.my_catalog.database_instance_name}
      logical_database_name: ${resources.database_catalogs.my_catalog.database_name}
      spec:
        source_table_full_name: 'my_source_table'
        scheduling_policy: SNAPSHOT
        primary_key_columns:
          - my_pk_column
        new_pipeline_spec:
          storage_catalog: 'my_delta_catalog'
          storage_schema: 'my_delta_schema'

W poniższym przykładzie zdefiniowano zsynchronizowaną tabelę bazy danych wewnątrz wykazu standardowego:

resources:
  synced_database_tables:
    my_synced_table:
      name: 'my_standard_catalog.public.synced_table'
      # database_instance_name is required for synced tables created in standard catalogs.
      database_instance_name: 'my-database-instance'
      # logical_database_name is required for synced tables created in standard catalogs:
      logical_database_name: ${resources.database_catalogs.my_catalog.database_name}
      spec:
        source_table_full_name: 'source_catalog.schema.table'
        scheduling_policy: SNAPSHOT
        primary_key_columns:
          - my_pk_column
        create_database_objects_if_missing: true
        new_pipeline_spec:
          storage_catalog: 'my_delta_catalog'
          storage_schema: 'my_delta_schema'

W tym przykładzie tworzona jest zsynchronizowana tabela bazy danych, a także dostosowywany jest harmonogram potoku. Przyjęto założenie, że masz już:

  • Wystąpienie bazy danych o nazwie my-database-instance
  • Wykaz standardowy o nazwie my_standard_catalog
  • Schemat w wykazie standardowym o nazwie default
  • Źródłowa tabela delta o nazwie source_delta.schema.customer z kluczem podstawowym c_custkey
resources:
  synced_database_tables:
    my_synced_table:
      name: 'my_standard_catalog.default.my_synced_table'
      database_instance_name: 'my-database-instance'
      logical_database_name: 'test_db'
      spec:
        source_table_full_name: 'source_delta.schema.customer'
        scheduling_policy: SNAPSHOT
        primary_key_columns:
          - c_custkey
        create_database_objects_if_missing: true
        new_pipeline_spec:
          storage_catalog: 'source_delta'
          storage_schema: 'schema'

  jobs:
    sync_pipeline_schedule_job:
      name: sync_pipeline_schedule_job
      description: 'Job to schedule synced database table pipeline.'
      tasks:
        - task_key: synced-table-pipeline
          pipeline_task:
            pipeline_id: ${resources.synced_database_tables.my_synced_table.data_synchronization_status.pipeline_id}
      schedule:
        quartz_cron_expression: '0 0 0 * * ?'

wolumin (Unity Catalog)

Type: Map

Woluminy są obsługiwane w języku Python dla pakietów zasobów usługi Databricks. Zobacz databricks.bundles.volumes.

Typ zasobu woluminu umożliwia definiowanie i tworzenie woluminów w Unity Catalog jako część pakietu. Podczas wdrażania pakietu z zdefiniowanym woluminem należy pamiętać, że:

  • Nie można odwołać się do woluminu w artifact_path dla pakietu, dopóki nie będzie on istniał w obszarze roboczym. W związku z tym, jeśli chcesz użyć pakietów zasobów usługi Databricks do utworzenia woluminu, musisz najpierw zdefiniować wolumin w pakiecie, wdrożyć go w celu utworzenia woluminu, a następnie odwołać się do niego w artifact_path w kolejnych wdrożeniach.
  • Woluminy w pakiecie nie są poprzedzone prefiksem dev_${workspace.current_user.short_name}, jeśli cel wdrożenia ma skonfigurowany mode: development. Można jednak ręcznie skonfigurować ten prefiks. Zobacz Niestandardowe ustawienia wstępne.
volumes:
  <volume-name>:
    <volume-field-name>: <volume-field-value>
Key Typ Description
catalog_name String Nazwa katalogu schematu i woluminu.
comment String Komentarz dołączony do woluminu.
grants Sequence Granty skojarzone z objętością. Zobacz przyznanie.
lifecycle Map Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia. Zobacz cykl życia.
name String Nazwa woluminu.
schema_name String Nazwa schematu, w którym znajduje się wolumin.
storage_location String Lokalizacja magazynu w chmurze.
volume_type String Typ woluminu lub EXTERNALMANAGED. Wolumin zewnętrzny znajduje się w określonej lokalizacji zewnętrznej. Wolumin zarządzany znajduje się w domyślnej lokalizacji określonej przez schemat nadrzędny lub wykaz nadrzędny lub magazyn metadanych. Zobacz Zarządzane i zewnętrzne woluminy.

Example

Poniższy przykład tworzy wolumin Unity Catalog o kluczu my_volume_id:

resources:
  volumes:
    my_volume_id:
      catalog_name: main
      name: my_volume
      schema_name: my_schema

Przykładowy pakiet uruchamiający zadanie, które zapisuje do pliku w woluminie Unity Catalog, można znaleźć w repozytorium GitHub bundle-examples.

Typowe obiekty

dotacja

Type: Map

Definiuje główną jednostkę oraz przywileje, które mają być jej przyznane. Aby uzyskać więcej informacji na temat uprawnień, zobacz Pokazywanie, przyznawanie i cofanie przywilejów.

Key Typ Description
principal String Nazwa głównego podmiotu, któremu zostaną przyznane uprawnienia. Może to być użytkownik, grupa lub jednostka usługi.
privileges Sequence Uprawnienia do przyznania określonemu podmiotowi. Prawidłowe wartości zależą od typu zasobu (na przykład SELECT, , MODIFY, CREATEUSAGE, READ_FILES, WRITE_FILES, EXECUTEALL_PRIVILEGES).

Example

W poniższym przykładzie zdefiniowano schemat Unity Catalog z grantami.

resources:
  schemas:
    my_schema:
      name: test-schema
      grants:
        - principal: users
          privileges:
            - SELECT
        - principal: my_team
          privileges:
            - CAN_MANAGE
      catalog_name: main

cykl życia

Type: Map

Zawiera ustawienia cyklu życia zasobu. Steruje zachowaniem zasobu podczas wdrażania lub zniszczenia.

Key Typ Description
prevent_destroy logiczny Ustawienie cyklu życia, aby zapobiec niszczeniu zasobu.