La creazione di uno spazio dei nomi in un catalogo (ad esempio un catalogo REST Apache Iceberg o un catalogo Apache Hive) consente di organizzare le tabelle all'interno del catalogo runtime lakehouse.
Prima di iniziare
- Leggi l'articolo Informazioni sul catalogo runtime Lakehouse per capire come funziona il catalogo runtime Lakehouse e i limiti del servizio.
- 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.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare uno spazio dei nomi, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:
-
Tutte:
- BigLake Admin (
roles/biglake.admin) - Storage Admin (
roles/storage.admin)
- BigLake Admin (
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Crea uno spazio dei nomi
Crea uno spazio dei nomi all'interno di un catalogo.
Considerazioni
Quando crei uno spazio dei nomi, puoi specificare facoltativamente un bucket Cloud Storage o un percorso da associare allo spazio dei nomi:
- Catalogo multibucket (
bl://) (consigliato): puoi impostare qualsiasi posizione personalizzata, purché si trovi in una posizione consentita dal catalogo (default_locationorestricted_locations). Se non specifichi una posizione, lo spazio dei nomi viene creato nella località predefinita del catalogo (ad esempio,gs://{default_location}/{namespace_name}). Catalogo con bucket singolo (
gs://): la posizione dello spazio dei nomi viene ereditata automaticamente dal bucket singolo del catalogo.
Console
Nella console Google Cloud , apri la pagina Lakehouse.
Seleziona un catalogo esistente o creane uno se non ne hai.
Nella barra dei menu, fai clic su + Crea spazio dei nomi.
In Nome spazio dei nomi, inserisci un nome univoco per lo spazio dei nomi.
Per Posizione, specifica facoltativamente un bucket Cloud Storage o un percorso da associare al tuo spazio dei nomi. La posizione corrisponde al bucket del magazzino.
Fai clic su Crea.
Lo spazio dei nomi viene creato e visualizzato nell'elenco dei dettagli del catalogo.
gcloud
Crea uno spazio dei nomi in un catalogo multi-bucket (bl://) (consigliato)
Per creare uno spazio dei nomi in un catalogo con più bucket
(dove puoi specificare facoltativamente una posizione personalizzata), esegui il
comando gcloud biglake iceberg namespaces create con
il flag --properties:
gcloud biglake iceberg namespaces create NAMESPACE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ [--properties="location=LOCATION"]
Sostituisci quanto segue:
NAMESPACE_NAME: un nome per lo spazio dei nomi.PROJECT_ID: il tuo ID progetto Google Cloud .CATALOG_ID: l'ID del catalogo.LOCATION: (facoltativo) un bucket o un percorso Cloud Storage personalizzato da associare allo spazio dei nomi (ad esempio,gs://my-bucket/my-path).
Crea uno spazio dei nomi in un catalogo con un solo bucket (gs://)
Per creare uno spazio dei nomi in un catalogo con un solo bucket, ometti il flag --properties.
La posizione dello spazio dei nomi viene ereditata automaticamente dal singolo bucket del catalogo.
gcloud biglake iceberg namespaces create NAMESPACE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID"
REST
Per creare uno spazio dei nomi utilizzando l'API REST, invia una richiesta POST all'endpoint
CreateIcebergNamespace:
POST /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces
Il corpo della richiesta deve contenere un payload JSON CreateNamespaceRequest Iceberg valido che definisce l'identificatore e le proprietà dello spazio dei nomi:
{
"namespace": [
"NAMESPACE_NAME"
],
"properties": {
"location": "LOCATION"
}
}
Sostituisci quanto segue:
PROJECT_ID: il tuo ID progetto Google Cloud .CATALOG_ID: l'ID del catalogo.NAMESPACE_NAME: un nome per lo spazio dei nomi.LOCATION: (Facoltativo) un bucket o un percorso Cloud Storage personalizzato da associare allo spazio dei nomi (ad esempio,gs://my-bucket/my-path).
Passaggi successivi
- Scopri come gestire le ACL dello spazio dei nomi.