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

InnoDB (MySQL 5.5.8) có phải là lựa chọn phù hợp cho nhiều tỷ hàng không?

Một câu trả lời đơn giản cho câu hỏi của bạn là có InnoDB sẽ là lựa chọn hoàn hảo cho tập dữ liệu nhiều tỷ hàng.

Có một loạt các tối ưu hóa có thể thực hiện được.

Các tối ưu hóa rõ ràng nhất sẽ là thiết lập một vùng đệm lớn, vì vùng đệm là điều quan trọng nhất khi nói đến InnoDB vì InnoDB đệm dữ liệu cũng như chỉ mục trong vùng đệm. Nếu bạn có một máy chủ MySQL chuyên dụng chỉ có các bảng InnoDB, thì bạn nên thiết lập tối đa 80% RAM khả dụng để InnoDB sử dụng.

Một cách tối ưu hóa quan trọng nhất khác là có các chỉ mục phù hợp trên bảng (hãy ghi nhớ mẫu truy cập / cập nhật dữ liệu), cả chính và phụ. (Hãy nhớ rằng các chỉ mục chính được tự động thêm vào các chỉ mục phụ).

Với InnoDB có một số tính năng bổ sung, chẳng hạn như bảo vệ khỏi hỏng dữ liệu, tự động khôi phục, v.v.

Để tăng hiệu suất ghi, bạn nên thiết lập các tệp nhật ký giao dịch của mình để có tổng cộng tối đa là 4G.

Một điều khác mà bạn có thể làm là phân vùng bảng.

Bạn có thể nâng cao hiệu suất hơn bằng cách đặt định dạng bin-log-log thành "hàng" và đặt auto_inc_lock_mode thành 2 (điều đó sẽ đảm bảo rằng innodb không giữ các khóa cấp bảng khi chèn vào các cột tăng tự động).

Nếu cần tư vấn cụ thể bạn có thể liên hệ với tôi, tôi rất sẵn lòng giúp đỡ.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cắt ngắn tất cả các bảng trong cơ sở dữ liệu MySQL trong một lệnh?

  2. Left Join vượt trội hơn Inner Join?

  3. Nhóm theo truy vấn chọn mysql union

  4. Có giới hạn nào đối với độ dài của truy vấn trong mysql không?

  5. Câu lệnh MYSQL IN