Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Hiệu suất của MySQL JOIN trên 1 bảng lớn và nhiều bảng nhỏ

Vì đó là mối quan hệ "một với nhiều", tôi sẽ lưu trữ chúng trong một bảng riêng biệt. Trình tối ưu hóa truy vấn máy chủ SQL (ẩn) sẽ có thể phân tích cú pháp 250 bản ghi đủ nhanh để không phải lo lắng. Ngoài ra, tùy thuộc vào độ dài của các giá trị trong bảng nhỏ hơn, bạn sẽ tiết kiệm không gian lưu trữ bằng cách không lưu trữ chúng hàng trăm triệu lần bổ sung. Tuy nhiên, nếu hiệu suất báo cáo là quan trọng hàng đầu, bạn có thể chọn lưu trữ chúng trong một bảng "phẳng" - giống như cấu trúc kho dữ liệu, không có liên kết. Điều đó chắc chắn sẽ nhanh hơn, nhưng bạn sẽ hy sinh không gian lưu trữ và cơ sở dữ liệu quan hệ có cấu trúc độc đáo của mình.

Tất cả những điều đó đã nói, tôi sẽ chọn tùy chọn 1. Nhưng bạn sẽ có thể dễ dàng lưu trữ dữ liệu trong một bảng mới với định dạng tùy chọn 2 - truy vấn cả hai - và sau đó tự đánh giá hiệu suất cho chính bạn. Tôi hy vọng rằng nó sẽ không có nhiều khác biệt, đặc biệt là với dung lượng của các bảng nhỏ hơn của bạn.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự khác biệt và hạn chế động của chuỗi PHP

  2. đăng tên tệp đã đổi tên từ tải lên cơ sở dữ liệu

  3. JPA không cho phép thực thể bao gồm các cột từ nhiều bảng?

  4. Làm thế nào để sử dụng 'khác biệt' trong mô hình zend db

  5. Cách khóa bảng mysql trong php