Risolvere i problemi comuni di Lakehouse senza bordi

Puoi diagnosticare e risolvere gli errori in Lakehouse senza confini e nelle risorse associate, inclusi i problemi relativi alle query delle tabelle di metadati, ai limiti delle dimensioni dei file metadata.json e alle configurazioni del catalogo multiregionale. La risoluzione di questi problemi ti aiuta a ripristinare le operazioni sulle tabelle e l'esecuzione delle query nei workload del lakehouse.

Impossibile eseguire query sulle tabelle dei metadati

Questo problema si verifica quando esegui query su tabelle di metadati, come .snapshots o .files, per le tabelle Apache Iceberg supportate dal catalogo di runtime Lakehouse in BigQuery utilizzando un identificatore del nome composto da cinque parti.

Per risolvere il problema, esegui query su queste tabelle utilizzando Apache Spark.

Limite di dimensione del file metadata.json

La dimensione del file Apache Iceberg metadata.json è limitata a 1 MB. Questo limite si applica al file di metadati che monitora gli snapshot, gli schemi e le specifiche di partizione delle tabelle. Se il file dei metadati supera queste dimensioni, potresti riscontrare errori durante l'esecuzione di operazioni sulle tabelle tramite l'endpoint del catalogo REST Apache Iceberg.

Per risolvere il problema, richiedi un aumento del limite contattando il team degli Account Google.

Errori NOT_FOUND durante l'esecuzione di query su cataloghi multiregionali

Questo problema si verifica quando crei un catalogo nel catalogo di runtime Lakehouse utilizzando un bucket Cloud Storage multiregionale senza specificare una località principale e poi tenti di eseguire una query sul catalogo specificando una regione virtuale BigQuery (ad esempio US o EU).

Quando un catalogo viene creato con un bucket multiregionale, i suoi metadati vengono archiviati in località regionali specifiche all'interno dell'ambito geografico della multiregione, anziché nella regione virtuale BigQuery corrispondente. Se forzi l'esecuzione di una query in una regione virtuale in cui i metadati non sono presenti, la query non va a buon fine e viene visualizzato un errore NOT_FOUND.

Per risolvere il problema, specifica la località principale (ad esempio US o EU) quando crei il catalogo. Per saperne di più, consulta Specifica le regioni principali per le multi-regioni degli Stati Uniti e dell'UE.

I job di ottimizzazione dello spazio di archiviazione non vengono visualizzati in INFORMATION_SCHEMA.JOBS

Questo problema si verifica quando attivi la gestione delle tabelle su una tabella Apache Iceberg ed esegui mutazioni dei dati (come inserimenti o istruzioni DML), ma nella vista INFORMATION_SCHEMA.JOBS non vengono visualizzati job di ottimizzazione dello spazio di archiviazione (come CALL BQ.OPTIMIZE_STORAGE). Per saperne di più sull'esecuzione di query su questi job, consulta Recupera i job di ottimizzazione dello spazio di archiviazione Iceberg.

Questo comportamento è previsto quando l'ottimizzazione dello spazio di archiviazione viene saltata. La gestione delle tabelle valuta il layout della tabella dopo le mutazioni dei dati ed esegue i job di ottimizzazione solo quando i file di dati richiedono la compattazione o la ristrutturazione. Poiché i job di gestione delle tabelle in background vengono eseguiti nel tuo progetto e consumano risorse di computing, BigQuery non riscrive i dati quando il layout della tabella è già ottimizzato. L'ottimizzazione viene saltata nelle seguenti condizioni:

  • I file sono già ottimali: i file di dati esistenti sono già vicini o superiori alle dimensioni del file target (la dimensione media non compressa è almeno il 50% di 256 MB).
  • Soglie non soddisfatte: la tabella non ha accumulato un numero sufficiente di file di piccole dimensioni o non soddisfa la soglia di dimensioni (ad esempio una dimensione totale della tabella superiore a 1 GB) richiesta per la compattazione.

Quando l'ottimizzazione dello spazio di archiviazione viene saltata, non viene eseguito alcun job in background e non viene registrata alcuna voce in INFORMATION_SCHEMA.JOBS.

Se le prestazioni delle query soddisfano i tuoi requisiti e i file hanno già le dimensioni appropriate, non è necessaria alcuna azione. L'ottimizzazione dello spazio di archiviazione viene eseguita automaticamente quando le scritture future causano una frammentazione sufficiente dei file.

Per osservare i job di ottimizzazione dello spazio di archiviazione in un ambiente di test, simula la frammentazione dei file inserendo più piccoli batch di dati nel tempo in una tabella di dimensioni superiori a 1 GB.