Wichtige Konzepte

In diesem Dokument werden die wichtigsten Begriffe und Konzepte für Lakehouse for Apache Iceberg definiert.

Diese Seite ist keine vollständige Liste der Funktionen, sondern eine allgemeine Referenz für Begriffe und Konzepte, die in der gesamten Lakehouse-Dokumentation von Google Cloud verwendet werden.

Wichtige Konzepte

Die folgenden Konzepte bilden die Grundlage der Lakehouse-Architektur von Google Cloud.

Data Lakehouse

Ein Data Lakehouse vereint die Kosteneinsparungen und Flexibilität eines Data Lake mit der Datenverwaltung und Leistung eines Data Warehouse. Sie können Daten in offenen Formaten in Cloud Storage speichern und BigQuery-Funktionen wie präzise Sicherheitskontrollen und schnelle Abfragen verwenden.

Medaillon-Architektur

Ein gängiges Designmuster in einem Data Lakehouse ist die Medaillon-Architektur, bei der Daten logisch in progressive Ebenen mit Struktur und Qualität organisiert werden:

  • Bronze-Ebene (Rohdaten): Erfasst und speichert Rohdaten in offenen Formaten wie Apache Iceberg in Cloud Storage.
  • Silber-Ebene (bereinigte Daten): Bereinigt, filtert und erweitert die Rohdaten in standardisierte Tabellen.
  • Gold-Ebene (kuratierte Daten): Stellt vollständig kuratierte, aggregierte Tabellen auf Geschäftsebene bereit. Im Lakehouse von Google Cloud wird BigQuery häufig verwendet, um die Gold-Ebene für leistungsstarke Nutzung, Berichterstellung und Analysen bereitzustellen.

Offene Interoperabilität

Offene Interoperabilität bedeutet, dass mehrere Analyse- und Transaktionssysteme wie BigQuery, Apache Spark und Apache Flink mit einer einzigen Kopie von Daten in offenen Formaten wie Apache Iceberg arbeiten können. Dadurch ist keine Datenduplizierung erforderlich und es wird eine konsistente Ansicht der Daten in verschiedenen Tools gewährleistet.

Lakehouse-Laufzeitkatalog

Der Lakehouse-Laufzeitkatalog ist ein zentraler, serverloser Metadatendienst, der als einzige zuverlässige Informationsquelle für das Lakehouse von Google Cloud dient. Damit können mehrere Engines wie Apache Spark, Apache Flink und BigQuery gleichzeitig dieselben Tabellen ermitteln und abfragen.

Katalogtypen

Der Lakehouse-Laufzeitkatalog bietet verschiedene Arten von Katalogen zum Verwalten Ihrer Metadaten.

Apache Iceberg REST-Katalogendpunkt

Dies ist ein Katalog, der auf dem Apache Iceberg REST-Katalogendpunkt basiert. Er bietet Interoperabilität zwischen Open-Source-Engines und BigQuery und unterstützt Funktionen wie die Bereitstellung von Anmeldedaten und die Notfallwiederherstellung.

Benutzerdefinierter Apache Iceberg-Katalog für BigQuery

Dies ist eine Integration, bei der der BigQuery-Katalog direkt als unterstützender Metadatendienst für verwaltete Apache Iceberg-Tabellen verwendet wird.

Apache Hive-Katalogendpunkt

Dieser Endpunkt bietet Kompatibilität für Open-Source-Arbeitslasten, die von der Apache Hive-Metastore-Schnittstelle (HMS) abhängen. So können Sie Apache Hive- oder Spark-Arbeitslasten für einen vollständig verwalteten Metastore-Dienst in Google Cloudausführen.

Tabellentypen

Das Lakehouse von Google Cloud unterstützt je nach Engine, die zum Verwalten der Daten verwendet wird, und dem verwendeten Katalogendpunkt mehrere Tabellenformate.

Apache Iceberg-Tabellen

Dies sind Apache Iceberg-Tabellen, die Sie mit Open-Source-Engines erstellen und in Cloud Storage speichern. Der Lakehouse-Laufzeitkatalog verwaltet diese Tabellen über den Apache Iceberg REST-Katalogendpunkt. Open-Source-Engines haben Lese- und Schreibzugriff auf diese Tabellen, während BigQuery nur Lesezugriff hat. Diese Option ist am besten geeignet, wenn Ihr ETL-Workflow von Open-Source-Engines verwaltet werden soll.

BigQuery-Tabellen

Diese Tabellen werden mit BigQuery verwaltet.

Apache Iceberg-Tabellen

Dies sind Apache Iceberg-Tabellen, die Sie mit BigQuery erstellen und in Cloud Storage speichern. BigQuery übernimmt das gesamte Datenlayout und die Optimierung. Diese Tabellen können zwar von mehreren Engines gelesen werden, aber nur BigQuery kann direkt in sie schreiben.

Native Tabellen

Diese Tabellen werden von BigQuery verwaltet und speichern Daten im BigQuery-Speicher. Sie können diese Tabellen mit dem Lakehouse-Laufzeitkatalog verbinden.

Externe Tabellen

Externe Tabellen befinden sich außerhalb des Lakehouse-Laufzeitkatalogs. Die Daten und Metadaten werden selbst in einem Drittanbieterkatalog verwaltet (z. B. Cloud Storage, S3 oder Azure Blob Storage). BigQuery kann nur aus diesen Tabellen lesen.

Tabellenfunktionen

Tabellenentwicklung

Das Lakehouse von Google Cloud unterstützt die Apache Iceberg-Tabellenentwicklung, mit der Sie das Schema oder die Partitionsspezifikation einer Tabelle im Laufe der Zeit ändern können, ohne die Tabellendaten neu zu schreiben oder die Tabelle neu zu erstellen.

Zeitreise

Mit der Zeitreise können Sie die Daten einer Tabelle so abfragen, wie sie zu einem bestimmten Zeitpunkt oder einer bestimmten Snapshot-ID vorhanden waren. Dies ist nützlich für Audits, die Reproduktion von Experimenten oder die Wiederherstellung von Daten nach einer versehentlichen Löschung.

Metadaten-Caching

Das Metadaten-Caching ist eine Funktion, die die Abfrageleistung für externe Tabellen beschleunigt. Dabei wird eine Kopie der Metadaten der Tabelle im BigQuery-Speicher gespeichert, sodass bei der Abfrageausführung keine Metadatendateien aus Cloud Storage gelesen werden müssen.

Tabellenverwaltung im Lakehouse von Google Cloud

Die Tabellenverwaltung im Lakehouse von Google Cloud vereinfacht die Lakehouse-Wartung, indem Aufgaben wie die Komprimierung und die automatische Speicherbereinigung für verwaltete Tabellen automatisiert werden. So werden eine optimale Abfrageleistung und Speichereffizienz gewährleistet.

Konzepte zur Interoperabilität

BigQuery-Katalogföderation

Mit der BigQuery-Katalogföderation können Sie den Apache Iceberg REST-Katalogendpunkt des Lakehouse-Laufzeitkatalogs verwenden, um Tabellen, die von BigQuery verwaltet werden, z. B. verwaltete Iceberg-Tabellen, für externe Open-Source-Engines wie Apache Spark und Trino verfügbar zu machen.

Anstatt einen dedizierten Lakehouse-Katalogcontainer zum Speichern von Metadaten zu erstellen, dient der Apache Iceberg REST-Katalogendpunkt lediglich als Proxy-Gateway, das Kataloganfragen direkt an den internen Katalog von BigQuery weiterleitet. So können Sie Tabellen direkt in BigQuery mit der Standard-DDL oder den APIs von BigQuery erstellen und verwalten und gleichzeitig externen Open-Source-Engines Lesezugriff gewähren, um diese Tabellen über den REST-Katalogendpunkt abzufragen.

Cloudübergreifendes Lakehouse

Das cloudübergreifende Lakehouse erweitert das Lakehouse von Google Cloud und ermöglicht Ihnen, eine Verbindung zu externen Remote-Katalogen herzustellen (z. B. Databricks Unity Catalog oder AWS Glue). Dabei werden Metadaten von anderen Cloud-Anbietern synchronisiert, sodass Sie Daten mit BigQuery oder externen Open-Source-Engines über den Apache Iceberg REST-Katalogendpunkt abfragen können, ohne die Daten zu migrieren.

Öffentliche Datasets

Das Lakehouse von Google Cloud hostet hochwertige öffentliche Datasets, die über den Apache Iceberg REST-Katalog bereitgestellt werden. So haben Sie Lesezugriff für die Erkundung und das Testen, ohne die Infrastruktur verwalten zu müssen.

Namensstruktur für P.C.N.T.

Die Namensstruktur für P.C.N.T. ist die vierteilige Konvention, die verwendet wird, um Tabellen im Lakehouse-Laufzeitkatalog eindeutig zu identifizieren und über BigQuery abzufragen. Sie steht für Project.Catalog.Namespace.Table:

  • Projekt: Die Google Cloud Projekt-ID.
  • Katalog: Der Name des Lakehouse-Laufzeitkatalogs.
  • Namespace: Die logische Gruppierung für Tabellen (ähnlich einem Dataset).
  • Tabelle: Der Name der Datentabelle.

Sicherheitskonzepte

Verbindungen

Eine Verbindung ist eine BigQuery-Ressource, in der Anmeldedaten für den Zugriff auf externe Daten gespeichert sind. Im Lakehouse von Google Cloud delegieren Verbindungen den Zugriff auf Cloud Storage, indem das Dienstkonto der Verbindung in Ihrem Namen auf den Speicher-Bucket zugreift.

Bereitstellung von Anmeldedaten

Die Bereitstellung von Anmeldedaten ist ein Sicherheitsmechanismus, mit dem die Zugriffskontrolle bei Verwendung des Lakehouse-Laufzeitkatalogs verschärft werden kann. Wenn diese Funktion aktiviert ist, generiert der Dienst kurzlebige, eingeschränkte Anmeldedaten, die nur Zugriff auf die spezifischen Dateipfade gewähren, die für eine Abfrage erforderlich sind.

Einheitliche Governance

Mit der einheitlichen Governance können Sie Sicherheits- und Datenverwaltungs richtlinien zentral definieren und erzwingen, indem Sie sie in Knowledge Catalog einbinden. Wenn Sie Tabellen im Lakehouse-Laufzeitkatalog registrieren, registriert das System automatisch entsprechende Einträge im Katalog für Geschäftsmetadaten (Knowledge Catalog). So können Sie die Datenherkunft, die semantische Suche und die zentrale Governance über verschiedene Engines hinweg nutzen, ohne Dateien zu verschieben oder zu kopieren.

Konzepte zur Abfrage-Engine

Im Lakehouse von Google Cloud wird der Speicher von der Rechenleistung entkoppelt, sodass verschiedene Analyse-Engines mit offenen Tabellen interagieren können.

Managed Service for Apache Spark

Managed Service for Apache Spark (ehemals Managed Service for Apache Spark) bietet eine vollständig verwaltete Laufzeitumgebung für die Verarbeitung offener Tabellenformate wie Apache Iceberg. Es werden zwei Hauptausführungsmodi unterstützt:

  • Serverlose Batches: Für automatisierte, nicht interaktive Datenverarbeitungspipelines und ETL-Arbeitslasten. Bei diesem Modell mit nutzungsabhängiger Bezahlung ist keine Clusterverwaltung erforderlich, es gibt keine Ressourcenkonflikte zwischen Jobs und die Infrastrukturwartung wird automatisiert.
  • Serverlose interaktive Sitzungen: Für explorative Datenanalysen, Data Engineering und Data-Science-Experimente. Interaktive Sitzungen nutzen Apache Spark-Notebooks im Hintergrund mit Spark Connect oder Remote-Spark-Kernels und bieten so eine Umgebung mit Autoscaling ohne Infrastruktureinrichtung.

Dienststufen

Wenn Sie Apache Spark-Arbeitslasten für den Lakehouse-Laufzeitkatalog ausführen, können Sie zwischen verschiedenen Dienststufen wählen:

  • Standardstufe: Die Standardausführungsebene, die für Standard-Batchverarbeitungsarbeitslasten geeignet ist.
  • Premium-Stufe: Bietet erweiterte Funktionen, einschließlich Unterstützung für serverlose interaktive Notebook-Sitzungen und leistungssteigernde Funktionen wie die Lightning Engine.

Sitzungsvorlagen

Sitzungsvorlagen vereinfachen die Konfiguration serverloser interaktiver Sitzungen. Administratoren können damit allgemeine Umgebungseinstellungen (z. B. Katalogeigenschaften, Netzwerkkonfigurationen und Laufzeitversionen) definieren und beibehalten. Das fördert die Konsistenz und verbessert die Produktivität von Entwicklern, da wiederholte Einrichtungsschritte minimiert werden. Sitzungsvorlagen können mit der Google Cloud Console, der gcloud CLI, der REST API oder Terraform erstellt und verwaltet werden.

Konzepte zur Zuverlässigkeit

Regionsübergreifende Replikation

Bei der regionsübergreifenden Replikation werden Metadaten in mehreren Regionen repliziert, um die Verfügbarkeit des Katalogs bei regionalen Ausfällen zu gewährleisten.

Failover

Failover ist der Vorgang, bei dem während eines regionalen Ausfalls zwischen primären und sekundären Regionen gewechselt wird, um den Katalogbetrieb aufrechtzuerhalten.