Freigeben über


Abfrage aus dem SQL-Editor in Lakehouse

Von Bedeutung

Lakebase Autoscaling ist in Beta in den folgenden Regionen: eastus2, westeurope, westus.

Lakebase Autoscaling ist die neueste Version von Lakebase mit automatischer Berechnung, Skalierung bis Null, Verzweigung und sofortiger Wiederherstellung. Einen Featurevergleich mit Lakebase Provisioned finden Sie unter Auswahl zwischen Versionen.

Auf dieser Seite wird beschrieben, wie Sie Datenbanken in Ihrem Lakebase-Projekt aus dem SQL-Editor in Lakehouse mithilfe von zwei verschiedenen Verbindungsmethoden abfragen.

Der SQL-Editor in Lakehouse ist ein SQL-Arbeitsbereich für die Zusammenarbeit, in dem Sie Abfragen erstellen, Datenkataloge durchsuchen, Visualisierungen erstellen und Ergebnisse mit Kollegen teilen können. Es bietet erweiterte Features für Analysen, Zusammenarbeit und Automatisierung.

Hinweis

Verwenden Sie für Postgres-native Features, wie EXPLAIN/ANALYZE und Metabefehle (\dt, \d, \l), den Lakebase SQL-Editor. Siehe Abfrage aus lakebase SQL Editor.

Vollständige Informationen zu SQL-Editor-Funktionen finden Sie unter Schreiben von Abfragen und Untersuchen von Daten im SQL-Editor.

Verbindungsmethoden

Sie können eine Verbindung mit Ihrer Lakebase-Datenbank über den SQL-Editor mit zwei Methoden herstellen:

  1. Direkte Rechenressourcenverbindung: Stellen Sie eine direkte Verbindung mit Ihrer Lakebase-Rechenressource her, um unmittelbaren Abfragezugriff auf ein bestimmtes Projekt und eine ausgewählte Verzweigung zu erhalten.
  2. Unity-Katalogregistrierung: Registrieren Sie Ihre Datenbank im Unity-Katalog, um Verbundabfragen, einheitliche Governance und quellübergreifende Analysen zu ermöglichen.

Wählen Sie Ihre Verbindungsmethode aus.

Merkmal Direkte Rechnerverbindung Unity-Katalogregistrierung
Datenzugriff Vollständiger Lese-/Schreibzugriff auf Ihre Lakebase-Datenbank Schreibgeschützter Zugriff über den Unity-Katalog
Am besten geeignet für Arbeiten in erster Linie mit Lakebase-Daten, ohne sie mit anderen Datenquellen zu kombinieren Kombinieren von Lakebase-Daten mit anderen Unity-Katalogtabellen in Verbundabfragen
Einrichtungskomplexität Sofortiger Zugriff zum Abfragen einer bestimmten Datenbank ohne Registrierung Erfordert Katalogregistrierung und Unity-Katalogberechtigungen
Governance Keine Governance-Funktionen des Unity-Katalogs Einheitliche Governance-Steuerelemente (Berechtigungen, Linien, Überwachungsprotokolle)
Zugriffskontrolle Nur rollenbasierte Berechtigungen für Postgres Zentrale Ermittlungs- und Zugriffssteuerung über mehrere Datenquellen hinweg
Anwendungsfälle Direkte Datenbankvorgänge und Änderungen Dashboards und Anwendungen, die Transaktions- und Analysedaten integrieren

Methode 1: Direkte Verbindung mit Lakebase Compute herstellen

Verwenden Sie diese Methode, um eine direkte Verbindung mit Ihrem Lakebase-Compute herzustellen, um sofortigen Abfragezugriff zu erhalten.

Bevor Sie anfangen

Wenn Sie nicht der Projektbesitzer sind, stellen Sie sicher, dass Sie Folgendes haben:

  • Postgres-Rolle: Eine entsprechende Postgres-Rolle für den Zugriff auf die Datenbank. Siehe Verwalten von Postgres-Rollen.
  • Datenbankberechtigungen: Die erforderlichen Berechtigungen für den Zugriff auf die Datenbank, das Schema oder die Tabelle. Siehe "Berechtigungen verwalten".

Wenn Sie die erforderliche Rolle oder Berechtigungen nicht benötigen, wenden Sie sich an den Projektbesitzer, um den Zugriff anzufordern.

Hinweis

Die Lakebase-Instanz muss sich in einem aktiven Zustand befinden, um angebunden zu werden. Wenn der Rechner im Leerlauf ist, können Sie keine Verbindung herstellen. Berechnet wird in der Regel inaktiv, wenn die Skalierung auf Null aktiviert ist und keine Datenbankaktivität vorhanden ist.

Um eine Leerlaufberechnung zu aktivieren, führen Sie eine Abfrage im Lakebase SQL-Editor aus, oder deaktivieren Sie die Skalierung auf Null, um sicherzustellen, dass die Berechnung aktiv bleibt. Siehe Skalierung auf Null.

So stellen Sie eine direkte Verbindung mit Ihrer Lakebase-Berechnung her:

  1. Verwenden Sie den App-Switcher, um zu Lakehouse zu navigieren.
  2. Öffnen Sie den SQL-Editor, indem Sie auf der Randleiste auf den SQL Editor-Symbol-SQL-Editor klicken.
  3. Wählen Sie im Dropdownmenü "Verbinden " die Option "Weitere" aus...

Verbindungsmenü

  1. Wählen Sie im Dialogfeld "Anfügen an eine vorhandene Computeressource " die Option "Lakebase Postgres" aus, wählen Sie die Option "Automatische Skalierung " und dann Ihr Projekt und Ihren Zweig aus.

An LKB-Projekt und -Zweig anbinden

  1. Klicken Sie auf "Anfügen" , um eine Verbindung herzustellen.

Beispielabfragen mit direkter Verbindung

Nach dem Herstellen einer Verbindung können Sie standardmäßige Sql-Abfragen von Postgres für Ihre Lakebase-Datenbank ausführen.

Erstellen Sie eine Tabelle, fügen Sie Daten ein, und fragen Sie sie ab:

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;

Abfragen einer bestimmten Tabelle:

SELECT * FROM public.playing_with_lakebase;

Von Bedeutung

Einschränkungen bei direkter Verbindung:

  • Verbundabfragen werden nicht unterstützt: Sie können nur das verbundene Lakebase-Projekt und die Verbundene Lakebase-Verzweigung abfragen. Sie können Lakebase-Daten nicht mit anderen Unity-Katalogtabellen in einer einzigen Abfrage kombinieren.
  • Postgres-Metabefehle werden nicht unterstützt: Die Metabefehle von Postgres (wie \dt, , \d), \ldie im SQL-Editor von Lakebase funktionieren, funktionieren nicht im SQL-Editor (Lakehouse).

Methode 2: Registrieren der Datenbank im Unity-Katalog

Verwenden Sie diese Methode, um Ihre Lakebase-Datenbank im Unity-Katalog zu registrieren und Verbundabfragen und einheitliche Governance in Ihren Datenquellen zu ermöglichen.

Bevor Sie anfangen

Überprüfen Sie, ob Folgendes vorhanden ist:

  • Postgres-Rolle: Eine entsprechende Postgres-Rolle für den Zugriff auf die Datenbank. Siehe Verwalten von Postgres-Rollen.
  • Datenbankberechtigungen: Die erforderlichen Berechtigungen für den Zugriff auf die Datenbank, das Schema oder die Tabelle. Siehe "Berechtigungen verwalten".
  • Unity-Katalogberechtigungen: CREATE CATALOG Berechtigungen für den Unity-Katalog-Metastore zum Registrieren der Datenbank
  • SQL Warehouse: Ein serverloses SQL-Warehouse zum Abfragen des registrierten Katalogs

Wenn Sie die erforderliche Rolle oder Berechtigungen nicht benötigen, wenden Sie sich an den Projektbesitzer, um den Zugriff anzufordern.

Registrieren Sie Ihre Datenbank

So registrieren Sie eine Lakebase-Datenbank im Unity-Katalog:

  1. Verwenden Sie den App-Switcher, um zu Lakehouse zu navigieren.
  2. Klicken Sie im Katalog-Explorer auf das Plussymbol, und erstellen Sie einen Katalog.
  3. Geben Sie einen Katalognamen ein (z. B lakebase_catalog. ).
  4. Wählen Sie Lakebase Postgres als Katalogtyp aus, und wählen Sie dann die Option "Automatische Skalierung " aus.
  5. Wählen Sie Ihr Projekt, Ihre Verzweigung und Ihre Postgres-Datenbank aus.
  6. Klicken Sie auf "Erstellen".

Der Katalog wird im Katalog-Explorer angezeigt, in dem Sie Schemas, Tabellen und Ansichten durchsuchen können.

Abfragen über den Unity-Katalog

Fragen Sie nach der Registrierung Ihre Lakebase-Datenbank mithilfe von SQL Warehouses oder einem beliebigen Tool ab, das eine Verbindung mit dem Unity-Katalog herstellt.

Abfrage einer registrierten Datenbank:

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

Kombinieren Sie Lakebase- und Lakehouse-Daten:

-- 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;

Informationen zu Unity-Katalogberechtigungen und zum Gewähren des Zugriffs auf andere Benutzer finden Sie unter Berechtigungen und Zugriffssteuerung.

Von Bedeutung

Einschränkungen bei der Registrierung des Unity-Katalogs:

  • Schreibgeschützter Zugriff: Über den Unity-Katalog sind die aus Lakebase-Datenbanken registrierten Kataloge schreibgeschützt zugänglich. Verwenden Sie zum Ändern von Daten den SQL-Editor von Lakebase, oder stellen Sie eine direkte Verbindung mit Ihrer Datenbank her.
  • Einzelne Datenbank pro Katalog: Jeder Unity-Katalog stellt eine Lakebase-Datenbank dar. Um mehrere Datenbanken verfügbar zu machen, registrieren Sie die einzelnen Datenbanken separat.
  • Metadatensynchronisierung: Unity-Katalog speichert Metadaten zwischen, um Postgres-Anforderungen zu reduzieren. Neue Objekte werden möglicherweise nicht sofort angezeigt. Klicken Sie auf aktualisieren", um eine vollständige Aktualisierung auszulösen.

Vollständige Informationen zum Registrieren von Datenbanken im Unity-Katalog finden Sie unter Registrieren einer Lakebase-Datenbank im Unity-Katalog.

Nächste Schritte