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

Apa kinerja terbaik untuk Mengambil hasil MySQL EAV sebagai Tabel Relasional?

Cara terbaik untuk mengetahuinya adalah dengan menguji, tentu saja. Jawabannya mungkin berbeda tergantung pada ukuran kumpulan data, jumlah meta-key yang berbeda, distribusinya (apakah semua entitas memiliki nilai untuk semua meta-key? atau hanya untuk beberapa di antaranya?), pengaturan database Anda server dan mungkin banyak faktor lainnya.

Jika saya menebak, saya akan mengatakan bahwa biaya JOIN operasi di opsi 2 akan lebih kecil daripada biaya GROUP BY dan fungsi agregat yang diperlukan dalam opsi 1 dan 3.

Jadi, saya berharap menemukan Opsi 2 lebih cepat dari 1 dan 3.

Untuk mengukur Opsi 4, Anda harus mempertimbangkan lebih banyak faktor karena aplikasi mungkin berada di server lain sehingga beban dari dua server (db dan aplikasi) dan jumlah klien yang akan meminta hasil ini harus diperhitungkan .

Sidenote:Anda memerlukan GROUP BY e.ID di opsi 1 dan 3.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP PDO MySQL query SEPERTI -> beberapa kata kunci

  2. Sintaks SQL DROP DATABASE – Didaftarkan oleh DBMS

  3. Menulis Query MySQL yang Kompleks

  4. MySQL - Memilih Kolom bukan di Grup By

  5. Load balancing dengan ProxySQL Untuk Percona XtraDB Cluster