Lakehouse-Laufzeitkatalog

Der Lakehouse-Laufzeitkatalog ist ein vollständig verwalteter, serverloser Dienst, der eine einzige zuverlässige Informationsquelle für Ihr Data Lakehouse bietet. So können mehrere Engines, darunter Apache Spark, Apache Flink und BigQuery, Tabellen und Metadaten gemeinsam nutzen, ohne Dateien zu kopieren.

Der Lakehouse-Laufzeitkatalog unterstützt die Delegierung des Speicherzugriffs (Bereitstellung von Anmeldedaten), was die Sicherheit verbessert, da kein direkter Zugriff auf Cloud Storage-Bucket erforderlich ist. Außerdem ist Knowledge Catalog für einheitliche Governance, Lineage und Datenqualität eingebunden.

Hauptfunktionen

Als Komponente von Lakehouse for Apache Iceberg bietet der Lakehouse-Laufzeitkatalog mehrere Vorteile für die Datenverwaltung und -analyse, darunter eine serverlose Architektur, Engine-Interoperabilität mit offenen APIs, eine einheitliche Benutzeroberfläche und leistungsstarke Analysen, Streaming und KI bei Verwendung mit BigQuery. Weitere Informationen zu diesen Vorteilen finden Sie unter Was ist ein Lakehouse?

Unterstützte Engines

Der Lakehouse-Laufzeitkatalog ist mit mehreren Abfrage-Engines kompatibel, darunter Apache Spark, Apache Flink und Trino. In der folgenden Tabelle finden Sie Links zur Dokumentation für die einzelnen Engines:

Engine Dokumentation
Apache Spark Kurzanleitung: Mit Spark verwenden
Apache Flink Mit Apache Flink verwenden
Trino Mit Trino verwenden

Optionen für die Endpunktkonfiguration

Der Lakehouse-Laufzeitkatalog kann auf zwei Arten konfiguriert werden: mit dem Apache Iceberg REST-Katalog-Endpunkt oder dem benutzerdefinierten Apache Iceberg-Katalog für BigQuery-Endpunkt. Die beste Option hängt von Ihrem Anwendungsfall ab, wie in der folgenden Tabelle dargestellt:

Anwendungsfall Empfehlung
Neue Nutzer des Lakehouse-Laufzeitkatalogs, die mit ihrer Open-Source-Engine auf Daten in Cloud Storage zugreifen möchten und Interoperabilität mit anderen Engines benötigen, einschließlich BigQuery und AlloyDB for PostgreSQL. Verwenden Sie den Apache Iceberg REST-Katalogendpunkt.
Vorhandene Nutzer des Lakehouse-Laufzeitkatalogs, die aktuelle Tabellen mit dem benutzerdefinierten Apache Iceberg-Katalog für den BigQuery-Endpunkt erstellt haben. Verwenden Sie weiterhin den benutzerdefinierten Apache Iceberg-Katalog für den BigQuery-Endpunkt, aber verwenden Sie den Apache Iceberg-REST-Katalog für neue Workflows. Tabellen, die mit dem benutzerdefinierten Apache Iceberg-Katalog für den BigQuery-Endpunkt erstellt wurden, sind über die BigQuery-Katalogföderation mit dem Apache Iceberg REST-Katalogendpunkt sichtbar.

Unterschiede zum klassischen BigLake-Metastore

Die wichtigsten Unterschiede zwischen dem Lakehouse-Laufzeitkatalog und dem BigLake-Metastore (klassisch) sind:

  • Der Lakehouse-Laufzeitkatalog unterstützt eine direkte Integration mit Open-Source-Engines wie Spark. So lässt sich Redundanz beim Speichern von Metadaten und Ausführen von Jobs vermeiden. Auf Tabellen im Lakehouse-Laufzeitkatalog kann direkt über mehrere Open-Source-Engines und BigQuery zugegriffen werden.
  • Der Lakehouse-Laufzeitkatalog unterstützt den Apache Iceberg-REST-Katalogendpunkt, der klassische BigLake Metastore jedoch nicht.

Einschränkungen des Lakehouse-Laufzeitkatalogs

Für Tabellen im Lakehouse-Laufzeitkatalog gelten die folgenden Einschränkungen:

Tabellenverwaltung

  • Sie können Tabellen mit dem Apache Iceberg REST-Katalogendpunkt nicht mit DDL-Anweisungen (Datendefinitionssprache) oder DML-Anweisungen (Datenbearbeitungssprache) von BigQuery erstellen oder ändern. Sie können diese Tabellen mit der BigQuery API (mit dem bq-Befehlszeilentool oder Clientbibliotheken) ändern. Dabei besteht jedoch das Risiko, dass Sie Änderungen vornehmen, die mit der externen Engine nicht kompatibel sind.
  • Tabellen im Lakehouse-Laufzeitkatalog unterstützen keine Umbenennungsvorgänge oder die Spark SQL-Anweisung ALTER TABLE ... RENAME TO.
  • Tabellen im Lakehouse-Laufzeitkatalog unterstützen kein Clustering.
  • Tabellen im Lakehouse-Laufzeitkatalog unterstützen keine flexiblen Spaltennamen.
  • Der Lakehouse-Laufzeitkatalog unterstützt keine Apache Iceberg-Ansichten.

Abfragen

  • Die Abfrageleistung für Tabellen im Lakehouse-Laufzeitkatalog über die BigQuery-Engine ist mitunter geringer als bei der Abfrage von Daten in BigQuery-Standardtabellen. Im Allgemeinen sollte die Abfragegeschwindigkeit der Geschwindigkeit beim Lesen von Daten aus Cloud Storage entsprechen.
  • Ein BigQuery-Probelauf einer Abfrage, die eine Tabelle im Lakehouse-Laufzeitkatalog verwendet, kann eine Untergrenze von 0 Byte an Daten melden, auch wenn Zeilen zurückgegeben werden. Dieses Ergebnis tritt auf, weil die Datenmenge, die aus der Tabelle verarbeitet wird, erst nach Ausführung der vollständigen Abfrage bestimmt werden kann. Für die Ausführung der Abfrage fallen weiterhin Kosten für die Verarbeitung dieser Daten an.
  • Sie können in einer Abfrage mit einer Platzhaltertabelle nicht auf eine Tabelle im Lakehouse-Laufzeitkatalog verweisen.

API und Metadaten

  • Sie können die tabledata.list-Methode nicht verwenden, um Daten aus Tabellen im Lakehouse-Laufzeitkatalog abzurufen. Stattdessen können Sie Abfrageergebnisse in einer BigQuery-Tabelle speichern und dann die Methode tabledata.list für diese Tabelle verwenden.
  • Die Anzeige von Tabellenspeicherstatistiken für Tabellen im Lakehouse-Laufzeitkatalog wird nicht unterstützt.

Kontingente und Limits

  • Für Tabellen im Lakehouse-Laufzeitkatalog in BigQuery gelten dieselben Kontingente und Limits wie für Standardtabellen.

Nächste Schritte