Cara terbaik untuk membuat tampilan terwujud di MySQL
18
Saya menggunakan MySQL 5.6. Saya tidak bisa membuat tampilan terwujud seperti yang saya bisa di Oracle. Saya telah melihat satu atau dua solusi seperti Flexview.
Adakah yang bisa memberi tahu saya cara terbaik untuk membuat tampilan terwujud di MySQL (refresh otomatis seperti di Oracle) dengan kompleksitas minimal?
Karena Anda sudah memilikinya, uji tuntas dan minyak siku pada bagian Anda mungkin perlu untuk mulai menggunakannya (jika Anda belum melakukannya)
ALTERNATIF # 1
Anda mungkin melihat ke pengaturan Tabel Ringkasan. Anda perlu mengindeks tabel dasar Anda untuk mendukung agregasi sebelum membangun Tabel Ringkasan.
ALTERNATIF # 2
Berikut ini adalah posting lama dari http://www.materialized.info/ yang memiliki strategi lebih sederhana yang terlihat menarik. Ini melibatkan penggunaan pemicu. Sepertinya itu bisa menyenangkan ...
ALTERNATIF # 3
Jika tabel dasar Anda tidak sebesar itu dan Anda bisa hidup dengan menanyakan seluruh tabel seminggu sekali, coba User Commentsbagian Dokumentasi MySQL di CREATE VIEW untuk mendapatkan ide. Cari kata materializeddi halaman itu.
Jika sebagian besar data dasar Anda stabil atau Anda dapat mentolerir perbedaan antara tampilan dan data, maka pertimbangkan untuk menggunakan alat rolap sederhana , yang saya tulis untuk mengatasi kasus penggunaan ini. Ini memungkinkan Anda untuk menulis dalam file terpisah query SQL kompleks yang menghasilkan tabel. Hubungan antara kueri diturunkan secara otomatis dan kueri dieksekusi dalam urutan yang sesuai melalui alat make Unix . Untuk menyegarkan tabel yang dihasilkan, Anda harus menjalankan make clean all. Alat ini sebagian besar berguna untuk secara bertahap membangun kueri canggih yang mengeksekusi secara efisien berdasarkan hasil input yang telah dihitung sebelumnya.
Saya menemukan 2 solusi yang mungkin untuk memiliki pandangan terwujud dalam MySQL:
Buat tabel agregasi dengan semua data yang diperlukan dan kemudian buat pemicu pada tabel tempat data berasal.
Buat penjadwal yang secara berkala mengumpulkan data ke dalam tabel
Lihat detail lebih lanjut tentang cara menerapkan 2 opsi di posting blog saya di sini: tampilan terwujud MySQL
sumber
Jika sebagian besar data dasar Anda stabil atau Anda dapat mentolerir perbedaan antara tampilan dan data, maka pertimbangkan untuk menggunakan alat rolap sederhana , yang saya tulis untuk mengatasi kasus penggunaan ini. Ini memungkinkan Anda untuk menulis dalam file terpisah query SQL kompleks yang menghasilkan tabel. Hubungan antara kueri diturunkan secara otomatis dan kueri dieksekusi dalam urutan yang sesuai melalui alat make Unix . Untuk menyegarkan tabel yang dihasilkan, Anda harus menjalankan
make clean all
. Alat ini sebagian besar berguna untuk secara bertahap membangun kueri canggih yang mengeksekusi secara efisien berdasarkan hasil input yang telah dihitung sebelumnya.sumber