Due tabelle di grandi dimensioni, sales_transaction_header e sales_transaction_line, sono strettamente accoppiate, immutabili dopo il caricamento e frequentemente unite. Per ottimizzare le prestazioni analitiche, come dovresti modellarle in BigQuery?
Scegli una risposta
Tocca un'opzione per controllare la tua risposta.
Risposta corretta: Crea una tabella sales_transaction che contenga le informazioni di sales_transaction_header come righe e le righe di sales_transaction_line come campi annidati e ripetuti..
Perché questa è la risposta
La modellazione con campi annidati e ripetuti (nested and repeated fields) è la pratica migliore in BigQuery per dati strettamente accoppiati e frequentemente uniti, come le transazioni di vendita e le relative righe. Questo approccio denormalizza i dati in un'unica tabella, riducendo i costi e migliorando le prestazioni delle query eliminando la necessità di JOIN costose. L'opzione di duplicare i dati di salestransactionheader per ogni riga di salestransactionline aumenterebbe inutilmente la dimensione della tabella e i costi di archiviazione. L'archiviazione come tipo di dati JSON non sfrutterebbe le ottimizzazioni di BigQuery per i campi annidati e ripetuti e renderebbe le query più complesse. Mantenere tabelle separate e specificare salestransactionline per prima nella clausola WHERE non eliminerebbe il costo delle JOIN, che è l'obiettivo principale per ottimizzare le prestazioni analitiche in questo scenario.
Supera il tuo esame — senza l'infinita caccia alle risposte
Ottieni ogni domanda e spiegazione verificata per questo esame in un unico posto, e risparmia ore di preparazione. Oltre 1.000 certificazioni · Oltre 20 lingue · Inizia gratuitamente.
Supera il tuo esame più velocemente → Nessuna carta richiesta