Ringkasan tampilan logis dan terwujud

Dokumen ini menjelaskan dan membandingkan tampilan logis dan terwujud di BigQuery. Dalam data warehousing modern, tampilan berfungsi sebagai lapisan abstraksi penting antara data mentah dan business intelligence. Dalam BigQuery, arsitek biasanya memilih antara dua jenis: tampilan logis (standar) dan tampilan terwujud. Meskipun tampilan ini memiliki antarmuka yang sama, mekanisme yang mendasarinya, profil performa, dan implikasi biayanya berbeda.

Tampilan logis

Tampilan logis (standar) adalah tabel virtual yang ditentukan oleh kueri SQL. Tampilan ini tidak menyimpan data fisik apa pun; melainkan menyimpan logika kueri yang diperlukan untuk mengambil data dari tabel dasar pokok.

Saat Anda membuat kueri tabel virtual logis, mesin kueri BigQuery akan memperluas tabel virtual menjadi kueri pokoknya. Proses ini berarti BigQuery menjalankan kembali tampilan setiap kali tampilan dipanggil.

Manfaat tampilan logis meliputi:

  • Tidak ada overhead penyimpanan. Karena tidak ada data tambahan yang disimpan, Anda hanya membayar penyimpanan tabel dasar.
  • Akurasi real-time. Karena kueri berjalan pada waktu eksekusi, hasil selalu mencerminkan status tabel dasar yang paling baru.
  • Abstraksi logis. Menyederhanakan gabungan yang kompleks atau menerapkan keamanan tingkat baris tanpa menduplikasi data.
  • Fleksibilitas SQL. Mendukung rentang lengkap BigQuery SQL, termasuk fungsi jendela yang kompleks, fungsi yang ditentukan pengguna (UDF), dan semua jenis gabungan.

Tampilan terwujud

Tampilan terwujud adalah tampilan yang telah dihitung sebelumnya yang secara berkala menyimpan hasil kueri SQL. Tidak seperti tampilan logis, tampilan ini menyimpan data yang dikomputasi secara fisik, sehingga BigQuery dapat menyajikan hasil lebih cepat tanpa memproses data dasar mentah berulang kali. Hal ini dapat mengurangi latensi kueri untuk set data besar dengan memproses kueri terlebih dahulu dan dapat mengurangi biaya komputasi untuk kueri yang sering digunakan.

Tampilan terwujud BigQuery menggabungkan kecepatan data yang telah dikomputasi sebelumnya dengan akurasi tampilan langsung. Mereka mencapainya melalui hal berikut:

  • Pemuatan ulang otomatis. Proses latar belakang memperbarui tampilan terwujud saat tabel dasar berubah.
  • Keaktualan data. Jika kueri terjadi saat pemuatan ulang di latar belakang tertunda, BigQuery akan otomatis mengompensasi perubahan tabel dasar yang belum diproses untuk memberikan hasil terbaru.
  • Penyesuaian cerdas. Pengoptimal kueri dapat otomatis mengalihkan kueri dari tabel dasar ke tampilan terwujud jika menentukan bahwa tampilan terwujud dapat memberikan jawaban secara lebih efisien.

Perbandingan

Tabel berikut merangkum kesamaan dan perbedaan antara tampilan logis dan tampilan terwujud BigQuery:

Dimensi Tampilan logis Tampilan terwujud
Persistensi Data Tidak ada (virtual) Fisik (disimpan di disk)
Eksekusi Setiap kali tampilan dipanggil Sudah dihitung sebelumnya; refresh latar belakang
Keterlambatan Data Tidak pernah Opsional 1 (melalui pembaruan)
Performa Variabel (tabel dasar bergantung) Konsisten dan cepat
Kompleksitas SQL Tidak terbatas Terbatas
Dioptimalkan Untuk Keamanan dan abstraksi Pengurangan kecepatan dan biaya
Biaya pemeliharaan & penyimpanan Tidak Ya

1 Opsi --max_staleness meningkatkan performa kueri dengan biaya yang terkontrol saat memproses set data yang besar dan sering berubah.

Kapan harus menggunakan tampilan logis

  • Pelapisan semantik. Ganti nama kolom yang kompleks menjadi istilah yang mudah dipahami untuk pengguna non-teknis.
  • Pengembangan cepat. Gunakan saat logika sedang berubah dan Anda tidak ingin mengelola overhead penyimpanan fisik.
  • Sumber data gabungan. Menyediakan sumber data untuk alat visualisasi seperti Looker Studio atau BigQuery sharing (sebelumnya Analytics Hub).

Kapan tampilan terwujud digunakan

  • Memproses data terlebih dahulu. Tingkatkan performa kueri dengan menyiapkan agregasi, filter, gabungan, dan cluster.
  • Akselerasi dasbor. Mendukung alat BI seperti Looker yang sering membuat kueri metrik gabungan yang sama—misalnya, pengguna aktif harian.
  • Analisis real-time pada streaming besar. Dapat memberikan respons yang lebih cepat pada tabel yang menerima data streaming berkecepatan tinggi.
  • Pengelolaan biaya. Mengurangi biaya kueri berulang yang mahal pada set data besar.

Praktik terbaik

Untuk lingkungan BigQuery yang memiliki arsitektur baik, tampilan logis adalah alat yang berguna untuk menggabungkan data yang Anda butuhkan. Cadangkan tampilan terwujud untuk digunakan sebagai alat pengoptimalan performa untuk pola kueri tertentu dengan traffic tinggi yang melibatkan agregasi berat.

Untuk mempelajari cara memantau penggunaan dan performa tampilan terwujud, lihat tampilan MATERIALIZED_VIEWS.

Langkah berikutnya