SQL Server Performance
Truy vấn chậm không đồng nghĩa với “thiếu index”. Tối ưu đúng bắt đầu từ số liệu, execution plan và nguyên nhân gốc.
Một câu lệnh chạy chậm có thể xuất phát từ đọc quá nhiều trang dữ liệu, ước lượng số dòng sai, kiểu dữ liệu không tương thích, blocking, thiếu bộ nhớ cấp cho truy vấn hoặc một execution plan vừa bị thay đổi. Vì vậy, thêm index theo cảm tính đôi khi chỉ chuyển chi phí từ lúc đọc sang lúc ghi — và tạo thêm việc bảo trì.
Bài viết này trình bày quy trình tối ưu truy vấn SQL Server theo hướng có thể đo, kiểm chứng và đưa vào vận hành. Ví dụ dùng T-SQL, nhưng tư duy “đo trước, sửa đúng nút thắt, đo lại” cũng áp dụng tốt cho nhiều hệ quản trị cơ sở dữ liệu quan hệ.