Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengoptimalkan kueri sederhana pada dua tabel besar

Sejauh yang saya tahu, cara terbaik untuk membuat kueri seperti itu "secepat kilat", adalah membuat tabel ringkasan yang melacak tampilan halaman teman per halaman per pembuat.

Anda mungkin ingin tetap up-to-date dengan pemicu. Kemudian agregasi Anda sudah selesai untuk Anda, dan ini adalah kueri sederhana untuk mendapatkan halaman yang paling banyak dilihat. Anda dapat memastikan bahwa Anda memiliki indeks yang tepat pada tabel ringkasan, sehingga database bahkan tidak perlu mengurutkan untuk mendapatkan yang paling banyak dilihat.

Tabel ringkasan adalah kunci untuk mempertahankan kinerja yang baik untuk kueri tipe agregasi di lingkungan yang paling banyak dibaca. Anda melakukan pekerjaan di muka, ketika pembaruan terjadi (jarang) dan kemudian kueri (sering) tidak perlu melakukan pekerjaan apa pun.

Jika statistik Anda tidak harus sempurna, dan penulisan Anda sebenarnya cukup sering (yang mungkin terjadi untuk sesuatu seperti tampilan halaman), Anda dapat mengumpulkan tampilan dalam memori dan memprosesnya di latar belakang, sehingga teman-teman tidak 't harus mengambil hit menjaga tabel ringkasan up-to-date, karena mereka melihat halaman. Solusi tersebut juga mengurangi pertentangan di database (lebih sedikit proses yang memperbarui tabel ringkasan).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Beberapa baris sebagai baris tunggal yang dipisahkan koma

  2. LEFT OUTER JOIN dengan syarat (dimana, order by)?

  3. Cara menambah panjang String di mysql saat memetakan menggunakan JPA

  4. MySQL vs MongoDB

  5. Butuh saran dan umpan balik tentang pengkodean hubungan banyak:banyak di MySQL