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

mysql lambat pada kueri pertama, lalu cepat untuk kueri terkait

Halaman file data innodb di-cache di kumpulan buffer innodb. Ini adalah apa yang Anda harapkan. Membaca file lambat, bahkan pada hard drive yang bagus, terutama pembacaan acak yang sebagian besar dilihat oleh basis data.

Mungkin kueri pertama Anda melakukan semacam pemindaian tabel yang menarik banyak halaman ke dalam kumpulan buffer, lalu mengaksesnya dengan cepat. Atau yang serupa.

Inilah yang saya harapkan.

Idealnya, gunakan mesin yang sama untuk semua tabel (pengecualian:tabel sistem, tabel sementara (mungkin) dan tabel yang sangat kecil atau yang berumur pendek). Jika Anda tidak melakukan ini maka mereka harus berjuang untuk mendapatkan ram.

Dengan asumsi semua tabel Anda adalah innodb, buat kumpulan buffer menggunakan hingga 75% dari ram fisik server (dengan asumsi Anda tidak menjalankan terlalu banyak tugas lain di mesin).

Kemudian Anda akan dapat memasukkan sekitar 12G database Anda ke dalam ram, jadi setelah "pemanasan", 12G database Anda yang "paling sering digunakan" akan berada di ram, yang mengaksesnya dengan baik dan cepat.

Beberapa pengguna mysql cenderung untuk "memanaskan" server produksi setelah restart dengan mengirimkan kueri yang disalin dari komputer lain untuk sementara waktu (ini akan menjadi budak replikasi) sampai mereka menambahkannya ke kumpulan produksi mereka. Ini menghindari kelambatan ekstrem yang terlihat saat cache dingin. Misalnya, Youtube melakukan ini (atau setidaknya dulu; Google membelinya dan mereka sekarang dapat menggunakan Google-fu)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana Saya Bisa MEMILIH Baris Serupa di Dua Tabel Berbeda di MySQL (Apakah Mungkin?)

  2. java.sql.SQLException:Tidak ada database yang dipilih - mengapa?

  3. Kembalikan nilai default jika satu baris tidak ditemukan

  4. Bagaimana cara mendapatkan id kenaikan otomatis berikutnya di mysql

  5. Mengindeks bidang boolean