Khi nào cần thay đổi ngưỡng chi phí cho song song


10

Trong khi kiểm tra một vấn đề về hiệu suất, tôi đã thấy một dòng trên CXPACKETS cho thấy tôi có thể cần phải xem xét ngưỡng chi phí cho sự song song và có lẽ là MAXDOP.

Trước khi thực hiện bất kỳ thay đổi mạnh mẽ nào đối với MAXDOP, tôi đã làm theo lời khuyên của nhiều người khác, bao gồm cả @mrdenny trong câu trả lời cho CXPACKET Chờ điều chỉnh hiệu suất cho SQL Server 2008 và câu trả lời của @ aron-Bertrand từ Xử lý chờ đợi CXPACKET - đặt ngưỡng chi phí cho song song . Tôi đã thêm vào bảo trì để cập nhật số liệu thống kê đầy đủ trên cơ sở hàng đêm. Điều này cảm thấy như một động thái hợp lý.

Tuy nhiên, thực hiện các sửa đổi đối với ngưỡng chi phí vẫn là điều khiến tôi tò mò.

Tại điểm nào nên thay đổi ngưỡng chi phí cho song song? Có ai có một ví dụ về nơi (sau khi kiểm tra chi phí truy vấn và khối lượng công việc của họ) họ đã thay đổi chi phí này không?

Xin lỗi nếu đây là điều đã được trả lời trong câu hỏi trước.

Cảm ơn!

Câu trả lời:


3

Sử dụng MAXDOP = 1 có thể là một trợ giúp, nhưng nó là một khẩu súng lớn. Nó có thể là vấn đề thực tế là sự hữu ích của các chỉ mục. Có lẽ một chỉ số mới hoặc khác sẽ giải quyết vấn đề.

Theo ý kiến ​​của ông Denny và Aaron Bertrand, bạn có khám phá ra những điều chờ đợi khác trong kết nối đó có khả năng là nguyên nhân của sự chờ đợi của CXPACKET không?

Jonathan Kehayias đề xuất một truy vấn có thể giúp bạn đánh giá trải nghiệm song song của bạn và đưa ra quyết định chu đáo hơn. Nhưng bạn cũng nên đọc cuộc trò chuyện giữa Jonathan và Paul White.

https://www.sqlskills.com/bloss/jonathan/tuning-cost-thrưỡng-for-metism-from-the-plan-cache/


1

Tôi sẽ đề nghị bạn trước tiên xem xét các cài đặt MAXDOP vì cài đặt mặc định là 0 (sử dụng tất cả các luồng có sẵn) có thể nguy hiểm vì một truy vấn chạy tiêu thụ tất cả các luồng có sẵn sẽ dẫn đến chết đói luồng.

Tham khảo câu trả lời của tôi ở đây để biết cách tính toán cài đặt MAXDOP cho phiên bản máy chủ của bạn.

Ngưỡng chi phí của tính song song đề cập đến chi phí truy vấn tối thiểu phải có trước khi tính song song được xem xét bởi trình tối ưu hóa.

Remenber rằng CXPACKET chờ đợi chỉ là các triệu chứng do có gì đó không liên quan đến truy vấn - thống kê lỗi thời hoặc chỉ mục bị thiếu dẫn đến một kế hoạch xấu hoặc khác.

Bạn có thể sử dụng sys.dm_exec_cached_planssys.dm_exec_query_planDMV để khai thác thông tin từ bộ đệm của kế hoạch như được mô tả trong Điều chỉnh 'ngưỡng chi phí cho tính song song' từ Bộ đệm ẩn kế hoạch của Jonathan và Ngưỡng chi phí cho tính song song .

Tôi sẽ đề nghị giữ cost threshold for parallelismmặc định trừ khi bạn sử dụng hết các truy vấn điều chỉnh tài nguyên, duy trì Chỉ mục và thống kê cũng như kiểm tra nếu bạn không có bất kỳ chỉ mục bị thiếu nào mà truy vấn của bạn có thể có lợi.

Lưu ý: Cài đặt Maxdop cũng có thể được áp dụng ở cấp truy vấn bằng cách sử dụng OPTION (MAXDOP n)sẽ ghi đè cài đặt rộng của máy chủ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.