Udostępnij przez


Zapytanie z edytora SQL w Lakehouse

Ważne

Skalowanie automatyczne bazy danych Lakebase znajduje się w wersji beta w następujących regionach: eastus2, westeurope, westus.

Autoskalowanie bazy danych Lakebase to najnowsza wersja bazy danych Lakebase z automatycznym skalowaniem obliczeniowym, skalowaniem do zera, rozgałęzianiem i natychmiastowym przywracaniem. Aby zapoznać się z porównaniem funkcji z Lakebase Provisioned, sprawdź wybieranie między wersjami.

Na tej stronie opisano sposób wykonywania zapytań dotyczących baz danych w projekcie Lakebase z poziomu edytora SQL w usłudze Lakehouse przy użyciu dwóch różnych metod połączenia.

Edytor SQL w usłudze Lakehouse to wspólny obszar roboczy SQL, w którym można tworzyć zapytania, przeglądać wykazy danych, tworzyć wizualizacje i udostępniać wyniki współpracownikom. Udostępnia zaawansowane funkcje analizy, współpracy i automatyzacji.

Uwaga / Notatka

W przypadku funkcji natywnych Postgres, takich jak EXPLAIN/ANALYZE i meta-polecenia (\dt, \d, \l), użyj edytora Lakebase SQL. Zobacz Zapytanie z edytora SQL Lakebase.

Aby uzyskać pełne informacje na temat możliwości edytora SQL, zobacz Pisanie zapytań i eksplorowanie danych w edytorze SQL.

Metody połączenia

Możesz nawiązać połączenie z bazą danych Lakebase z poziomu edytora SQL przy użyciu dwóch metod:

  1. Bezpośrednie połączenie obliczeniowe: połącz się bezpośrednio z obliczeniami usługi Lakebase, aby uzyskać natychmiastowy dostęp zapytań do określonego projektu i gałęzi.
  2. Rejestracja katalogu Unity: Zarejestruj swoją bazę danych w katalogu Unity, aby umożliwić wykonywanie zapytań federacyjnych, ujednolicone zarządzanie i analizę wieloźródłową.

Wybierz metodę połączenia

Funkcja Bezpośrednie połączenie obliczeniowe Rejestracja katalogu Unity
Dostęp do danych Pełny dostęp do odczytu i zapisu w bazie danych Lakebase Dostęp tylko do odczytu przez Unity Catalog
Najlepsze dla Praca przede wszystkim z danymi lakebase bez łączenia ich z innymi źródłami danych Łączenie danych usługi Lakebase z innymi tabelami Unity Catalog w zapytaniach federacyjnych
Złożoność instalacji Natychmiastowy dostęp do zapytania o określoną bazę danych bez rejestracji Wymaga rejestracji w katalogu i uprawnień Unity Catalog.
Rządzenie Brak funkcji zarządzania katalogiem Unity Ujednolicone mechanizmy kontroli zarządzania (uprawnienia, dane źródłowe, dzienniki inspekcji)
Kontrola dostępu Tylko uprawnienia oparte na rolach w Postgres Scentralizowane odnajdywanie i kontrola dostępu w wielu źródłach danych
Przypadki użycia Bezpośrednie operacje i modyfikacje bazy danych Pulpity nawigacyjne i aplikacje integrujące dane transakcyjne i analityczne

Metoda 1. Nawiązywanie połączenia bezpośrednio z usługą Obliczeniową Lakebase

Użyj tej metody, aby połączyć się bezpośrednio z obliczeniami usługi Lakebase w celu uzyskania bezpośredniego dostępu do zapytań.

Zanim rozpoczniesz

Jeśli nie jesteś właścicielem projektu, sprawdź, czy masz:

Jeśli nie masz niezbędnej roli lub uprawnień, skontaktuj się z właścicielem projektu, aby zażądać dostępu.

Uwaga / Notatka

Aby można było do niego dołączyć, zasoby obliczeniowe Lakebase muszą być w stanie aktywnym. Jeśli środowisko obliczeniowe jest bezczynne, nie można dołączyć. Obliczenia zwykle stają się nieaktywne, gdy skalowanie do zera jest włączone i nie ma aktywności bazy danych.

Aby aktywować bezczynne zasoby obliczeniowe, uruchom zapytanie w edytorze SQL Lakebase lub wyłącz skalowanie do zera, aby upewnić się, że obliczenia pozostają aktywne. Zobacz Skalowanie do zera.

Aby nawiązać bezpośrednie połączenie z obliczeniami usługi Lakebase:

  1. Użyj przełącznika aplikacji, aby przejść do Lakehouse.
  2. Otwórz edytor SQL, klikając pozycję Edytor SQL IconSQL Editor na pasku bocznym.
  3. Z menu rozwijanego Połącz wybierz pozycję Więcej...

Menu Połącz

  1. W oknie dialogowym Dołączanie do istniejącego zasobu obliczeniowego wybierz pozycję Lakebase Postgres, wybierz opcję Skalowanie automatyczne , a następnie wybierz projekt igałąź.

Dołącz do projektu i gałęzi LKB

  1. Kliknij przycisk Dołącz , aby nawiązać połączenie.

Przykładowe zapytania z połączeniem bezpośrednim

Po nawiązaniu połączenia można uruchamiać standardowe zapytania Sql Postgres względem bazy danych Lakebase.

Utwórz tabelę, wstaw dane i wykonaj zapytanie:

CREATE TABLE IF NOT EXISTS playing_with_lakebase(id SERIAL PRIMARY KEY, name TEXT NOT NULL, value REAL);
INSERT INTO playing_with_lakebase(name, value)
SELECT LEFT(md5(i::TEXT), 10), random() FROM generate_series(1, 10) s(i);
SELECT * FROM playing_with_lakebase;

Wykonywanie zapytań względem określonej tabeli:

SELECT * FROM public.playing_with_lakebase;

Ważne

Ograniczenia dotyczące bezpośredniego połączenia:

  • Zapytania federacyjne nie są obsługiwane: możesz wykonywać zapytania tylko względem połączonego projektu i gałęzi usługi Lakebase. Nie można połączyć danych Lakebase z innymi tabelami Unity Catalog w jednym zapytaniu.
  • Meta-polecenia bazy danych Postgres nie są obsługiwane: meta-polecenia bazy danych Postgres (na przykład \dt, \d\l), które działają w edytorze SQL Lakebase, nie działają w edytorze SQL (Lakehouse).

Metoda 2: Rejestrowanie bazy danych w katalogu Unity

Użyj tej metody, aby zarejestrować bazę danych Lakebase w Unity Catalog, umożliwiając zapytania federacyjne i ujednolicone zarządzanie w twoich źródłach danych.

Zanim rozpoczniesz

Sprawdź, czy masz:

  • Rola Postgres: odpowiadająca rola Postgres do dostępu do bazy danych. Zobacz Zarządzanie rolami postgresu.
  • Uprawnienia bazy danych: niezbędne uprawnienia dostępu do bazy danych, schematu lub tabeli. Zobacz Zarządzanie uprawnieniami.
  • Uprawnienia katalogu Unity: CREATE CATALOG uprawnienia do metastore katalogu Unity w celu rejestracji bazy danych
  • SQL Warehouse: bezserwerowa usługa SQL Warehouse do wykonywania zapytań względem zarejestrowanego wykazu

Jeśli nie masz niezbędnej roli lub uprawnień, skontaktuj się z właścicielem projektu, aby zażądać dostępu.

Rejestrowanie bazy danych

Aby zarejestrować bazę danych Lakebase w Unity Catalog:

  1. Użyj przełącznika aplikacji, aby przejść do Lakehouse.
  2. W Eksploratorze wykazu kliknij ikonę znaku plus i utwórz wykaz.
  3. Wprowadź nazwę katalogu (na przykład lakebase_catalog).
  4. Wybierz pozycję Lakebase Postgres jako typ wykazu, a następnie wybierz opcję Skalowanie automatyczne .
  5. Wybierz projekt, gałąź i bazę danych Postgres.
  6. Kliknij pozycję Utwórz.

Wykaz jest wyświetlany w Eksploratorze wykazu, w którym można przeglądać schematy, tabele i widoki.

Wykonywanie zapytań przez Unity Catalog

Po rejestracji zapytaj do bazy danych Lakebase przy użyciu hurtowni SQL lub dowolnego narzędzia łączącego się z Unity Catalog.

Wykonywanie zapytań względem zarejestrowanej bazy danych:

-- Query a registered :re[LKB] database
SELECT * FROM chatbot_catalog.public.conversations
WHERE created_at >= current_date - INTERVAL 7 DAYS;

Połącz dane Lakebase i Lakehouse:

-- Join :re[LKB] and Unity Catalog data
SELECT
  c.conversation_id,
  c.user_id,
  c.agent_response,
  u.user_name,
  u.subscription_tier
FROM chatbot_catalog.public.conversations c
JOIN main.user_analytics.users u
  ON c.user_id = u.user_id;

Aby uzyskać informacje o uprawnieniach Unity Catalog i udzielaniu dostępu innym użytkownikom, zobacz Uprawnienia i kontrola dostępu.

Ważne

Ograniczenia dotyczące rejestracji Unity Catalog:

  • Dostęp tylko do odczytu: Katalogi zarejestrowane w bazach danych Lakebase są dostępne tylko do odczytu za pośrednictwem katalogu Unity. Aby zmodyfikować dane, użyj edytora SQL lakebase lub połącz się bezpośrednio z bazą danych.
  • Pojedyncza baza danych na katalog: każdy katalog Unity Catalog reprezentuje jedną bazę danych Lakebase. Aby uwidocznić wiele baz danych, zarejestruj je osobno.
  • Synchronizacja metadanych: usługa Unity Catalog buforuje metadane w celu zmniejszenia liczby żądań Postgres. Nowe obiekty mogą nie pojawiać się natychmiast. Kliknij pozycję Odśwież ikonę schematu , aby wyzwolić pełne odświeżanie.

Aby uzyskać pełne informacje na temat rejestrowania baz danych w katalogu Unity, zobacz Rejestrowanie bazy danych Lakebase w katalogu Unity.

Dalsze kroki