Xóa bộ nhớ cache của SQL Server khi test hiệu năng

Khi điều chỉnh các ứng dụng SQL Server, một mức độ nào đó, việc thử nghiệm hiệu năng thực thi của các thủ tục SQL là cần thiết. Tùy chọn Index, thiết kế bảng, tùy chọn khóa (locking table)  những vấn đề có thể được sửa đổi để tăng hiệu suất thực thi. Khi chạy các tình huống test, phải chắc chắn các thủ tục, câu lệnh SQL phải được bắt đầu ở cùng một trạng thái tại mỗi thời điểm chạy thử. Bộ nhớ cache (đôi khi được gọi là bộ đệm) cần phải được xoá đi. Điều này nhằm tránh việc các dữ liệu và (hoặc) kế hoạch thực thi (excution plan) đang được lưu trữ, do đó làm thất bại các thử nghiệm tiếp theo. Để xoá bộ nhớ cache của SQL Server, chúng ta chạy hai câu lệnh sau:


DBCC DROPCLEANBUFFERS

DBCC FREEPROCCACHE

Câu lệnh đầu tiên để xóa tất cả dữ liệu trong bộ nhớ cache. 
Câu lệnh thứ hai xóa bộ nhớ cache lưu trữ các thủ thục (store procedure).


Sau khi chạy hai lệnh trên, mọi thủ tục, câu lệnh sẽ được đặt vào “điểm xuất phát” như nhau. Do đó việc so sánh sẽ trở nên “công bằng” và chính xác hơn.


Nguồn: (http://www.devx.com)

Một số lưu ý để cải thiện hiệu năng

Tinh chỉnh hiệu suất thực thi (Performance tuning) là một vấn đề khó và không có một quy tắc vàng nào cả. Tuy nhiên bạn có thể bước một bước dài một cách ngạc nhiên trong vấn đề này nếu theo một số nguyên tắc cơ bản trong bài này.
Về mặt lý thuyết, việc điều chỉnh hiệu năng được thực hiện bởi các DBA. Tuy nhiên họ sẽ không có đủ thời gian để rà soát lại tất cả mọi thay đổi của các procedure, do đó học một số kiến thức căn bản về điều chỉnh thực thi sẽ giúp bạn tiết kiệm thời gian cho việc phải làm việc lại với các mã nguồn.

Sau đây là danh sách 15 gợi ý cơ bản nhất mà bất kỳ một develope nào cũng cần phải thực hiện trong khóa học về điều chỉnh hiệu năng, thực hiện những điều này không đảm bảo hiệu năng sẽ được cải thiện một cách chắc chắn, nhưng ít ra nó cũng không làm cho hệ thống chậm đi.

Đọc thêm »