Membuat tampilan terwujud di Amazon Redshift - Amazon Redshift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat tampilan terwujud di Amazon Redshift

Dalam lingkungan gudang data, aplikasi sering harus melakukan kueri kompleks pada tabel besar. Contohnya adalah SELECT pernyataan yang melakukan gabungan multi-tabel dan agregasi pada tabel yang berisi miliaran baris. Memproses kueri ini bisa mahal, dalam hal sumber daya sistem dan waktu yang diperlukan untuk menghitung hasilnya.

Tampilan terwujud di Amazon Redshift menyediakan cara untuk mengatasi masalah ini. Tampilan terwujud berisi kumpulan hasil yang telah dihitung sebelumnya, berdasarkan SQL kueri di atas satu atau beberapa tabel dasar. Anda dapat mengeluarkan SELECT pernyataan untuk menanyakan tampilan terwujud, dengan cara yang sama seperti Anda dapat menanyakan tabel atau tampilan lain dalam database. Amazon Redshift mengembalikan hasil yang telah dihitung sebelumnya dari tampilan terwujud, tanpa harus mengakses tabel dasar sama sekali. Dari sudut pandang pengguna, hasil kueri dikembalikan jauh lebih cepat dibandingkan saat mengambil data yang sama dari tabel dasar.

Tampilan terwujud sangat berguna untuk mempercepat kueri yang dapat diprediksi dan diulang. Alih-alih melakukan kueri intensif sumber daya terhadap tabel besar (seperti agregat atau beberapa gabungan), aplikasi dapat menanyakan tampilan yang terwujud dan mengambil kumpulan hasil yang telah dihitung sebelumnya. Misalnya, pertimbangkan skenario di mana satu set kueri digunakan untuk mengisi dasbor, seperti Amazon. QuickSight Kasus penggunaan ini ideal untuk tampilan yang terwujud, karena kueri dapat diprediksi dan diulang berulang kali.

Anda dapat menentukan tampilan terwujud dalam hal pandangan terwujud lainnya. Gunakan pandangan terwujud pada pandangan yang terwujud untuk memperluas kemampuan pandangan yang terwujud. Dalam pendekatan ini, tampilan terwujud yang ada memainkan peran yang sama sebagai tabel dasar untuk kueri untuk mengambil data.

Pendekatan ini sangat berguna untuk menggunakan kembali gabungan yang telah dihitung sebelumnya untuk opsi agregat atau BY yang berbeda. GROUP Misalnya, ambil tampilan terwujud yang menggabungkan informasi pelanggan (berisi jutaan baris) dengan informasi detail pesanan item (berisi miliaran baris). Ini adalah kueri mahal untuk dihitung berdasarkan permintaan berulang kali. Anda dapat menggunakan opsi GROUP BY yang berbeda untuk tampilan terwujud yang dibuat di atas tampilan terwujud ini dan bergabung dengan tabel lain. Melakukan hal ini menghemat waktu komputasi jika tidak digunakan untuk menjalankan gabungan dasar yang mahal setiap saat. STV_MV_DEPSTabel menunjukkan dependensi dari tampilan terwujud pada pandangan terwujud lainnya.

Saat Anda membuat tampilan terwujud, Amazon Redshift menjalankan pernyataan yang SQL ditentukan pengguna untuk mengumpulkan data dari tabel dasar atau tabel dan menyimpan kumpulan hasil. Ilustrasi berikut memberikan gambaran umum tentang tampilan terwujud tickets_mv yang didefinisikan oleh SQL kueri dengan menggunakan dua tabel dasar, dan. events sales

Materialized view diagram showing data flow from events and sales tables to tickets_mv view.

Anda kemudian dapat menggunakan tampilan terwujud ini dalam kueri untuk mempercepatnya. Selain itu, Amazon Redshift dapat secara otomatis menulis ulang kueri ini untuk menggunakan tampilan terwujud, bahkan ketika kueri tidak secara eksplisit mereferensikan tampilan yang terwujud. Penulisan ulang kueri secara otomatis sangat kuat dalam meningkatkan kinerja saat Anda tidak dapat mengubah kueri untuk menggunakan tampilan terwujud.

Untuk memperbarui data dalam tampilan terwujud, Anda dapat menggunakan REFRESH MATERIALIZED VIEW pernyataan kapan saja untuk menyegarkan tampilan terwujud secara manual. Amazon Redshift mengidentifikasi perubahan yang terjadi di tabel dasar atau tabel, lalu menerapkan perubahan tersebut ke tampilan terwujud. Karena penulisan ulang kueri secara otomatis memerlukan tampilan terwujud untuk diperbarui, sebagai pemilik tampilan terwujud, pastikan untuk menyegarkan tampilan yang terwujud setiap kali tabel dasar berubah.

Amazon Redshift menyediakan beberapa cara untuk menjaga tampilan terwujud tetap mutakhir untuk penulisan ulang otomatis. Anda dapat mengonfigurasi tampilan terwujud dengan opsi penyegaran otomatis untuk menyegarkan tampilan terwujud saat tabel dasar tampilan terwujud diperbarui. Operasi autorefresh ini berjalan pada saat sumber daya cluster tersedia untuk meminimalkan gangguan pada beban kerja lainnya. Karena penjadwalan autorefresh bergantung pada beban kerja, Anda dapat memiliki kontrol lebih besar saat Amazon Redshift menyegarkan tampilan terwujud Anda. Anda dapat menjadwalkan pekerjaan penyegaran tampilan terwujud dengan menggunakan API penjadwal Amazon Redshift dan integrasi konsol. Untuk informasi selengkapnya tentang penjadwalan kueri, lihat Menjadwalkan kueri di konsol Amazon Redshift.

Melakukan hal ini sangat berguna ketika ada persyaratan perjanjian tingkat layanan (SLA) untuk up-to-date data dari tampilan yang terwujud. Anda juga dapat menyegarkan tampilan terwujud secara manual yang dapat Anda autorefresh. Untuk informasi tentang cara membuat tampilan terwujud, lihatCREATE MATERIALIZED VIEW.

Anda dapat mengeluarkan SELECT pernyataan untuk menanyakan tampilan terwujud. Untuk informasi tentang cara menanyakan tampilan terwujud, lihatMenanyakan tampilan yang terwujud. Hasil set akhirnya menjadi basi ketika data dimasukkan, diperbarui, dan dihapus dalam tabel dasar. Anda dapat menyegarkan tampilan terwujud kapan saja untuk memperbaruinya dengan perubahan terbaru dari tabel dasar. Untuk informasi tentang cara menyegarkan tampilan terwujud, lihatREFRESH MATERIALIZED VIEW.

Untuk detail tentang SQL perintah yang digunakan untuk membuat dan mengelola tampilan terwujud, lihat topik perintah berikut:

Untuk informasi tentang tabel sistem dan tampilan untuk memantau tampilan terwujud, lihat topik berikut: