Concetti del catalogo REST di Apache Iceberg

Questo documento fornisce una panoramica del catalogo REST di Apache Iceberg di BigLake Metastore, inclusa la gerarchia delle risorse e i tipi di catalogo supportati.

Il catalogo REST di Apache Iceberg in BigLake Metastore utilizza una gerarchia di risorse per organizzare i dati. La tabella seguente fornisce una panoramica generale di queste risorse:

Gerarchia delle risorse

Risorsa Descrizione
Catalogo Il contenitore di primo livello, un catalogo, consente di organizzare spazi dei nomi e tabelle in gruppi logici dividendoli in cataloghi diversi.
Spazio dei nomi Un raggruppamento logico utilizzato per organizzare le tabelle all'interno di un catalogo, questo funziona come database, schemi o directory.
Tabella Le tabelle contengono definizioni di righe e colonne su cui è possibile eseguire query.

Tipi di catalogo supportati

Quando configuri il client, specifichi una posizione del magazzino. Questa scelta determina il funzionamento e l'integrazione del catalogo con altri Google Cloud servizi. La tabella seguente descrive i tipi di catalogo supportati:

Tipo di catalogo Descrizione
Bucket Cloud Storage Tutti i dati di un catalogo vengono archiviati in un unico bucket Cloud Storage; per i dati condivisi in più bucket, sono necessari più cataloghi.
Federazione BigQuery Consente di utilizzare il catalogo REST di Iceberg per gestire ed eseguire query sulle tabelle visibili a BigQuery. Per ulteriori informazioni, vedi Federazione del catalogo con BigQuery.

Dettagli del warehouse del catalogo

Consigliato

  • Warehouse dei bucket Cloud Storage (gs://): questo è l'approccio standard in cui il catalogo gestisce direttamente i metadati e i file di dati Iceberg in un bucket Cloud Storage specificato. Questa opzione ti offre il controllo diretto sul layout dei dati e supporta la distribuzione delle credenziali percontrollo dell'accessoso granulare. In questo modo puoi creare e gestire tabelle BigLake per Apache Iceberg.

    Ad esempio, se hai creato il bucket per archiviare il catalogo e l'hai chiamato iceberg-bucket, sia il nome del catalogo sia il nome del bucket sono iceberg-bucket. Questo valore viene utilizzato in un secondo momento quando esegui query sul catalogo in BigQuery, utilizzando la sintassi P.C.N.T. Ad esempio, my-project.biglake-catalog-id.quickstart_namespace.quickstart_table.

Legacy

  • Federazione BigQuery (bq://): questo approccio ti consente di utilizzare il catalogo REST Iceberg per gestire ed eseguire query sulle tabelle visibili a BigQuery, senza dover creare una risorsa catalogo. Per ulteriori informazioni, vedi Federazione del catalogo con BigQuery.

Struttura di denominazione P.C.N.T

Quando esegui query sulle tabelle metastore BigLake da BigQuery, utilizzi una struttura di denominazione in quattro parti, spesso chiamata P.C.N.T:

  • Progetto: l' Google Cloud ID progetto proprietario del catalogo.
  • Catalogo: il nome del catalogo BigLake Metastore.
  • Namespace: lo spazio dei nomi Iceberg (equivalente a un set di dati BigQuery).
  • Tabella: il nome della tabella.

Ad esempio, my-project.biglake-catalog-id.my-namespace.my-table.

Federazione del catalogo con BigQuery

Puoi utilizzare l'interfaccia del catalogo REST di Iceberg per gestire ed eseguire query sulle tabelle visibili a BigQuery. I cataloghi di federazione BigQuery non richiedono la creazione di una risorsa catalogo. Possono essere utilizzati in qualsiasi progetto in cui è abilitata l'API BigQuery. In questo modo potrai:

Poiché queste risorse sono gestite da BigQuery, devi disporre delle autorizzazioni richieste applicabili. La distribuzione delle credenziali non è supportata per i cataloghi federati.

Per abilitare la federazione, configura il client con il formato del warehouse bq://projects/PROJECT_ID nel campo WAREHOUSE_PATH degli esempi di configurazione del client in Utilizza il catalogo REST di Iceberg. Puoi anche scegliere di includere una località BigQuery per limitare le richieste future a una singola località utilizzando il formato bq://projects/PROJECT_ID/locations/LOCATION.