La creazione di una tabella Apache Iceberg inizializza i nuovi metadati e lo spazio di archiviazione della tabella all'interno di uno spazio dei nomi nel catalogo runtime Lakehouse.
Se vuoi rendere disponibile una tabella Apache Iceberg esistente nel catalogo, consulta Registrare una tabella.
Se non specifichi una posizione di archiviazione esplicita a livello di spazio dei nomi o tabella durante la creazione della tabella, il sistema crea automaticamente i metadati e le directory dei dati della tabella nella posizione predefinita del catalogo (derivata dal bucket Cloud Storage di base del catalogo) aggiungendo gli identificatori dello spazio dei nomi e della tabella.
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 runtime Lakehouse con l'endpoint del catalogo REST Apache Iceberg.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare una tabella, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto e nel bucket di archiviazione:
-
Crea una tabella:
- Amministratore BigLake (
roles/biglake.admin) - il tuo progetto - Amministratore Storage (
roles/storage.admin) - il bucket Cloud Storage di destinazione
- Amministratore BigLake (
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.
Funzionalità e supporto delle tabelle
Quando utilizzi le tabelle nel catalogo runtime Lakehouse, è utile comprendere i diversi tipi di tabelle e le relative funzionalità di attivazione delle funzionalità. Per saperne di più sull'utilizzo delle tabelle Apache Iceberg, consulta Panoramica delle tabelle Apache Iceberg tables.
Tabelle Iceberg supportate
Sono supportate solo le tabelle Apache Iceberg V2 (GA) e V3 (anteprima). Le tabelle Iceberg V1 non sono supportate. Per eseguire l'upgrade delle tabelle V1 esistenti, consulta Eseguire l'upgrade delle tabelle Iceberg V1 a V2.
Utilizzare le opzioni della tabella (anteprima)
Puoi attivare le funzionalità gestite di BigQuery, come BigQuery Data Manipulation Language (DML) e la gestione automatica delle tabelle, configurando proprietà specifiche della tabella. Queste funzionalità vengono attivate in modi diversi a seconda di dove viene creata la tabella:
- Da BigQuery: BigQuery DML e la gestione automatica delle tabelle sono attivati per impostazione predefinita.
- Dai motori open source: per attivare, devi configurare in modo esplicito le proprietà della tabella. Per ulteriori informazioni, consulta Configurare le opzioni della tabella.
Creare una tabella
Crea una tabella Iceberg.
Console
Nella Google Cloud console, vai a Lakehouse.
Seleziona un catalogo esistente o creane uno se non ne hai.
Seleziona uno spazio dei nomi esistente o creane uno se non ne hai.
Nella barra dei menu, fai clic su + Crea tabella.
Per Formato tabella, seleziona Iceberg.
In Nome tabella, inserisci un nome tabella univoco.
(Facoltativo) Nella sezione Proprietà, configura le proprietà della tabella. Vengono elencate le proprietà predefinite come
gcp.biglake.bigquery-dml.enabledegcp.biglake.table-management.enabled.Ad esempio, puoi modificare questi valori in
trueper attivare BigQuery DML o la gestione automatica delle tabelle. Per ulteriori informazioni, vedi Configurare le opzioni della tabella.Fai clic su Crea.
La tabella viene visualizzata nella pagina Dettagli spazio dei nomi.
Spark
spark.sql("CREATE TABLE NAMESPACE_NAME.TABLE_NAME (id int, data string) USING ICEBERG;")
Sostituisci i seguenti valori:
NAMESPACE_NAME: il nome del tuo spazio dei nomi.TABLE_NAME: un nome per la tabella.
Per abilitare l'interoperabilità di lettura/scrittura e la gestione delle tabelle (anteprima), aggiungi le proprietà alla clausola TBLPROPERTIES:
TBLPROPERTIES (
'gcp.biglake.bigquery-dml.enabled' = true,
'gcp.biglake.table-management.enabled' = true
)
Trino
CREATE TABLE SCHEMA_NAME.TABLE_NAME (id int, data varchar);
Sostituisci i seguenti valori:
SCHEMA_NAME: il nome del tuo schema.TABLE_NAME: un nome per la tabella.
Per abilitare l'interoperabilità di lettura/scrittura e la gestione delle tabelle (anteprima), aggiungi queste proprietà alla clausola WITH:
WITH