Come funziona BigLake

Questa pagina descrive l'architettura tecnica di BigLake, fornisce dettagli su come vengono gestite le query e su come BigLake Metastore supporta l'interoperabilità tra i motori.

Architettura

Una data lakehouse creata con BigLake è composta dai seguenti componenti:

  • Spazio di archiviazione: Cloud Storage e lo spazio di archiviazione BigQuery fungono da livello di archiviazione, con Apache Iceberg come formato di tabella aperta consigliato per Cloud Storage.
  • Metastore: BigLake Metastore fornisce un'unica fonte di verità per la gestione dei metadati su più motori.
  • Motore di query: BigQuery, Apache Spark, Apache Flink, Trino e altri motori open source sono compatibili con BigLake.
  • Governance: Knowledge Catalog fornisce policy di sicurezza e governance centralizzate.
  • Strumenti di scrittura e analisi dei dati: i motori e gli strumenti integrati con BigLake forniscono più percorsi per l'importazione e l'analisi dei dati.

Gerarchia delle risorse

BigLake organizza i dati utilizzando la gerarchia standard di Apache Iceberg. Questa struttura mappa i concetti di database logico ai percorsi di archiviazione fisica.

  1. Servizio Metastore: la risorsa di regione di primo livello in Google Cloud.
  2. Catalogo: un container per raggruppare i database, che corrispondono ai progetti.
  3. Spazio dei nomi: un raggruppamento logico di tabelle. In BigQuery, questa mappatura corrisponde a un set di dati.
  4. Tabella: l'entità specifica che punta ai dati in Cloud Storage. I metadati della tabella contengono informazioni come lo schema della tabella, le informazioni di partizionamento, le proprietà personalizzate e un puntatore allo stato attuale della tabella tramite un file metadata.json.

Sequenza di elaborazione delle query

Quando invii una query a una tabella BigLake, la richiesta segue un percorso specifico per applicare le policy prima che i dati vengano letti.

  1. Richiesta: invii una query SQL a un motore (ad esempio Spark).
  2. Ricerca dei metadati: il motore invia una richiesta a BigLake Metastore per risolvere la tabella.
  3. Autenticazione e policy: il metastore ti autentica e controlla le autorizzazioni.
  4. Risposta: il metastore restituisce i metadati e, facoltativamente, un token di archiviazione al motore. I token di archiviazione vengono utilizzati solo quando è abilitata la distribuzione delle credenziali.
  5. Lettura: il motore utilizza il token per leggere i file direttamente dallo spazio di archiviazione.
  6. Calcolo: il motore elabora i dati e restituisce i risultati.

BigLake Metastore

BigLake Metastore è un metastore completamente gestito e serverless per la tua lakehouse su Google Cloud. Fornisce un'unica fonte di verità per i metadati provenienti da più origini ed è accessibile da BigQuery e da vari motori di elaborazione dei dati aperti, il che elimina la necessità di sincronizzare i metadati tra repository diversi.

BigLake Metastore è supportato da Knowledge Catalog, che fornisce controlli di accesso unificati e granulari su tutti i motori supportati e supporta la governance end-to-end con derivazione, qualità dei dati e rilevabilità.

Tipi di tabella

Quando crei una lakehouse su BigLake, hai diverse opzioni per il formato e la gestione delle tabelle:

Consigliato

  • Tabelle BigLake Iceberg: tabelle Iceberg create da motori open source e archiviate in Cloud Storage.

Altri tipi di tabella

  • Tabelle BigLake Iceberg in BigQuery: tabelle Iceberg create da BigQuery. I metadati di queste tabelle vengono archiviati nel catalogo BigQuery e sono accessibili solo tramite la federazione del catalogo BigQuery, mentre i dati delle tabelle e i metadati fisici vengono archiviati in Cloud Storage.
  • Tabelle BigQuery standard: tabelle completamente gestite da BigQuery che possono essere collegate a BigLake Metastore.
  • Tabelle esterne: tabelle esterne a BigLake Metastore in cui i dati e i metadati sono autogestiti.

Per un confronto dettagliato di queste opzioni, consulta la panoramica delle tabelle.

Passaggi successivi