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

Arsitektur database untuk jutaan baris baru per hari

Jika Anda berbicara tentang volume data yang lebih besar, lihat Partisi MySQL . Untuk tabel ini, partisi berdasarkan data/waktu tentu akan membantu kinerja. Ada artikel bagus tentang mempartisi di sini .

Lihat pembuatan dua database terpisah:satu untuk semua data mentah untuk penulisan dengan pengindeksan minimal; sedetik untuk pelaporan menggunakan nilai agregat; dengan proses batch untuk memperbarui database pelaporan dari database data mentah, atau menggunakan replikasi untuk melakukannya untuk Anda.

EDIT

Jika Anda ingin benar-benar pintar dengan laporan agregasi Anda, buat satu set tabel agregasi ("hari ini", "minggu ke tanggal", "bulan ke tanggal", "menurut tahun"). Agregat dari data mentah ke "hari ini" baik setiap hari atau dalam "waktu nyata"; agregat dari "berdasarkan hari" ke "minggu sampai saat ini" setiap malam; dari "minggu hingga tanggal" hingga "bulan hingga tanggal" setiap minggu, dll. Saat menjalankan kueri, gabungkan (UNION) tabel yang sesuai untuk rentang tanggal yang Anda minati.

EDIT #2

Daripada satu tabel per klien, kami bekerja dengan satu skema database per klien. Bergantung pada ukuran klien, kami mungkin memiliki beberapa skema dalam satu instans database, atau satu instans database khusus per klien. Kami menggunakan skema terpisah untuk pengumpulan data mentah, dan untuk agregasi/pelaporan untuk setiap klien. Kami menjalankan beberapa server basis data, membatasi setiap server ke satu contoh basis data. Untuk ketahanan, database direplikasi di beberapa server dan beban seimbang untuk meningkatkan kinerja.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Manakah pengkodean karakter terbaik untuk bahasa Jepang untuk tampilan DB, php, dan html?

  2. Bagaimana memilih catatan 3 menit terakhir dari MySQL dengan PHP

  3. Rangkaian konfigurasi CodeIgniter dan dukungan UTF-8

  4. cara menggunakan fungsi kanonik di Entity Framework dan Mysql

  5. Cara menentukan versi MySQL