Durch das Erstellen eines Katalogendpunkts (z. B. eines Apache Iceberg-REST-Katalogendpunkts oder eines Apache Hive-Katalogendpunkts) wird ein Verwaltungsendpunkt im Lakehouse-Laufzeitkatalog eingerichtet.
Dieser Endpunkt verweist auf einen zugrunde liegenden Cloud Storage-Bucket und bietet eine Metadatenebene, über die Abfrage-Engines und Open-Source-Arbeitslasten direkt mit Ihren Tabellen interagieren können.
Wenn Sie einen Katalogendpunkt für Lakehouse für Apache Iceberg erstellen, können Sie zwischen Anmeldedaten des Endnutzers oder dem Modus für die Bereitstellung von Anmeldedaten für die Delegierung des Speicherzugriffs wählen.
Hinweis
- Lesen Sie den Artikel Über den Lakehouse-Laufzeitkatalog, um zu erfahren, wie der Lakehouse-Laufzeitkatalog funktioniert und welche Einschränkungen für den Dienst gelten.
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles. - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake API.
Roles required to enable APIs
To enable APIs, you need the serviceusage.services.enable permission. If you
created the project, then you likely already have this permission through the
Owner role (roles/owner). Otherwise, you can get this permission through the
Service Usage Admin role (roles/serviceusage.serviceUsageAdmin).
Learn how to grant roles.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake API.
Roles required to enable APIs
To enable APIs, you need the serviceusage.services.enable permission. If you
created the project, then you likely already have this permission through the
Owner role (roles/owner). Otherwise, you can get this permission through the
Service Usage Admin role (roles/serviceusage.serviceUsageAdmin).
Learn how to grant roles.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Katalogs und zum Registrieren von Tabellen benötigen:
-
Katalog erstellen:
- BigLake-Administrator (
roles/biglake.admin) für Ihr Projekt - Storage-Administrator (
roles/storage.admin) für Ihr Projekt
- BigLake-Administrator (
-
Tabellen erstellen (registrieren):
BigLake-Administrator (
roles/biglake.admin) für Ihr Projekt. Für die Registrierung von Tabellen in einem Katalog mit mehreren Buckets ist die Berechtigung zur Tabellenregistrierung (biglake.tables.register) erforderlich, die in der Rolle „BigLake-Administrator“ enthalten ist. -
Automatisch bereitgestelltes Katalogdienstkonto im Modus für die Bereitstellung von Anmeldedaten verwenden:
Storage Object User (
roles/storage.objectUser) für die Ziel-Cloud Storage-Buckets. Nachdem Sie den Katalog erstellt haben, gewähren Sie dem automatisch bereitgestellten Dienstkonto explizit die Rolle „Storage Object User“ (roles/storage.objectUser) für Ihre Storage-Buckets.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Katalog erstellen
Katalog erstellen
Katalog erstellen
Führen Sie die folgenden Schritte aus, um einen Katalog basierend auf dem bevorzugten Modus für Anmeldedaten und dem Bucket-Typ zu erstellen. Weitere Informationen zu den verschiedenen Katalogtypen finden Sie unter Über den Apache Iceberg-REST-Katalogendpunkt.
Console
Katalog mit mehreren Buckets (bl://) erstellen (empfohlen)
Mit dieser Konfiguration können Sie Ihrem Katalog mehrere Buckets zuordnen und ihn unabhängig von einem Bucket-Namen benennen.
Öffnen Sie in der Google Cloud console die Lakehouse Seite.
Klicken Sie auf Katalog erstellen.
Wählen Sie unter Katalogtyp die Option Iceberg-REST-Katalog aus.
Wählen Sie unter Optionen für den Lakehouse-Katalog-Bucket die Option Katalog mit mehreren Buckets aus.
Geben Sie unter Standardmäßiger Cloud Storage-Pfad für Katalog den Cloud Storage-Pfad ein, der für Ihren Katalog verwendet werden soll, oder suchen Sie danach.
Geben Sie unter Katalog-ID einen benutzerdefinierten Namen für Ihren Katalog ein.
Wählen Sie unter Primärer Standort einen Standort aus. Der Standort muss sich in der Nähe der Regionen des Haupt-Buckets befinden.
Klicken Sie auf Weiter.
Fügen Sie im Schritt Datenpfade bei Bedarf weitere Cloud Storage-Pfade hinzu.
Klicken Sie auf Weiter.
Wählen Sie unter Authentifizierungsmethode die Option Anmeldedaten des Endnutzers oder Modus für die Bereitstellung von Anmeldedaten aus.
Klicken Sie auf Erstellen.
Ihr Katalog wird erstellt und die Seite Katalogdetails wird geöffnet.
Wenn Sie Modus für die Bereitstellung von Anmeldedaten ausgewählt haben, führen Sie die folgenden zusätzlichen Schritte aus:
- Klicken Sie unter Authentifizierungsmethode auf Bucket-Berechtigungen festlegen.
- Klicken Sie im Dialogfeld auf Bestätigen.
Katalog mit einem Bucket (gs://) erstellen
- Wählen Sie unter Katalogtyp die Option Iceberg-REST-Katalog oder Hive Metastore aus.
- Wählen Sie unter Optionen für den Lakehouse-Katalog-Bucket die Option Katalog mit einem Bucket aus.
- Geben Sie unter Standardmäßiger Cloud Storage-Pfad für Katalog den Cloud Storage-Pfad ein, der für Ihren Katalog verwendet werden soll, oder suchen Sie danach.
Bei einem Katalog mit einem Bucket (
gs://) kann es nur einen Katalog pro Bucket geben und der Katalogname entspricht dem Bucket-Namen. - Klicken Sie auf Weiter.
- Wählen Sie unter Authentifizierungsmethode die Option Anmeldedaten des Endnutzers oder Modus für die Bereitstellung von Anmeldedaten aus.
- Klicken Sie auf Erstellen.
- Wenn Sie Modus für die Bereitstellung von Anmeldedaten ausgewählt haben, führen Sie die folgenden zusätzlichen Schritte aus:
- Klicken Sie unter Authentifizierungsmethode auf Bucket-Berechtigungen festlegen.
- Klicken Sie im Dialogfeld auf Bestätigen.
gcloud
Katalog mit mehreren Buckets (bl://) erstellen (empfohlen)
Mit dieser Konfiguration können Sie Ihrem Katalog mehrere Buckets zuordnen und ihn unabhängig von einem Bucket-Namen benennen.
Führen Sie
den gcloud biglake iceberg catalogs create Befehl aus, um einen Katalog mit mehreren Buckets (bl://) zu erstellen (empfohlen).
gcloud biglake iceberg catalogs create \ CATALOG_NAME \ --project PROJECT_ID \ --catalog-type biglake \ --default-location DEFAULT_LOCATION \ --credential-mode CREDENTIAL_MODE \ [--restricted-locations RESTRICTED_LOCATIONS] \ [--primary-location LOCATION]
Ersetzen Sie Folgendes:
CATALOG_NAME: ein Name für Ihren Katalog. Bei Katalogen mit mehreren Buckets (bl://) (empfohlen) ist dies der benutzerdefinierte Katalogname.PROJECT_ID: Ihre Google Cloud Projekt-ID.DEFAULT_LOCATION: Geben Sie den Standardspeicherort für den Katalog an. Sie können einen Bucket (gs://my-bucket) oder einen Unterpfad (gs://my-bucket/path) angeben. Alle Namespaces und Tabellen im Katalog müssen sich unter dem angegebenen Pfad befinden. Wenn Sie beispielsweisegs://my-bucket/pathangeben, können Sie keine Namespaces oder Tabellen untergs://my-bucket/another/patherstellen.CREDENTIAL_MODE: die Authentifizierungsmethode. Verwenden Sieend-userfür Anmeldedaten des Endnutzers odervended-credentialsfür Modus für die Bereitstellung von Anmeldedaten.Hinweis: Wenn Sie den Modus für die Bereitstellung von Anmeldedaten verwenden, müssen Sie dem automatisch bereitgestellten Lakehouse-Laufzeitkatalog-Dienstkonto Ihres Katalogs explizit die Rolle Storage Object User (
roles/storage.objectUser) für alle zugehörigen Storage-Buckets gewähren.RESTRICTED_LOCATIONS: (Optional) Durch Kommas getrennte Liste mit zusätzlichen zulässigen Speicherorten im Formatgs://my-bucket-1/...,gs://my-bucket-2/.... Wenn Sie einen Pfad angeben (z. B.gs://my-bucket/path), müssen sich alle Namespaces oder Tabellen in diesem Bucket unter diesem Pfad befinden. Alle konfigurierten Cloud Storage-Standorte in der Standardregion und den eingeschränkten Regionen müssen sich in derselben geografischen Regionengruppe oder Gerichtsbarkeit befinden (z. B. USA, Europa, Kanada oder Asien). Sie können beispielsweise keinen Bucket in den USA mit einem Bucket in Europa kombinieren. Eine Liste der unterstützten Standorte finden Sie unter Lakehouse-Standorte.Warnung:Konfigurieren Sie keine sich überschneidenden Pfade mit anderen Katalogen, um die unbefugte Offenlegung von Anmeldedaten zu verhindern. Weitere Informationen finden Sie unter Storage über mehrere Buckets hinweg.
LOCATION: (Optional) Die primäre Region für den Katalog, um die Interoperabilität mit BigQuery zu gewährleisten. Geben Sie für Cloud Storage-Buckets in der Region „USA“ (z. B.USoderus-central1) oder der Region „EU“ (z. B.EUodereurope-west4)USbzw.EUan, damit der Katalog zugänglich ist und für Abfragen aus den entsprechenden BigQuery-Multiregionen zur Verfügung steht. Weitere Informationen finden Sie unter Bucket- und Katalogregionen.
Katalog mit einem Bucket (gs://) erstellen
Führen Sie den folgenden Befehl aus, um einen Katalog mit einem Bucket (gs://) zu erstellen:
gcloud biglake iceberg catalogs create \ CATALOG_NAME \ --project PROJECT_ID \ --catalog-type gcs-bucket \ --credential-mode CREDENTIAL_MODE
Ersetzen Sie Folgendes:
CATALOG_NAME: ein Name für Ihren Katalog. Bei Katalogen mit einem Bucket (gs://) entspricht dieser der Cloud Storage-Bucket-ID, die mit dem REST-Katalog verwendet wird.PROJECT_ID: Ihre Google Cloud Projekt-ID.CREDENTIAL_MODE: die Authentifizierungsmethode. Verwenden Sieend-userfür Anmeldedaten des Endnutzers odervended-credentialsfür Modus für die Bereitstellung von Anmeldedaten.
REST
Iceberg-REST-Katalog erstellen
Senden Sie eine POST
Anfrage an den CreateIcebergCatalog Endpunkt, um einen Endpunkt für die Katalogverwaltung mit der REST API zu erstellen:
POST /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs?icebergCatalogId=CATALOG_ID
Der Anfragetext muss eine IcebergCatalog-JSON-Nutzlast enthalten, in der die Katalogkonfiguration definiert ist, z. B. das zugrunde liegende Cloud Storage-Bucket-Warehouse und der Authentifizierungsmodus.
Ersetzen Sie Folgendes:
PROJECT_ID: Ihre Google Cloud Projekt-ID.CATALOG_ID: die ID Ihres Lakehouse-Laufzeitkatalogs.