Udostępnij za pośrednictwem


Uruchamianie zapytań federacyjnych w usłudze Teradata

Ważny

Ta funkcja jest dostępna w publicznej wersji zapoznawczej.

W tym artykule opisano sposób set federacji usługi Lakehouse w celu uruchamiania zapytań federacyjnych na danych teradata, które nie są zarządzane przez usługę Azure Databricks. Aby dowiedzieć się więcej o federacji Lakehouse, zobacz Co to jest Federacja Lakehouse?.

Aby nawiązać połączenie z bazą danych Teradata przy użyciu usługi Lakehouse Federation, należy utworzyć następujące elementy w magazynie metadanych usługi Azure Databricks Unity Catalog:

  • Połączenie z bazą danych Teradata.
  • obcy catalog, który odzwierciedla twoją bazę danych Teradata w Unity Catalog, dzięki czemu możesz używać składni zapytań Unity Catalog oraz narzędzi do zarządzania danymi, aby kontrolować dostęp użytkowników Azure Databricks do bazy danych.

Przed rozpoczęciem

Przed rozpoczęciem upewnij się, że spełniasz wymagania w tej sekcji.

Wymagania dotyczące usługi Databricks

Wymagania dotyczące obszaru roboczego:

  • Obszar roboczy jest włączony dla środowiska Unity Catalog.

Wymagania dotyczące obliczeń:

  • Połączenie sieciowe z Twojego zasobu obliczeniowego do docelowych systemów baz danych. Zobacz zalecenia dotyczące sieci dla Lakehouse Federation.
  • Środowisko obliczeniowe usługi Azure Databricks musi używać środowiska Databricks Runtime 16.1 lub wyższej i trybu dostępu współdzielonego lub trybu dostępu dla jednego użytkownika .
  • Magazyny SQL muszą być w wersji pro lub bezserwerowej i muszą używać wersji 2024.55 lub nowszej.

Wymagane uprawnienia:

  • Aby utworzyć połączenie, musisz być administratorem magazynu metadanych lub użytkownikiem z uprawnieniami CREATE CONNECTION w magazynie metadanych Catalog dołączonym do obszaru roboczego.
  • Aby utworzyć zagraniczne catalog, musisz mieć uprawnienie CREATE CATALOG do magazynu metadanych i być właścicielem połączenia lub mieć uprawnienia CREATE FOREIGN CATALOG do połączenia.

Dodatkowe wymagania dotyczące uprawnień są określone w każdej sekcji dotyczącej poszczególnych zadań.

Wymagania dotyczące Teradata

Tworzenie połączenia usługi Azure Databricks

Połączenie określa ścieżkę i credentials na potrzeby uzyskiwania dostępu do zewnętrznego systemu bazy danych. Aby utworzyć połączenie, możesz użyć eksploratora Catalog lub polecenia CREATE CONNECTION SQL w notesie usługi Azure Databricks lub edytorze zapytań SQL usługi Databricks.

Notatka

Do utworzenia połączenia można również użyć interfejsu API REST usługi Databricks lub interfejsu wiersza polecenia usługi Databricks. Zobacz POST /api/2.1/unity-catalog/connections i polecenia Unity Catalog.

Wymagane uprawnienia: administrator magazynu metadanych lub użytkownik z uprawnieniami CREATE CONNECTION.

Eksplorator Catalog

  1. W obszarze roboczym usługi Azure Databricks kliknij ikonę CatalogCatalog.

  2. W górnej części okienka Catalog kliknij ikonę Dodaj lub plusIkona Dodaj i selectDodaj połączenie z menu.

    Alternatywnie na stronie szybki dostęp kliknij przycisk Zewnętrzne dane , przejdź do karty , a następnie kliknij pozycję Utwórz połączenie.

  3. Na stronie Podstawowe informacje o połączeniu w kreatorze połączenia Set wprowadź łatwą do zapamiętania nazwę połączenia .

  4. Select Teradatatyp połączenia.

  5. (Opcjonalnie) Dodaj komentarz.

  6. Kliknij przycisk Dalej.

  7. Na stronie Authentication wprowadź następujące właściwości połączenia dla wystąpienia Teradata:

    • host: na przykład teradata-demo.teradata.com
    • port: na przykład 1025
    • użytkownik: na przykład teradata_user
    • hasło: na przykład password123
  8. Kliknij pozycję Utwórz połączenie.

  9. Na stronie Catalog podstawowe wprowadź nazwę obcego catalog. Zagraniczny catalog dubluje bazę danych w zewnętrznym systemie danych, dzięki czemu można wykonywać zapytania dotyczące dostępu do danych w tej bazie danych i zarządzać nimi przy użyciu usług Azure Databricks i Unity Catalog.

  10. (Opcjonalnie) Kliknij pozycję Testuj połączenie, aby potwierdzić, że działa.

  11. Kliknij przycisk Utwórz catalog.

  12. Na stronie Accessselect znajdziesz obszary robocze, w których użytkownicy mogą uzyskiwać dostęp do elementów, które utworzyłeś catalog. Możesz selectdać dostęp do wszystkich obszarów roboczychlub kliknij Przypisz do obszarów roboczych, select wybrane obszary robocze, a następnie kliknij Przypisz.

  13. Zmień właściciela, który będzie mógł zarządzać dostępem do wszystkich obiektów w catalog. Zacznij wpisywać nazwę podmiotu w polu tekstowym, a następnie kliknij podmiot w zwróconych wynikach.

  14. Grant uprawnienia w catalog. Kliknij Grant:

    1. Określ Principals, którzy będą mieli dostęp do obiektów w catalog. Zacznij wpisywać nazwę podmiotu w polu tekstowym, a następnie kliknij podmiot w zwróconych wynikach.
    2. Select ustawienia wstępne przywilejów do grant do każdego podmiotu. Wszyscy użytkownicy konta domyślnie otrzymują BROWSE.
      • Select czytnik danych z menu rozwijanego, aby grantread uprawnienia do obiektów w catalog.
      • Select Wybierz Edytor danych z menu rozwijanego, aby grantread oraz modify zmienić uprawnienia do obiektów w catalog.
      • Ręcznie select uprawnienia do grant.
    3. Kliknij Grant.
  15. Kliknij przycisk Dalej.

  16. Na stronie Metadane określ pary klucz-wartość tagów. Aby uzyskać więcej informacji, zobacz Zastosuj tagi do Unity Catalog zabezpieczanych obiektów.

  17. (Opcjonalnie) Dodaj komentarz.

  18. Kliknij Zapisz.

SQL

Uruchom następujące polecenie w notesie lub edytorze zapytań SQL usługi Databricks:

CREATE CONNECTION <connection-name> TYPE teradata
OPTIONS (
  host '<hostname>',
  port '<port>',
  user '<user>',
  password '<password>'
);

Usługa Databricks zaleca używanie tajemnic Azure Databricks zamiast zwykłych ciągów tekstowych dla informacji poufnych values, takich jak credentials. Na przykład:

CREATE CONNECTION <connection-name> TYPE teradata
OPTIONS (
  host '<hostname>',
  port '<port>',
  user secret ('<secret-scope>','<secret-key-user>'),
  password secret ('<secret-scope>','<secret-key-password>')
)

Jeśli musisz używać ciągów w postaci zwykłego tekstu w poleceniach SQL notesu, unikaj obcinania ciągu przez ucieczkę znaków specjalnych, takich jak $ z \. Na przykład: \$.

Aby uzyskać informacje na temat konfigurowania sekretów, zobacz Zarządzanie sekretami.

Stwórz catalog jako obcy

Notatka

Jeśli używasz interfejsu użytkownika do utworzenia połączenia ze źródłem danych, proces tworzenia obcego elementu catalog jest uwzględniony i możesz pominąć ten krok.

Zagraniczny catalog dubluje bazę danych w zewnętrznym systemie danych, dzięki czemu można wykonywać zapytania dotyczące dostępu do danych w tej bazie danych i zarządzać nimi przy użyciu usług Azure Databricks i Unity Catalog. Aby utworzyć obce catalog, należy użyć połączenia ze źródłem danych, które zostało już zdefiniowane.

Aby utworzyć obce catalog, możesz użyć eksploratora Catalog lub polecenia CREATE FOREIGN CATALOG SQL w notatniku usługi Azure Databricks lub edytorze zapytań SQL.

Możesz również użyć interfejsu API REST usługi Databricks lub interfejsu wiersza polecenia usługi Databricks, aby utworzyć catalog. Zobacz POST /api/2.1/unity-catalog/catalogs oraz polecenia Unity Catalog.

Wymagane uprawnienia:CREATE CATALOG uprawnienie do magazynu metadanych i własność połączenia lub uprawnienie CREATE FOREIGN CATALOG do połączenia.

Eksplorator Catalog

  1. W obszarze roboczym usługi Azure Databricks kliknij ikonę CatalogCatalog, aby otworzyć eksploratora Catalog.

  2. W górnej części okienka Catalog kliknij ikonę Dodaj lub plusIkona Dodaj i selectDodaj catalog z menu.

    Alternatywnie na stronie Szybki dostęp kliknij przycisk Catalogs, a następnie kliknij przycisk Utwórz catalog.

  3. Postępuj zgodnie z instrukcjami dotyczącymi tworzenia obcych catalogs w Create catalogs.

SQL

Uruchom następujące polecenie SQL w notesie lub edytorze zapytań SQL. Elementy w nawiasach są opcjonalne. Zastąp symbol zastępczy values:

  • <catalog-name>: nazwa catalog w usłudze Azure Databricks.
  • <connection-name>: obiekt połączenia określający źródło danych, ścieżkę i dostęp credentials.
  • <database-name>: nazwa bazy danych, którą chcesz dublować jako catalog w usłudze Azure Databricks.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS (database '<database-name>');

Obsługiwane wypychania

Obsługiwane są następujące wypychania:

  • Filtry
  • Prognozy
  • Limit
  • Agregatów
  • Obsada
  • Zawiera, Rozpoczyna się od, Kończy się na, Jak

Mapowania typów danych

Gdy czytasz dane z Teradata do Spark, typy danych są mapowane w następujący sposób:

Typ teradata Typ Spark
Bajt, blob Typ binarny
Byteint, Smallint, Integer Typ liczby całkowitej
BigInt LongType
Zmiennoprzecinkowy, podwójny, podwójna precyzja DoubleType
Liczba(n, m) Typ dziesiętny
Number(, m), Number(), Number Nieobsługiwane
Varchar(N) StringType
Czas, sygnatura czasowa TypZnacznikaCzasu