DTA แนะนำให้สร้างสถิติ


10

ฉันเพิ่งรัน T-SQL เคียวรีผ่าน DTA และหนึ่งในคำแนะนำคือการสร้างสถิติบนหนึ่งในคอลัมน์ที่เป็นส่วนหนึ่งของแบบสอบถามจำนวนมากในไฟล์รหัส SQL

คำถามของฉันคือสถิติช่วยในเรื่องประสิทธิภาพได้อย่างไร

คำตอบ:


7

สถิติถูกใช้เมื่อสร้างแผนการดำเนินการแบบสอบถาม

สถิติสำหรับการปรับให้เหมาะสมของแบบสอบถามเป็นวัตถุที่มีข้อมูลสถิติเกี่ยวกับการกระจายของค่าในหนึ่งคอลัมน์ขึ้นไปของตารางหรือมุมมองที่จัดทำดัชนี เครื่องมือเพิ่มประสิทธิภาพการสืบค้นใช้สถิติเหล่านี้เพื่อประเมินความเป็นเชิงจำนวนหรือจำนวนแถวในผลลัพธ์การสืบค้น การประมาณความผิดพลาดเหล่านี้เปิดใช้งานเครื่องมือเพิ่มประสิทธิภาพคิวรีเพื่อสร้างแผนคิวรีคุณภาพสูง ตัวอย่างเช่นเคียวรีเครื่องมือเพิ่มประสิทธิภาพสามารถใช้การประมาณแบบ cardinality ในการเลือกตัวดำเนินการค้นหาดัชนีแทนตัวดำเนินการสแกนดัชนีที่ใช้ทรัพยากรมากขึ้นและเพื่อปรับปรุงประสิทธิภาพการสืบค้น

ดูhttp://msdn.microsoft.com/en-us/library/ms190397.aspxสำหรับรายละเอียดเพิ่มเติม


1
ลิงค์ที่ดีและคำอธิบาย เป็นประโยชน์หรือไม่ที่จะมีการสร้างสถิติบนตารางที่มีการสอบถามบ่อยๆ
Thomas Stringer

ใช่เราต้องแน่ใจว่าสถิติของตารางที่อ่านได้มากที่สุดนั้นเพียงพอเสมอ หากตารางของคุณเป็นแบบเขียนมากอาจเป็นไปได้ว่าคุณต้องอัปเดตสถิติเช่นทุกคืน
Alex_L

2
@ Surfer513 - ระวัง: การสร้างสถิติอาจมีผลเสีย ข้อมูลที่ดีกว่าที่คุณให้กับผู้วางแผนอาจทำให้เส้นทางเลือกการดำเนินการแตกต่างกันและเนื่องจากนี่เป็นเกมที่น่าจะเป็นไปได้ว่าเป็นไปได้ที่เส้นทางนี้จะช้ากว่า ในคำอื่น ๆ บนฐานข้อมูลการผลิตทดสอบก่อนที่คุณจะใช้
แจ็คบอกว่าลอง topanswers.xyz

7

หาก DTA แนะนำสถิติคอลัมน์เดียวคุณต้องปิดการสร้างสถิติอัตโนมัติหรือไม่ สร้างอัตโนมัติจะสร้างสถิติในคอลัมน์ใด ๆ ที่ใช้ในเพรดิเคตโดยอัตโนมัติดังนั้นโดยทั่วไปแล้วควรเปิดทิ้งไว้ ตรวจสอบสถานะของการอัพเดทอัตโนมัติสำหรับฐานข้อมูลนี้ซึ่งโดยปกติควรจะเปิดอีกครั้ง

หนึ่งในการใช้งานที่ดีที่สุดของ DTA คือการระบุสถิติหลายคอลัมน์ที่ขาดหายไปซึ่งการสร้างอัตโนมัติจะไม่สร้าง แต่สำหรับคอลัมน์เดียวการสร้างอัตโนมัติควรดูแลพวกเขาให้คุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.