2008-09-22 28 views

Trả lời

3

Trước tiên, hãy thử sử dụng SQL Profiler để tạo tệp .trc hoạt động trong cơ sở dữ liệu của bạn cho một khối lượng công việc bình thường trong vài giờ. Và sau đó sử dụng "Database Engine Tuning Advisor" trên menu SQL Server Management Studio Tools để xem nó có gợi ý bất kỳ chỉ mục bổ sung, chỉ mục tổng hợp hoặc chỉ mục bao gồm nào có thể mang lại lợi ích hay không.

Tôi không bao giờ sử dụng gợi ý truy vấn và chủ yếu là làm việc với nhiều triệu cơ sở dữ liệu hàng. Đôi khi chúng có thể ảnh hưởng đến hiệu suất tiêu cực.

2

Chỉ mục gợi ý sẽ chỉ đi vào nơi truy vấn của bạn liên quan đến việc tham gia bảng và nơi các cột được sử dụng để kết nối với bảng khác khớp với nhiều chỉ mục. Trong trường hợp đó, công cụ cơ sở dữ liệu có thể chọn sử dụng một chỉ mục để tham gia và từ điều tra, bạn có thể biết rằng nếu nó sử dụng một chỉ mục khác thì truy vấn sẽ hoạt động tốt hơn. Trong trường hợp đó, bạn cung cấp gợi ý chỉ mục cho cơ sở dữ liệu biết chỉ mục sử dụng.

1

Trải nghiệm của tôi là đôi khi bạn biết nhiều hơn về tập dữ liệu của mình thì SQL Server thực hiện. Trong trường hợp đó, bạn nên sử dụng gợi ý truy vấn. Nói cách khác: Bạn giúp người tối ưu hóa quyết định.

Tôi đã từng xây dựng một kho dữ liệu nơi SQL Server không sử dụng chỉ mục tối ưu trên truy vấn phức tạp. Bằng cách đưa ra gợi ý chỉ mục trong truy vấn của tôi, tôi đã thực hiện truy vấn nhanh gấp 100 lần.

Chỉ sử dụng chúng sau khi bạn phân tích gói truy vấn. Nếu bạn cho rằng truy vấn của mình có thể chạy nhanh hơn khi sử dụng một chỉ mục khác hoặc bằng cách sử dụng chúng theo thứ tự khác, hãy cung cấp gợi ý cho máy chủ.

3

Điểm mấu chốt mà tôi tin rằng mọi người ở đây chỉ là RẤT cẩn thận việc sử dụng gợi ý chỉ mục có thể cải thiện hiệu suất truy vấn của bạn, NẾU VÀ CHỈ NẾU, nhiều chỉ mục tồn tại có thể được sử dụng để truy xuất dữ liệu , Và nếu SQL Server không sử dụng đúng. Trong kinh nghiệm của tôi, tôi đã thấy rằng nó không phải là rất phổ biến cần gợi ý chỉ mục, tôi tin rằng tôi có thể có 2-3 truy vấn được sử dụng ngày hôm nay đã sử dụng chúng .... Tạo chỉ mục thích hợp và tối ưu hóa cơ sở dữ liệu nên giúp bạn tận dụng tối đa cơ sở dữ liệu hoạt động.

Các vấn đề liên quan