Mit einer grenzenlosen Lakehouse-Architektur können Sie Datenanalysen in verteilten Umgebungen und Speichersystemen mit offenem Format inGoogle Cloudvereinheitlichen. Wenn Sie diese grundlegenden Konzepte verstehen, können Sie Architekturen bewerten und einheitliche Kataloge, Multi-Engine-Computing und Governance für Ihre Lakehouse-Arbeitslasten konfigurieren.
Anstatt eine vollständige Liste der Funktionen bereitzustellen, werden in dieser Referenz die wichtigsten Begriffe beschrieben, die in der Lakehouse-Dokumentation verwendet werden.
Wichtige Konzepte
Die folgenden Konzepte bilden die Grundlage der Lakehouse-Architektur von Google Cloud.
Data Lakehouse
Ein Data Lakehouse kombiniert die Kosteneinsparungen und die Flexibilität eines Data Lake mit der Datenverwaltung und der Leistung eines Data Warehouse. Sie können damit Daten in offenen Formaten in Cloud Storage speichern und BigQuery-Funktionen wie präzise Sicherheitskontrollen und schnelle Abfragen nutzen.
Medaillon-Architektur
Ein gängiges Designmuster in einem Data Lakehouse ist die Medallion-Architektur, bei der Daten logisch in aufeinanderfolgenden Ebenen von Struktur und Qualität organisiert werden:
- Bronze-Ebene (Rohdaten): Nimmt Rohdaten auf und speichert sie in offenen Formaten wie Apache Iceberg in Cloud Storage.
- Silber-Ebene (bereinigt): Bereinigt, filtert und reichert die Rohdaten an, um sie in standardisierte Tabellen zu übertragen.
- Gold-Ebene (ausgewählt): Liefert vollständig ausgewählte, aggregierte Tabellen auf Geschäftsebene. 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 ist die Fähigkeit mehrerer Analyse- und Transaktionssysteme wie BigQuery, Apache Spark und Apache Flink, mit einer einzigen Kopie von Daten in offenen Formaten wie Apache Iceberg zu arbeiten. Dadurch entfällt die Notwendigkeit der Datenduplizierung und es wird eine einheitliche Ansicht der Daten über verschiedene Tools hinweg gewährleistet.
Lakehouse-Laufzeitkatalog
Der Lakehouse-Laufzeitkatalog ist ein zentraler, serverloser Metadatendienst, der als einzige verlässliche Quelle für das Lakehouse von Google Cloud dient. Er ermöglicht es mehreren Engines wie Apache Spark, Apache Flink und BigQuery, dieselben Tabellen gleichzeitig zu erkennen und abzufragen.
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. Sie bietet Interoperabilität zwischen Open-Source-Engines und BigQuery und unterstützt Funktionen wie die Bereitstellung von Anmeldedaten und die Notfallwiederherstellung.
Katalogspeicherkonfigurationen
Beim Erstellen eines Apache Iceberg REST-Katalogendpunkts können Sie zwischen zwei Speichermodellen wählen:
- Katalog mit mehreren Buckets (empfohlen): Sie können Ihren Katalog unabhängig benennen und bis zu 15 Cloud Storage-Buckets (
default_locationundrestricted_locations) konfigurieren. Wenn Sie Client-Abfrage-Engines (z. B. Spark oder Trino) konfigurieren, legen Sie den Warehouse-Pfad aufbl://projects/PROJECT_ID/catalogs/CATALOG_IDfest. - Katalog mit einem Bucket: Eine Legacy-Konfiguration, bei der der Katalog an einen einzelnen Cloud Storage-Bucket gebunden ist und den Namen des Buckets übernimmt.
Legen Sie beim Konfigurieren von Clientabfrage-Engines den Warehouse-Pfad auf
gs://CLOUD_STORAGE_BUCKET_NAMEfest.
Benutzerdefinierter Apache Iceberg-Katalog für BigQuery
Dies ist eine Integration, bei der der BigQuery-Katalog direkt als zugrunde liegender 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 mit einem vollständig verwalteten Metastore-Dienst inGoogle Cloudausführen.
Tabellentypen
Das Lakehouse von Google Cloud unterstützt mehrere Tabellenformate, je nachdem, welche Engine zum Verwalten der Daten und welchen Katalogendpunkt Sie verwenden.
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 und bietet Zugriff darauf über den Apache Iceberg REST-Katalogendpunkt. Open-Source-Engines haben Lese- und Schreibzugriff auf diese Tabellen, während BigQuery Lese- und Schreibzugriff (Vorabversion) hat. Diese Option eignet sich am besten, 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 in 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, BigQuery ist jedoch die einzige Engine, die direkt in sie schreiben kann.
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 in einem Drittanbieterkatalog (z. B. Cloud Storage, S3 oder Azure Blob Storage) selbst verwaltet. 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 Zeitreisen können Sie die Daten einer Tabelle so abfragen, wie sie zu einem bestimmten Zeitpunkt oder einer bestimmten Snapshot-ID vorhanden waren. Das ist nützlich für Audits, das Reproduzieren von Tests oder das Wiederherstellen von Daten nach versehentlichem Löschen.
Caching von Metadaten
Das Metadaten-Caching ist eine Funktion, die die Abfrageleistung für externe Tabellen beschleunigt. Eine Kopie der Metadaten der Tabelle wird im BigQuery-Speicher gespeichert. Dadurch müssen während der Abfrageausführung weniger Metadatendateien aus Cloud Storage gelesen werden.
Lakehouse-Tabellenverwaltung von Google Cloud
Die Lakehouse-Tabellenverwaltung von Google Cloud vereinfacht die Lakehouse-Wartung, indem Aufgaben wie die Komprimierung und die automatische Speicherbereinigung für verwaltete Tabellen automatisiert werden. Das sorgt für eine optimale Abfrageleistung und Speichereffizienz.
Konzepte zur Interoperabilität
Grenzenloses Lakehouse
Borderless Lakehouse erweitert das Lakehouse von Google Cloud und ermöglicht es Ihnen, eine Verbindung zu externen Remote-Katalogen wie Databricks Unity Catalog, AWS Glue, Snowflake Horizon Catalog, Workday Data Lake oder SAP BDC herzustellen. Er synchronisiert Metadaten von anderen Cloud-Anbietern, sodass Sie Daten mit BigQuery oder externen Open-Source-Engines über den Apache Iceberg REST-Katalogendpunkt abfragen können, ohne die Daten migrieren zu müssen.
Öffentliche Datasets
Das Lakehouse von Google Cloud hostet hochwertige öffentliche Datasets, die über den Apache Iceberg REST-Katalog bereitgestellt werden. Es bietet Lesezugriff für die explorative Datenanalyse und Tests, ohne dass eine Infrastruktur verwaltet werden muss.
P.C.N.T.-Namensstruktur
Die P.C.N.T.-Namensstruktur ist die vierteilige Konvention, die verwendet wird, um Tabellen im Lakehouse-Laufzeitkatalog von BigQuery eindeutig zu identifizieren und abzufragen. Es 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 wie ein 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 werden. In Lakehouse von Google Cloud delegieren Verbindungen den Zugriff auf Cloud Storage, indem das Dienstkonto der Verbindung in Ihrem Namen auf den Storage-Bucket zugreift.
Bereitstellung von Anmeldedaten
Die Bereitstellung von Anmeldedaten ist ein Sicherheitsmechanismus, der die Zugriffssteuerung bei der Verwendung des Lakehouse-Laufzeitkatalogs verschärft. Wenn diese Option 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 Datenmanagementrichtlinien zentral definieren und durchsetzen, 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äftliche Metadaten (Knowledge Catalog). Dadurch werden Datenherkunft, semantische Suche und zentrale Governance über Engines hinweg ermöglicht, ohne dass Dateien verschoben oder kopiert werden müssen.
Konzepte der Abfrage-Engine
Das Lakehouse von Google Cloud entkoppelt Speicher von Computing, 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 Laufzeit für die Verarbeitung offener Tabellenformate wie Apache Iceberg. Es unterstützt zwei primäre Ausführungsmodi:
- Serverlose Batches: Entwickelt für automatisierte, nicht interaktive Datenverarbeitungspipelines und ETL-Arbeitslasten. Bei diesem Modell, bei dem Sie pro Ausführung bezahlen, entfällt die Clusterverwaltung, es gibt keine Ressourcenkonflikte zwischen Jobs und die Infrastrukturwartung wird automatisiert.
- Serverlose interaktive Sitzungen: Entwickelt für explorative Datenanalysen, Data Engineering und Data-Science-Experimente. Interaktive Sitzungen unterstützen Apache Spark-Notebooks im Hintergrund über Spark Connect oder Remote-Spark-Kernel. Sie bieten eine automatisch skalierende Umgebung 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ührungsstufe, die für Standard-Batchverarbeitungsarbeitslasten geeignet ist.
- Premium-Stufe: Bietet erweiterte Funktionen, darunter Unterstützung für serverlose interaktive Notebook-Sitzungen und leistungssteigernde Funktionen wie die Lightning Engine.
Sitzungsvorlagen
Sitzungsvorlagen vereinfachen die Konfiguration serverloser interaktiver Sitzungen. Sie ermöglichen es Administratoren, allgemeine Umgebungseinstellungen (z. B. Katalogattribute, Netzwerkkonfigurationen und Laufzeitversionen) zu definieren und beizubehalten. Das fördert die Konsistenz und verbessert die Produktivität der Entwickler, 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.
Zuverlässigkeitskonzepte
Regionsübergreifende Replikation
Bei der regionsübergreifenden Replikation werden Metadaten über mehrere Regionen hinweg repliziert, um die Verfügbarkeit des Katalogs bei regionalen Ausfällen zu gewährleisten.
Failover
Failover ist der Prozess des Wechsels zwischen primären und sekundären Regionen während eines regionalen Ausfalls, um den Katalogbetrieb aufrechtzuerhalten.