Wenn Sie einen Namespace in einem Katalog erstellen (z. B. in einem Apache Iceberg REST-Katalog oder Apache Hive-Katalog), können Sie Ihre Tabellen im Lakehouse-Laufzeitkatalog organisieren.
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.
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 für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Namespace benötigen:
-
Alle:
- BigLake-Administrator (
roles/biglake.admin) - Storage-Administrator (
roles/storage.admin)
- 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.
Namespace erstellen
Erstellen Sie einen Namespace in einem Katalog.
Hinweise
Wenn Sie einen Namespace erstellen, können Sie optional einen Cloud Storage-Bucket oder -Pfad angeben, der mit dem Namespace verknüpft werden soll:
- Katalog mit mehreren Buckets (empfohlen): Sie können einen beliebigen benutzerdefinierten Speicherort festlegen, sofern er sich unter einem vom Katalog zulässigen Speicherort befindet (
default_locationoderrestricted_locations). Wenn Sie keinen Speicherort angeben, wird der Namespace unter dem standardmäßigen Standort des Katalogs erstellt (z. B.gs://{default_location}/{namespace_name}). Katalog mit einem Bucket: Der Speicherort des Namespace wird automatisch vom einzelnen Bucket des Katalogs übernommen.
Console
Öffnen Sie in der Google Cloud Console die Seite Lakehouse.
Wählen Sie einen vorhandenen Katalog aus oder erstellen Sie einen, falls Sie noch keinen haben.
Klicken Sie in der Menüleiste auf + Namespace erstellen.
Geben Sie unter Namespace-Name einen eindeutigen Namen für den Namespace ein.
Geben Sie unter Speicherort optional einen Cloud Storage-Bucket oder -Pfad an, der mit dem Namespace verknüpft werden soll. Der Speicherort entspricht dem Warehouse-Bucket.
Klicken Sie auf Erstellen.
Der Namespace wird erstellt und in der Liste mit den Katalogdetails angezeigt.
gcloud
Namespace in einem Katalog mit mehreren Buckets erstellen (empfohlen)
Wenn Sie einen Namespace in einem Katalog mit mehreren Buckets erstellen möchten
(wobei Sie optional einen benutzerdefinierten Speicherort angeben können), führen Sie den
gcloud biglake iceberg namespaces create Befehl mit
dem --properties Flag aus:
gcloud biglake iceberg namespaces create NAMESPACE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ [--properties="location=LOCATION"]
Ersetzen Sie Folgendes:
NAMESPACE_NAME: ein Name für den Namespace.PROJECT_ID: Ihre Google Cloud Projekt-ID.CATALOG_ID: die ID des Katalogs.LOCATION: (Optional) ein benutzerdefinierter Cloud Storage-Bucket oder -Pfad, der mit dem Namespace verknüpft werden soll (z. B.gs://my-bucket/my-path).
Namespace in einem Katalog mit einem Bucket erstellen
Wenn Sie einen Namespace in einem Katalog mit einem Bucket erstellen möchten, lassen Sie das Flag --properties weg.
Der Speicherort des Namespace wird automatisch vom einzelnen Bucket des Katalogs übernommen.
gcloud biglake iceberg namespaces create NAMESPACE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID"
REST
Wenn Sie einen Namespace mit der REST API erstellen möchten, senden Sie eine POST Anfrage an den
CreateIcebergNamespace Endpunkt:
POST /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces
Der Anfragetext muss eine gültige JSON-Nutzlast vom Typ CreateNamespaceRequest im Iceberg-Format enthalten, die die Namespace-ID und -Attribute definiert:
{
"namespace": [
"NAMESPACE_NAME"
],
"properties": {
"location": "LOCATION"
}
}
Ersetzen Sie Folgendes:
PROJECT_ID: Ihre Google Cloud Projekt-ID.CATALOG_ID: die ID des Katalogs.NAMESPACE_NAME: ein Name für den Namespace.LOCATION: (Optional) ein benutzerdefinierter Cloud Storage-Bucket oder -Pfad, der mit dem Namespace verknüpft werden soll (z. B.gs://my-bucket/my-path).
Nächste Schritte
- Erfahren Sie, wie Sie Namespace-ACLs verwalten.