Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Unity Catalog automatycznie przechwytuje przepływ danych podczas wykonywania dla zapytań uruchamianych na platformie Azure Databricks. Możesz jednak mieć zadania uruchamiane poza usługą Azure Databricks (na przykład wstępny proces ETL lub końcowe procesy BI). Unity Catalog pozwala na dodawanie zewnętrznych metadanych pochodzenia, aby rozszerzyć ścieżkę danych usługi Azure Databricks, która jest automatycznie przechwytywana, dając pełny widok ścieżki danych w Unity Catalog. Jest to przydatne, gdy chcesz uchwycić, skąd pochodzą dane (na przykład z Salesforce lub MySQL), zanim zostaną zaimportowane do Unity Catalog, lub gdzie dane są wykorzystywane poza Unity Catalog (na przykład w Tableau lub Power BI).
Pochodzenie zewnętrzne można dodać na dwa sposoby:
- Ręcznie, za pomocą interfejsu użytkownika Catalog Explorer, interfejsów API External Metadata i External Lineage lub pakietu Databricks SDK for Python.
- Automatycznie, przy użyciu zarządzanych potoków importu danych Lakeflow Connect, które rejestrują pochodzenie danych z tabel źródłowych do tabel docelowych w Unity Catalog. Zobacz Śledzenie pochodzenia danych w zarządzanych potokach pozyskiwania danych.
Poniższy graf zależności przedstawia dwie tabele zewnętrzne w systemach MySQL i PostgreSQL, które zostały zaimportowane do Azure Databricks jako tabela zarządzana w katalogu Unity Catalog, z kolumnami przekształconymi w kolumnę release_date, a następnie wykorzystywana przez raport zewnętrzny.
Aby uzyskać ogólne informacje o śledzeniu pochodzenia danych w usłudze Azure Databricks, zobacz Śledzenie pochodzenia danych w Unity Catalog.
Wymagania
Aby dodać zewnętrzne dane pochodzenia w Unity Catalog, musisz mieć następujące uprawnienia, w zależności od określonego zadania.
- Aby utworzyć obiekt zabezpieczany zewnętrznych metadanych w Unity Catalog, musisz mieć uprawnienie
CREATE EXTERNAL METADATAw metastore. - Aby określić relacje pochodzenia między zewnętrznym obiektem metadanych a dowolnym innym obiektem katalogu Unity, musisz mieć
MODIFYuprawnienia do zewnętrznego obiektu metadanych. - Aby określić relację pochodzenia dla obiektu Unity Catalog, musisz mieć uprawnienia do odczytu na obiekcie (na przykład
SELECTna tabeli). - Aby określić relację pochodzenia upstream z obiektem Unity Catalog, musisz mieć uprawnienia do zapisu w tym obiekcie (na przykład
MODIFYw tabeli).
Dodawanie metadanych pochodzenia zewnętrznego
Aby dodać metadane pochodzenia zewnętrznego:
Utwórz obiekt zabezpieczalny zewnętrznych metadanych w Unity Catalog.
Ten obiekt reprezentuje jednostkę w systemie zewnętrznym, taką jak pulpit nawigacyjny w tableau.
Skonfiguruj relację pochodzenia danych między zewnętrznym obiektem metadanych a innym obiektem Unity Catalog, takim jak tabela, model, ścieżka lub inny obiekt metadanych zewnętrznych.
Po utworzeniu relacji pochodzenia obiekt metadanych zewnętrznych jest wyświetlany w widoku grafu pochodzenia.
Można tworzyć zewnętrzne obiekty metadanych i konfigurować relacje pochodzenia przy użyciu interfejsu użytkownika Eksploratora wykazu. Aby rozpocząć od istniejącego grafu pochodzenia, kliknij pozycję Utwórz pochodzenie zewnętrzne w prawym górnym rogu grafu. Możesz również rozpocząć od sekcji Dane zewnętrzne w Eksploratorze wykazu, zgodnie z opisem w poniższych sekcjach.
Tworzenie obiektu metadanych zewnętrznych
Możesz stworzyć zewnętrzny obiekt metadanych za pomocą Catalog Explorer, zewnętrznego API metadanych lub Databricks SDK dla Pythona.
Aby użyć Eksploratora wykazu do utworzenia zewnętrznego obiektu metadanych:
W obszarze roboczym usługi Azure Databricks kliknij
Wykaz.
Kliknij przycisk Dane >zewnętrzne, przejdź do karty Metadane zewnętrzne i kliknij pozycję Utwórz metadane zewnętrzne.
Określ szczegóły metadanych.
Wymagane:
- Nazwa: Wprowadź zrozumiałą dla człowieka nazwę, która pomoże użytkownikom Azure Databricks zrozumieć, co widzą w widoku pochodzenia danych. Zewnętrzne obiekty metadanych są obiektami zabezpieczalnymi w usłudze Unity Catalog, więc nazwa musi być zgodna z regułami nazewnictwa obiektów w usłudze Unity Catalog. Zobacz Wymagania dotyczące nazewnictwa obiektów zabezpieczanych.
- Typ systemu: wybierz z listy typowych danych zewnętrznych i systemów analizy biznesowej. Jeśli nie znajdziesz swojej opcji, wybierz pozycję Niestandardowe.
- Typ jednostki: wprowadź typ obiektu, taki jak "tabela" lub "pulpit nawigacyjny".
Opcjonalnie:
- Adres URL: wprowadź adres URL obiektu, jeśli chcesz, aby osoby przeglądające wykresy pochodzenia mogły kliknąć, aby przejść do zewnętrznego zasobu (na przykład pulpitu nawigacyjnego Tableau).
- Opis
Zaawansowany:
- Kolumny: jeśli chcesz wykonać mapowanie na poziomie kolumn z tego obiektu zewnętrznego na inny obiekt katalogu Unity, wprowadź nazwy kolumn. Wybierz UI, aby wprowadzać je pojedynczo, lub pole tekstowe, aby wprowadzić listę rozdzielaną przecinkami w jednym polu tekstowym.
- Właściwości: jeśli istnieją inne właściwości, które chcesz śledzić w pochodzeniu, wprowadź je jako pary klucz-wartość JSON. Interfejs użytkownika umożliwia wprowadzanie każdej pary klucz-wartość lub wprowadzanie kompletnego obiektu JSON .
Kliknij pozycję Utwórz.
W oknie dialogowym można wyświetlić obiekt metadanych zewnętrznych lub utworzyć relacje pochodzenia dla obiektu.
Aby programowo stworzyć zewnętrzny obiekt metadanych, użyj Databricks SDK dla Python lub REST API. Poniższe przykłady tworzą zewnętrzny obiekt metadanych reprezentujący tabelę Salesforce.
Zestaw SDK dla języka Python
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.catalog import ExternalMetadata, SystemType
w = WorkspaceClient()
external_metadata = w.external_metadata.create_external_metadata(
external_metadata=ExternalMetadata(
name="salesforce_accounts",
system_type=SystemType.SALESFORCE,
entity_type="table",
url="https://my-org.salesforce.com/lightning/o/Account/list",
description="Salesforce Account records ingested into Databricks.",
)
)
Pełną listę parametrów można znaleźć w External Metadata API.
interfejs API REST
Zastąp <workspace-url> adresem URL obszaru roboczego. Ten przykład zakłada, że zmienna środowiskowa DATABRICKS_TOKEN jest ustawiona na osobisty token dostępu Databricks.
curl -X POST \
https://<workspace-url>/api/2.0/lineage-tracking/external-metadata \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "salesforce_accounts",
"system_type": "SALESFORCE",
"entity_type": "table",
"url": "https://my-org.salesforce.com/lightning/o/Account/list",
"description": "Salesforce Account records ingested into Databricks."
}'
Pełną listę pól żądań można znaleźć w API Zewnętrznych Metadanych.
Tworzenie relacji pochodzenia
Relacje pochodzenia można tworzyć przy użyciu Eksploratora katalogu, zewnętrznego interfejsu API linii pochodzenia lub Databricks SDK dla języka Python.
Aby dodać relacje między zewnętrznym obiektem metadanych a innymi obiektami Unity Catalog:
Postępuj zgodnie z powyższym monitem lub znajdź istniejący obiekt metadanych zewnętrznych w Eksploratorze wykazu:
- Kliknij
Katalog
- Kliknij przycisk Dane >zewnętrzne
- Przejdź do karty Metadane zewnętrzne i wybierz obiekt metadanych zewnętrznych.
- Kliknij
Kliknij pozycję Utwórz relację pochodzenia.
Wybierz, czy chcesz utworzyć relację nadrzędną, czy podrzędną.
Wprowadź typ obiektu , do którego chcesz utworzyć relację:
- Tabela: wybierz tabelę przy użyciu okna dialogowego wyszukiwania.
- Model: wybierz model przy użyciu okna dialogowego wyszukiwania, a następnie wybierz wersję modelu.
- Ścieżka: Dla woluminów lub lokalizacji zewnętrznych należy wprowadzić ścieżkę.
- Metadane zewnętrzne: wybierz obiekt metadanych zewnętrznych z menu rozwijanego.
(Opcjonalnie) Kliknij pozycję Zaawansowane , aby dodać:
- Mapowania kolumn między obiektem metadanych zewnętrznych a obiektem źródłowym lub docelowym.
- Inne metadane jako pary klucz-wartość JSON. Można na przykład użyć tych elementów, aby wprowadzić tekst zapytania, który utworzył tabelę na podstawie obiektu metadanych zewnętrznych lub adnotacji, które wyjaśniają zewnętrzny przepływ pracy, który wygenerował relację.
Kliknij pozycję Utwórz.
Teraz możesz zobaczyć relację pochodzenia zewnętrznego na karcie Pochodzenie powiązanych obiektów.
Aby programowo stworzyć relację liniową, użyj SDK Databricks dla Python lub API REST. Określ obiekty source i target , gdzie każdy obiekt to tabela Unity Catalog, ścieżka, wersja modelu lub zewnętrzny obiekt metadanych. Poniższe przykłady tworzą relację z tabeli Katalogu Unity do zewnętrznego obiektu salesforce_accounts metadanych, mapując kolumnę id tabeli na kolumnę external_id obiektu zewnętrznego.
Zestaw SDK dla języka Python
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.catalog import (
CreateRequestExternalLineage,
ExternalLineageObject,
ExternalLineageTable,
ExternalLineageExternalMetadata,
ColumnRelationship,
)
w = WorkspaceClient()
relationship = w.external_lineage.create_external_lineage_relationship(
external_lineage_relationship=CreateRequestExternalLineage(
source=ExternalLineageObject(
table=ExternalLineageTable(name="main.sales.accounts")
),
target=ExternalLineageObject(
external_metadata=ExternalLineageExternalMetadata(
name="salesforce_accounts"
)
),
columns=[ColumnRelationship(source="id", target="external_id")],
)
)
Pełną listę parametrów można znaleźć w External Lineage API.
interfejs API REST
Zastąp <workspace-url> adresem URL obszaru roboczego. Ten przykład zakłada, że zmienna środowiskowa DATABRICKS_TOKEN jest ustawiona na osobisty token dostępu Databricks.
curl -X POST \
https://<workspace-url>/api/2.0/lineage-tracking/external-lineage \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"source": { "table": { "name": "main.sales.accounts" } },
"target": { "external_metadata": { "name": "salesforce_accounts" } },
"columns": [{ "source": "id", "target": "external_id" }]
}'
Pełną listę pól żądań można znaleźć w External Lineage API.
Modelowanie relacji pochodzenia zewnętrznego
W przypadku ręcznego dodawania pochodzenia zewnętrznego użyj następujących wzorców, aby modelować bardziej złożone relacje:
- Połącz dwie tabele usługi Unity Catalog: Aby określić relację rodowodu danych między dwiema tabelami, które są zarejestrowane w usłudze Unity Catalog, utwórz zewnętrzny obiekt metadanych umieszczony między nimi. Określ jedną tabelę jako nadrzędną do obiektu metadanych zewnętrznych, a drugą jako podrzędną, tak aby były one wyświetlane na wykresie pochodzenia.
- Dodaj wiele poziomów pochodzenia: aby dodawać adnotacje do danych przechodzących przez wiele systemów przed wejściem Azure Databricks, utwórz wiele obiektów metadanych zewnętrznych i skonfiguruj relacje pochodzenia zewnętrznego między poszczególnymi z nich.
- Dodaj pochodzenie na poziomie kolumny: określ nazwy kolumn podczas tworzenia obiektu metadanych zewnętrznych, a następnie zamapuj kolumny źródłowe i docelowe podczas konfigurowania relacji pochodzenia.
Limitations
- Pochodzenie zewnętrzne nie jest rejestrowane w tabelach systemu pochodzenia (
system.access.table_lineageisystem.access.column_lineage). - Można utworzyć do 10 000 zewnętrznych obiektów metadanych i 100 000 zewnętrznych relacji pochodzenia w ramach jednego magazynu metadanych. Zobacz Limity zasobów.