Durch die Registrierung einer vorhandenen Apache Iceberg-Tabelle werden ihre Metadaten in den Lakehouse-Laufzeitkatalog eingebunden. Dadurch sind die Tabellendaten für Abfragen und die Verwaltung in einem Namespace verfügbar. Dieser Prozess unterscheidet sich von der Tabellenerstellung, bei der eine neue, leere Tabellenstruktur und der zugehörige Speicher initialisiert werden.
Hinweis
-
Prüfen Sie, ob die Abrechnung für Ihr Google Cloud Projekt aktiviert ist.
-
Aktivieren Sie die BigLake API, falls sie noch nicht aktiviert ist.
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die Berechtigung
serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen - Richten Sie den Lakehouse-Laufzeitkatalog mit dem Apache Iceberg REST-Katalogendpunkt ein.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt und Ihren Speicher-Bucket zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Registrieren einer Tabelle benötigen:
-
Tabelle registrieren:
- BigLake-Administrator (
roles/biglake.admin) – Ihr Projekt - Storage-Administrator (
roles/storage.admin): Der Ziel-Cloud Storage-Bucket
- BigLake-Administrator (
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.
Tabelle registrieren
Vorhandene Iceberg-Tabelle registrieren
gcloud
Führen Sie den gcloud biglake iceberg tables register-Befehl aus, um eine Tabelle mit gcloud zu registrieren.
gcloud biglake iceberg tables register TABLE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ --namespace="NAMESPACE_NAME" \ --metadata-location="METADATA_LOCATION" \ [--overwrite]
Ersetzen Sie Folgendes:
TABLE_NAME: der Name, der der registrierten Tabelle zugewiesen werden soll.PROJECT_ID: die Google Cloud Projekt-ID.CATALOG_ID: die Katalog-ID.NAMESPACE_NAME: Der Name des Katalognamespace.METADATA_LOCATION: Der Cloud Storage-URI der neuesten JSON-Metadatendatei für die Tabelle, z. B.gs://my-bucket/path/to/metadata/00001.metadata.json.--overwrite: (Optional) Überschreiben Sie die Tabelle, falls sie bereits vorhanden ist.
REST
Wenn Sie eine Iceberg-Tabelle mit der REST API registrieren möchten, senden Sie eine POST-Anfrage an den Endpunkt RegisterIcebergTable:
POST /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/register
Der Anfragetext muss eine JSON-Nutzlast mit der folgenden Struktur enthalten:
{
"name": "TABLE_NAME",
"metadata-location": "METADATA_LOCATION",
"overwrite": OVERWRITE
}
Ersetzen Sie Folgendes:
PROJECT_ID: die Google Cloud Projekt-ID.CATALOG_ID: die Katalog-ID.NAMESPACE_NAME: Der Name des Katalognamespace.TABLE_NAME: der Name der registrierten Tabelle.METADATA_LOCATION: Der Cloud Storage-URI der neuesten JSON-Metadatendatei für die Tabelle.OVERWRITE:truezum Überschreiben, falls die Tabelle vorhanden ist, andernfallsfalse.