Durch das Erstellen eines Katalogendpunkts (z. B. eines Apache Iceberg REST-Katalogendpunkts oder eines Apache Hive-Katalogendpunkts) wird ein Verwaltungs-Endpunkt 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 Ihren Katalogendpunkt für das grenzenlose Lakehouse erstellen, können Sie zwischen Endnutzeranmeldedaten oder dem Modus für die Bereitstellung von Anmeldedaten für die Delegierung des Speicherzugriffs wählen.
Hinweis
- Lesen Sie Informationen zum 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, if it is not already enabled.
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, if it is not already enabled.
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 ist die spezielle Berechtigung zum Registrieren von Tabellen (biglake.tables.register) erforderlich, die in der Rolle „BigLake-Administrator“ enthalten ist. -
Verwenden Sie das automatisch bereitgestellte Dienstkonto des Katalogs im Credential Vending-Modus:
Storage Object User (
roles/storage.objectUser) für die Ziel-Cloud Storage-Buckets. Nachdem Sie den Katalog erstellt haben, weisen Sie dem automatisch bereitgestellten Dienstkonto explizit die Rolle „Storage Object User“ (roles/storage.objectUser) für Ihre Speicher-Buckets zu.
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
Erstellen Sie einen Katalog.
Katalog erstellen
Gehen Sie so vor, um einen Katalog basierend auf dem gewünschten Anmeldedatenmodus und Bucket-Typ zu erstellen. Weitere Informationen zu den verschiedenen Katalogtypen finden Sie unter Informationen zum Apache Iceberg REST-Katalogendpunkt.
Console
Katalog mit mehreren Buckets erstellen (empfohlen)
In 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 Seite Lakehouse.
Klicken Sie auf Katalog erstellen.
Wählen Sie für Katalogtyp die Option Iceberg-REST-Katalog aus.
Wählen Sie für Lakehouse-Katalog-Bucket-Optionen die Option Katalog mit mehreren Buckets aus.
Geben Sie für 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 einen Standort für Primärer 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 Authentication method (Authentifizierungsmethode) End-user credentials (Anmeldedaten von Endnutzern) oder Credential vending mode (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 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 für Katalogtyp die Option Iceberg-REST-Katalog oder Hive-Metastore aus.
- Wählen Sie unter Lakehouse-Katalog-Bucket-Optionen die Option Katalog mit einem Bucket aus.
- Geben Sie für 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 Katalognamen muss mit dem Bucket-Namen übereinstimmen. - Klicken Sie auf Weiter.
- Wählen Sie unter Authentication method (Authentifizierungsmethode) End-user credentials (Anmeldedaten von Endnutzern) oder Credential vending mode (Modus für die Bereitstellung von Anmeldedaten) aus.
- Klicken Sie auf Erstellen.
- Wenn Sie Modus für 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 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 Befehl gcloud biglake iceberg catalogs create aus, um einen Katalog mit mehreren Buckets 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 (empfohlen) ist das der Name Ihres benutzerdefinierten Katalogs.PROJECT_ID: Ihre Google CloudProjekt-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 von Endnutzern odervended-credentialsfür den 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 Dienstkonto des Lakehouse-Laufzeitkatalogs Ihres Katalogs die Rolle Storage Object User (
roles/storage.objectUser) für alle zugehörigen Speicher-Buckets explizit zuweisen.RESTRICTED_LOCATIONS: (Optional) Durch Kommas getrennte Liste zusätzlicher zulässiger Speicherorte 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-Speicherorte für den standardmäßigen Standort und die eingeschränkten Speicherorte müssen sich in derselben geografischen Region oder Gerichtsbarkeit befinden, z. B. in den USA, Europa, Kanada oder Asien. So können Sie 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 eine unbefugte Offenlegung von Anmeldedaten zu verhindern. Weitere Informationen finden Sie unter Speicher ü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 US-Region (z. B.USoderus-central1) oder in der EU-Region (z. B.EUodereurope-west4)USbzw.EUan, damit der Katalog über die entsprechenden multiregionalen BigQuery-Standorte zugänglich ist und für Abfragen 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 dies der Cloud Storage-Bucket-ID, die mit dem REST-Katalog verwendet wird.PROJECT_ID: Ihre Google CloudProjekt-ID.CREDENTIAL_MODE: die Authentifizierungsmethode. Verwenden Sieend-userfür Anmeldedaten von Endnutzern odervended-credentialsfür den Modus für die Bereitstellung von Anmeldedaten.
REST
Iceberg-REST-Katalog erstellen
Wenn Sie einen Endpunkt für die Katalogverwaltung mit der REST API erstellen möchten, senden Sie eine POST-Anfrage an den CreateIcebergCatalog-Endpunkt:
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: Projekt-ID in Google Cloud .CATALOG_ID: die ID Ihres Lakehouse-Laufzeitkatalogs.