Ringkasan tampilan logis dan tampilan terwujud

BigQuery mendukung dua jenis tampilan, yaitu tampilan logis (standar) dan tampilan terwujud, yang memiliki antarmuka kueri yang sama, tetapi berbeda dalam mekanisme, performa, dan biaya yang mendasarinya. Dokumen ini membandingkan karakteristik, manfaat, dan batasan setiap jenis untuk membantu Anda memilih tampilan yang tepat untuk workload Anda.

Tampilan logis

Tampilan logis (standar) adalah tabel virtual yang ditentukan oleh kueri SQL. Tampilan ini tidak menyimpan data fisik apa pun. Sebagai gantinya, tabel virtual menyimpan logika kueri yang diperlukan untuk mengambil data dari tabel dasar yang mendasarinya. Saat Anda membuat kueri tampilan logis, mesin kueri BigQuery akan memperluas tampilan ke kueri yang mendasarinya. Proses ini berarti BigQuery menjalankan ulang tampilan setiap kali dipanggil.

Manfaat tampilan logis meliputi:

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

Tampilan terwujud

Tampilan terwujud adalah tampilan yang telah dihitung sebelumnya yang secara berkala menyimpan hasil kueri SQL. Tidak seperti tampilan logis, tampilan terwujud menyimpan data yang dihitung 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 melakukan pra-pemrosesan kueri dan dapat mengurangi biaya komputasi untuk kueri yang sering digunakan.

Tampilan terwujud BigQuery menggabungkan kecepatan data yang telah dihitung sebelumnya dengan akurasi tampilan langsung. Mereka mencapai hal ini melalui:

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

Perbandingan tampilan logis dan tampilan terwujud

Meskipun tampilan logis adalah jenis tampilan default, jika Anda sering membuat kueri tampilan yang besar atau mahal secara komputasi, sebaiknya pertimbangkan untuk membuat tampilan terwujud. Tampilan logis bersifat virtual dan memberikan referensi yang dapat digunakan kembali ke kumpulan data, tetapi tidak menyimpan data apa pun secara fisik. Tampilan terwujud ditentukan menggunakan SQL, seperti tampilan logis, tetapi menyimpan data secara fisik yang digunakan BigQuery untuk meningkatkan performa.

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 Prakomputasi; pemuatan ulang latar belakang
Keusangan Data Tidak pernah Opsional 1 (melalui pemuatan ulang)
Performa Variabel (bergantung pada tabel dasar) 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. Mengganti nama kolom yang rumit menjadi istilah yang mudah dipahami bisnis bagi pengguna non-teknis.
  • Pengembangan cepat. Gunakan saat logika berubah-ubah dan Anda tidak ingin mengelola overhead penyimpanan fisik.
  • Sumber data gabungan. Menyediakan sumber data untuk alat visualisasi seperti Data Studio atau berbagi BigQuery (sebelumnya Analytics Hub).

Kapan harus menggunakan tampilan terwujud

  • Pra-pemrosesan data. Tingkatkan performa kueri dengan menyiapkan agregat, filter, gabungan, dan cluster.
  • Akselerasi dasbor. Memberdayakan alat BI seperti Looker yang sering mengkueri 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 yang berulang dan mahal pada set data besar.

Tampilan yang diberi otorisasi

Anda juga dapat membuat tabel virtual yang diotorisasi untuk membagikan subset data dari set data sumber ke tabel virtual di set data sekunder. Kemudian, Anda dapat membagikan tampilan ini kepada pengguna dan grup (akun utama) tertentu yang dapat melihat data yang Anda bagikan dan menjalankan kueri di dalamnya, tetapi tidak dapat mengakses set data sumber secara langsung.

Anda dapat membuat tampilan yang diizinkan untuk tampilan logis atau tampilan terwujud. Tampilan yang diotorisasi untuk tampilan terwujud disebut tampilan terwujud yang diotorisasi.

Praktik terbaik

Untuk lingkungan BigQuery yang dirancang dengan 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 tabel virtual MATERIALIZED_VIEWS.

Langkah berikutnya