Introduzione a BigLake Metastore

Il metastore BigLake è un metastore unificato, gestito, serverless e scalabile che collega i dati del lakehouse archiviati in Cloud Storage o BigQuery a più runtime, inclusi runtime open source (come Apache Spark e Apache Flink) e BigQuery.

BigLake Metastore fornisce un'unica fonte di riferimento per la gestione dei metadati di più motori. Supporta i principali formati di tabelle open source, come Apache Iceberg, tramite le tabelle BigLake Iceberg e le tabelle BigQuery standard. Inoltre, il metastore BigLake supporta API aperte e un catalogo REST Iceberg (anteprima).

Utilizza la tabella seguente per determinare da dove iniziare il tuo percorso con il metastore BigLake:

Caso d'uso Consiglio
Il motore open source deve accedere ai dati in Cloud Storage. Esplora il catalogo REST Iceberg (anteprima).
Il motore open source deve essere interoperabile con BigQuery. Esplora l'integrazione del metastore BigLake con motori open source (ad es. Spark) utilizzando il plug-in personalizzato del catalogo Iceberg di BigQuery.

Vantaggi

BigLake Metastore offre diversi vantaggi per la gestione e l'analisi dei dati:

  • Architettura serverless. Il metastore BigLake fornisce un'architettura serverless, eliminando la necessità di gestire server o cluster. Ciò contribuisce a ridurre l'overhead operativo, semplifica la distribuzione e consente la scalabilità automatica in base alla domanda.
  • Interoperabilità del motore. Il metastore BigLake ti consente di accedere direttamente alle tabelle nei motori open source (come Spark e Flink) e in BigQuery, permettendoti di eseguire query sulle tabelle in formato aperto senza configurazioni aggiuntive. Ad esempio, puoi creare una tabella in Spark ed eseguirne query direttamente in BigQuery. Ciò contribuisce a semplificare il flusso di lavoro di analisi e riduce la necessità di processi ETL o di spostamento dei dati complessi.
  • Esperienza utente unificata. Il metastore BigLake fornisce un flusso di lavoro unificato in BigQuery e nei motori open source. Questa esperienza unificata ti consente di configurare un ambiente Spark self-hosted o ospitato da Dataproc tramite il catalogo REST Iceberg (anteprima) oppure puoi configurare un ambiente Spark in un notebook BigQuery Studio per fare la stessa cosa.

    Ad esempio, in BigQuery Studio puoi creare una tabella in Spark con un notebook BigQuery Studio.

    Crea una tabella nel metastore BigLake

    A questo punto, puoi eseguire query sulla stessa tabella Spark nella consoleGoogle Cloud .

    Esegui query sulla tabella in BigLake Metastore

Formati delle tabelle in BigLake Metastore

BigLake supporta diversi tipi di tabelle. Utilizza la tabella seguente per selezionare il formato più adatto al tuo caso d'uso:

Tabelle esterne Tabelle BigLake Iceberg Tabelle BigLake Iceberg in BigQuery Tabelle BigQuery standard
Metastore Metastore esterno o self-hosting BigLake metastore BigLake metastore BigLake metastore
Spazio di archiviazione Cloud Storage / Amazon S3 / Azure Cloud Storage Cloud Storage BigQuery
Gestione Cliente o terza parte Google Google (esperienza altamente gestita) Google (esperienza più gestita)
Lettura / scrittura Motori open source (lettura/scrittura)

BigQuery (sola lettura)
Motori open source (lettura/scrittura)

BigQuery (sola lettura)
Motori open source (sola lettura con librerie Iceberg, interoperabilità di lettura/scrittura con l'API BigQuery Storage)

BigQuery (lettura/scrittura)

Motori open source (interoperabilità di lettura/scrittura con l'API BigQuery Storage)

BigQuery (lettura/scrittura)

Use cases Migrazioni, tabelle di gestione temporanea per i caricamenti BigQuery, autogestione Open lakehouse Lakehouse aperta, spazio di archiviazione di livello aziendale per analisi, streaming e AI Spazio di archiviazione di livello aziendale per analisi, streaming e AI

Differenze rispetto a BigLake Metastore (classico)

BigLake Metastore è il metastore consigliato su Google Cloud.

Le principali differenze tra BigLake Metastore e BigLake Metastore (classico) includono i seguenti dettagli:

  • BigLake Metastore (classico) è un servizio metastore autonomo distinto da BigQuery e supporta solo le tabelle Iceberg. Ha un modello di risorse in tre parti diverso. Le tabelle BigLake metastore (classico) non vengono rilevate automaticamente da BigQuery.
  • Le tabelle nel metastore BigLake sono accessibili da più motori open source e BigQuery. BigLake Metastore supporta l'integrazione diretta con Spark, il che contribuisce a ridurre la ridondanza quando memorizzi i metadati ed esegui i job. BigLake Metastore supporta anche il catalogo Iceberg REST (anteprima), che collega i dati del lakehouse in più runtime.

Limitazioni

Alle tabelle nel metastore BigLake si applicano le seguenti limitazioni:

  • Non puoi creare o modificare tabelle metastore BigLake con istruzioni DDL o DML utilizzando il motore BigQuery. Puoi modificare le tabelle del metastore BigLake utilizzando l'API BigQuery (con lo strumento a riga di comando bq o le librerie client), ma in questo modo rischi di apportare modifiche incompatibili con il motore esterno.
  • Le tabelle del metastore BigLake non supportano operazioni di ridenominazione o istruzioni Spark SQL.ALTER TABLE ... RENAME TO
  • Le tabelle del metastore BigLake sono soggette alle stesse quote e limiti delle tabelle standard.
  • Le prestazioni delle query per le tabelle del metastore BigLake dal motore BigQuery potrebbero essere lente rispetto all'esecuzione di query sui dati in una tabella BigQuery standard. In generale, le prestazioni delle query per una tabella metastore BigLake devono essere equivalenti alla lettura dei dati direttamente da Cloud Storage.
  • Una simulazione di una query che utilizza una tabella BigLake Metastore potrebbe segnalare un limite inferiore di 0 byte di dati, anche se vengono restituite righe. Questo risultato si verifica perché la quantità di dati elaborati dalla tabella non può essere determinata finché la query effettiva non viene completata. L'esecuzione della query comporta un costo per l'elaborazione di questi dati.
  • Non puoi fare riferimento a una tabella metastore BigLake in una query di tabella jolly.
  • Non puoi utilizzare il metodo tabledata.list per recuperare i dati dalle tabelle del metastore BigLake. In alternativa, puoi salvare i risultati della query in una tabella di destinazione, quindi utilizzare il metodo tabledata.list su quella tabella.
  • Le tabelle BigLake Metastore non supportano il clustering.
  • Le tabelle BigLake Metastore non supportano i nomi delle colonne flessibili.
  • La visualizzazione delle statistiche di archiviazione delle tabelle per le tabelle del metastore BigLake non è supportata.

Passaggi successivi