sales_transaction_header ve sales_transaction_line adlı iki büyük tablo birbirine sıkıca bağlıdır, yüklendikten sonra değişmezdir ve sıklıkla birleştirilir. Analiz performansını optimize etmek için bunları BigQuery'de nasıl modellemelisiniz?
Bir cevap seçin
Cevabınızı kontrol etmek için bir seçeneğe dokunun.
Doğru cevap: sales_transaction_header bilgilerini satırlar olarak ve sales_transaction_line satırlarını iç içe ve tekrarlanan alanlar olarak tutan bir sales_transaction tablosu oluşturun..
Neden bu cevap
Doğru seçenek, sıkça birleştirilen ve değişmez veriler için BigQuery'nin iç içe ve tekrarlanan alanlar özelliğini kullanır. Bu yaklaşım, ilgili verileri tek bir tabloda tutarak birleştirme maliyetini ortadan kaldırır ve sorgu performansını önemli ölçüde artırır. salestransactionheader bilgileri ana satırda yer alırken, salestransactionline detayları bu ana satırın içinde bir dizi (tekrarlanan) yapı (iç içe) olarak saklanır. Diğer seçenekler şunlardır: salestransactionheader verilerini her satır için tekrarlamak, veri fazlalığına yol açar ve depolama maliyetini artırır. JSON veri türü kullanmak, BigQuery'nin sütun tabanlı depolama ve sorgu optimizasyonlarından tam olarak yararlanmayı engeller, bu da performans düşüşüne neden olabilir. Ayrı tablolar oluşturup birleştirme yapmak, her sorguda birleştirme maliyetine katlanmak anlamına gelir, bu da performans açısından verimsizdir. WHERE yan tümcesindeki sıralama, birleştirme maliyetini kökten çözmez.
Sonsuz cevap arayışı olmadan sınavınızı geçin
Bu sınav için her doğrulanmış soruyu ve açıklamayı tek bir yerde edinin ve saatlerce süren hazırlıktan tasarruf edin. 1.000'den fazla sertifika · 20'den fazla dil · ücretsiz başlayın.
Sınavınızı daha hızlı geçin → Kart gerekmez