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

Bagaimana cara mengoptimalkan indeks mysql sehingga operasi INSERT terjadi dengan cepat pada tabel besar dengan sering menulis dan membaca?

Operasi tulis untuk satu baris ke dalam tabel data tidak ambil 5 detik, tidak peduli seberapa besar tabelnya.

Apakah indeks berkerumun Anda didasarkan pada bidang stempel waktu? Jika tidak, seharusnya begitu, jadi Anda tidak menulis di tengah meja Anda di suatu tempat. Selain itu, pastikan Anda menggunakan tabel InnoDB - MyISAM tidak dioptimalkan untuk penulisan.

Saya akan mengusulkan menulis menjadi dua tabel:satu tabel jangka panjang, satu tabel pelaporan jangka pendek dengan sedikit atau tanpa pengindeksan, yang kemudian dibuang sesuai kebutuhan.

Solusi lain adalah dengan menggunakan memcached atau database dalam memori untuk data pelaporan langsung, sehingga tidak ada hit pada database produksi.

Satu pemikiran lagi:seberapa "hidup" seharusnya salah satu dari laporan ini? Mungkin mengambil daftar baru berdasarkan waktu versus sekali untuk setiap tampilan halaman sudah cukup.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Filter menggunakan tabel banyak-ke-banyak MySQL

  2. Memigrasikan Database MySQL dari CloudSQL Ke AWS RDS

  3. buat daftar pekerjaan favorit menggunakan PHP dan MYSQL

  4. Cara mengkonfigurasi nHibernate dengan lancar dengan MySQL

  5. Dapatkan hanya catatan yang dibuat hari ini di laravel