La registrazione di una tabella Apache Iceberg esistente integra i relativi metadati nel catalogo del runtime Lakehouse, rendendo i dati della tabella disponibili per query e gestione all'interno di uno spazio dei nomi. Questa procedura è diversa dalla creazione di tabelle, che inizializza una nuova struttura di tabella vuota e lo spazio di archiviazione associato.
Prima di iniziare
-
Verifica che la fatturazione sia attivata per il tuo Google Cloud progetto.
-
Abilita l'API BigLake.
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre dell'autorizzazione
serviceusage.services.enable. Se hai creato il progetto, probabilmente hai già questa autorizzazione tramite il ruolo Proprietario (roles/owner). In caso contrario, puoi ottenere questa autorizzazione tramite il ruolo Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin). Scopri come concedere i ruoli. - Configura il catalogo del runtime Lakehouse con l'endpoint del catalogo REST Apache Iceberg.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per registrare una tabella, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto e sul bucket di archiviazione:
-
Registra una tabella:
- BigLake Admin (
roles/biglake.admin) - il tuo progetto - Amministratore Storage (
roles/storage.admin) - il bucket Cloud Storage di destinazione
- 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.
Registra una tabella
Registra una tabella Iceberg esistente.
gcloud
Per registrare una tabella utilizzando gcloud, esegui il gcloud biglake iceberg tables register comando.
gcloud biglake iceberg tables register TABLE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ --namespace="NAMESPACE_NAME" \ --metadata-location="METADATA_LOCATION" \ [--overwrite]
Sostituisci quanto segue:
TABLE_NAME: il nome da assegnare alla tabella registrata.PROJECT_ID: l' Google Cloud ID progetto.CATALOG_ID: l'ID del catalogo.NAMESPACE_NAME: il nome dello spazio dei nomi del catalogo.METADATA_LOCATION: l'URI Cloud Storage dell'ultimo file JSON dei metadati per la tabella, ad esempiogs://my-bucket/path/to/metadata/00001.metadata.json.--overwrite: (facoltativo) sovrascrivi la tabella se esiste già.
REST
Per registrare una tabella Iceberg utilizzando l'API REST, invia una POST richiesta all'
RegisterIcebergTable endpoint:
POST /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/register
Il corpo della richiesta deve contenere un payload JSON con la seguente struttura:
{
"name": "TABLE_NAME",
"metadata-location": "METADATA_LOCATION",
"overwrite": OVERWRITE
}
Sostituisci quanto segue:
PROJECT_ID: l' Google Cloud ID progetto.CATALOG_ID: l'ID del catalogo.NAMESPACE_NAME: il nome dello spazio dei nomi del catalogo.TABLE_NAME: il nome della tabella registrata.METADATA_LOCATION: l'URI Cloud Storage dell'ultimo file JSON dei metadati per la tabella.OVERWRITE:trueper sovrascrivere se la tabella esiste, altrimentifalse.
Passaggi successivi
- Scopri come elencare le tabelle.
- Scopri come eseguire query su una tabella.
- Scopri come gestire gli elenchi di controllo dell'accesso alle tabelle.