Đó có thể là thời điểm để phân vùng theo chiều ngang và di chuyển trường đốm màu vào một bảng riêng biệt. Trong bài viết này này trong 'Lưu ý nhanh về phân vùng theo chiều dọc', tác giả xóa trường varchar lớn hơn khỏi bảng và nó làm tăng tốc độ truy vấn về thứ tự độ lớn.
Lý do là quá trình truyền dữ liệu trên đĩa trở nên nhanh hơn đáng kể nếu có ít không gian hơn để bao phủ, vì vậy việc di chuyển các trường lớn hơn ở nơi khác sẽ tăng hiệu suất.
Ngoài ra (và có thể bạn đã làm điều đó) sẽ có lợi khi giảm kích thước cột chỉ mục của bạn xuống mức tối thiểu tuyệt đối (char (32) trong mã hóa ascii cho md5), bởi vì kích thước của khóa tỷ lệ thuận với tốc độ sử dụng nó .
Nếu bạn thực hiện nhiều lần chèn cùng một lúc với bảng InnoDB, bạn có thể tăng đáng kể tốc độ chèn bằng cách gói chúng vào giao dịch và thực hiện chèn mupliple trong một truy vấn:
START TRANSACTION
INSERT INTO x (id, md5, field1, field2) values (1, '123dab...', 'data1','data2'),(2,'ab2...','data3','data4'),.....;
COMMIT