Microsoft® SQL Server® Query Store ตามชื่อที่แนะนำ เหมือนกับ astore ที่รวบรวมประวัติฐานข้อมูลของคิวรีที่ดำเนินการ สถิติการเรียกใช้คิวรีรันไทม์ และแผนการดำเนินการ เนื่องจากข้อมูลถูกจัดเก็บไว้ในดิสก์ คุณจึงสามารถดึงข้อมูลที่เก็บแบบสอบถามได้ทุกเมื่อเพื่อวัตถุประสงค์ในการแก้ไขปัญหา และการรีสตาร์ทเซิร์ฟเวอร์ SQL จะไม่มีผลกับข้อมูล ใช้ Query Store ซึ่งเปิดตัวใน SQL Server 2016 และพร้อมใช้งานในรุ่นที่ใหม่กว่าทั้งหมด เพื่อแก้ไขปัญหาด้านประสิทธิภาพที่เกิดจากการเปลี่ยนแปลงแผนการสืบค้น
แนะนำตัว
คุณอาจพบว่าการวิเคราะห์ข้อมูลพื้นฐานมีประโยชน์สำหรับการแก้ไขปัญหาประสิทธิภาพ แต่จนกว่าจะมีการเปิดตัว Query Store ข้อมูลนั้นไม่พร้อมใช้งานในเซิร์ฟเวอร์ SQL หากเปิดใช้งาน Query Store สำหรับฐานข้อมูล จะเก็บข้อมูลเกี่ยวกับคิวรีที่ดำเนินการพร้อมกับแผนการดำเนินการและสถิติรันไทม์ เปิดใช้งานในระดับฐานข้อมูลและสามารถเปิดใช้งานสำหรับฐานข้อมูลของผู้ใช้ทั้งหมดและฐานข้อมูลระบบ MSDB ข้อมูลที่เกี่ยวข้องกับที่เก็บแบบสอบถามและข้อมูลเมตาจะถูกเก็บไว้ในตารางภายในภายในฐานข้อมูลเอง ไม่จำเป็นต้องจัดการการสำรองข้อมูลแยกต่างหากของ Query Store เนื่องจากการสำรองข้อมูลฐานข้อมูลมาตรฐานมีข้อมูลที่จำเป็นทั้งหมด หากต้องการดูข้อมูล Query Store คุณต้องมี View Database State
ได้รับอนุญาตและคุณต้องมีDB_Owner
สิทธิในการบังคับและยกเลิกการบังคับใช้แผน คุณดูข้อมูลนี้ได้ผ่านสตูดิโอการจัดการและผ่าน T-SQL
การตั้งค่าที่เก็บแบบสอบถาม
ทำตามขั้นตอนต่อไปนี้เพื่อเปิดใช้งาน Query Store สำหรับฐานข้อมูล:
- คลิกขวา ฐานข้อมูล -> ไปที่คุณสมบัติ .
- ภายใต้ เลือกเพจ , เลือก เลือกที่เก็บแบบสอบถาม .
- ใน ทั่วไป ส่วน เปลี่ยน โหมดการทำงาน (ร้องขอ) จาก
Off
เพื่อRead-Write
. - ปล่อยให้ฟิลด์อื่นๆ ใน โหมดการทำงาน (ร้องขอ) กล่องแบบเลื่อนลงเป็นค่าเริ่มต้นที่เติมไว้ล่วงหน้า
- คลิก ตกลง ในกล่องคุณสมบัติฐานข้อมูลเพื่อเปิดใช้งาน Query Store สำหรับฐานข้อมูลที่เลือก
คุณสามารถเปิดใช้งาน Query Store ด้วย T-SQL โดยใช้รหัสต่อไปนี้:
ALTER DATABASE [DB_Name] SET QUERY_STORE = ON;
ตัวเลือกการกำหนดค่าต่างๆ ของ Query Store
รายการต่อไปนี้มีคำอธิบายของตัวเลือก Query Store บางส่วน:
-
โหมดการทำงาน (ร้องขอ) มีสามค่า:
Off
,Read Only
และRead Write
. เมื่อ Query Store ตั้งค่าโหมดเป็นRead
ไม่มีการรวบรวมแผนการดำเนินการใหม่หรือสถิติรันไทม์ของแบบสอบถาม โหมดนี้เป็นการดำเนินการแบบอ่านอย่างเดียวที่เกี่ยวข้องกับ Query Store เปลี่ยนโหมดเป็นRead Write
เปิดใช้งาน Query Store เพื่อรวบรวมคิวรีที่ดำเนินการ แผนการดำเนินการที่ใช้สำหรับคิวรีเหล่านั้น และสถิติรันไทม์สำหรับคิวรีเหล่านั้นที่รันในฐานข้อมูลที่เลือก -
ช่วงเวลาการล้างข้อมูล (นาที) ช่วยให้คุณกำหนดความถี่ในการล้างแผนการดำเนินการที่รวบรวมและสถิติรันไทม์ของคิวรีจากหน่วยความจำไปยังดิสก์ โดยค่าเริ่มต้น จะถูกตั้งไว้ที่ 15 นาที
-
ช่วงการเก็บสถิติ กำหนดช่วงเวลาการรวมของสถิติรันไทม์การสืบค้นที่ควรใช้ภายใน Query Store โดยค่าเริ่มต้น ตั้งไว้ที่ 60 นาที
-
ขนาดสูงสุด (MB) ใช้เพื่อกำหนดค่าขนาดสูงสุดของ Query Store โดยค่าเริ่มต้น จะถูกตั้งค่าเป็น 100 MB ข้อมูลใน Query Store ถูกเก็บไว้ในฐานข้อมูลที่เปิดใช้งาน SQL Server Query Store ขึ้นอยู่กับ sizeconfigured ที่นี่ หลังจากที่ Query Store ถึงขนาดสูงสุด operationmode จะสลับไปที่
Read Only
โหมดอัตโนมัติ -
โหมดจับภาพ ช่วยคุณเลือกประเภทของคิวรีที่จะบันทึกใน QueryStore ตัวเลือกเริ่มต้นคือ
All
ซึ่งเก็บทุกการสืบค้นที่ดำเนินการ เมื่อตั้งค่าตัวเลือกนี้เป็นauto
, Query Store พยายามแยกแยะว่าการสืบค้นใดที่ดักจับตามลำดับความสำคัญ และพยายามละเว้นการดำเนินการที่ไม่บ่อยนัก เช่นเดียวกับการสืบค้นเฉพาะกิจอื่นๆ -
เกณฑ์การสืบค้นข้อมูลเก่า (วัน) ใช้เพื่อกำหนดระยะเวลาที่ข้อมูลอยู่ใน Query Store ค่าเริ่มต้นสำหรับโหมดนี้คือ 30 วัน
รายงานการจัดเก็บแบบสอบถาม
Query Store มีรายงานดังต่อไปนี้:
- แบบสอบถามที่ถดถอย :ระบุข้อความค้นหาว่าเมตริกการดำเนินการใดมีการถดถอยหรือเปลี่ยนเป็นแย่ลงเมื่อเร็วๆ นี้
- การใช้ทรัพยากรโดยรวม :วิเคราะห์การใช้ทรัพยากรทั้งหมดสำหรับฐานข้อมูลสำหรับเมตริกการดำเนินการใดๆ
- แบบสอบถามการใช้ทรัพยากรสูงสุด :แบบสอบถามที่มีผลกระทบมากที่สุดต่อการใช้ทรัพยากรฐานข้อมูล
- คำถามด้วยแผนบังคับ :รายงานในตัวที่แสดงการสืบค้นข้อมูลทั้งหมดที่มีแผนดำเนินการบังคับ
- คำถามที่มีรูปแบบสูง :รายงานนี้แสดงการสืบค้นที่มีปัญหาการกำหนดพารามิเตอร์บ่อยที่สุด
- ข้อความค้นหาที่ติดตาม :ติดตามการดำเนินการของข้อความค้นหาที่สำคัญที่สุดในแบบเรียลไทม์
บังคับแผนด้วย Query Store
เนื่องจากการถดถอยของแผน การสืบค้นซึ่งทำงานได้ดีเมื่อวานนี้ อาจใช้เวลานานเกินไปในการดำเนินการ ใช้ทรัพยากรมากเกินไป หรือหมดเวลาในวันนี้ โดยค่าเริ่มต้น SQL Server จะเก็บแผนการดำเนินการล่าสุดไว้สำหรับการสืบค้นเท่านั้น การเปลี่ยนแปลงใดๆ ในสคีมา สถิติ หรือดัชนีสามารถเปลี่ยนแผนการดำเนินการคิวรีที่ใช้โดย Query Optimizer แผนสามารถลดลงได้เนื่องจากความดันในหน่วยความจำแคชของแผน
Query Store จัดเก็บแผนการสืบค้นและข้อมูลทางสถิติที่รวมตามเวลาภายในฐานข้อมูลที่ถูกตรวจสอบแต่ละฐานข้อมูล ไม่เหมือนกับแคชของแผน Query Store สามารถรักษาแผนได้หลายแผนต่อหนึ่งคิวรี และรักษาประวัติของการเปลี่ยนแปลงแผนคิวรีพร้อมกับสถิติที่เกี่ยวข้องต่อแผน ด้วยการเลือกแผนปฏิบัติการที่หลากหลาย คุณสามารถบังคับแผนปฏิบัติการใดๆ ก็ได้ จากนั้น Query Optimizer จะใช้แผนการบังคับการดำเนินการนี้สำหรับการดำเนินการค้นหาที่จะเกิดขึ้นเท่านั้น
ที่เก็บแบบสอบถาม -> เปิดแบบสอบถามการใช้ทรัพยากรยอดนิยม รายงานแสดงรายการข้อความค้นหาที่ใช้ทรัพยากรมาก มาเลือกแบบสอบถามเพื่อสอบกัน:
วางเมาส์เหนือ แผน เพื่อดูสถิติที่เกี่ยวข้อง
มาเปรียบเทียบแผนต่าง ๆ กันเถอะ
รายละเอียดแผน 216:
รายละเอียดแผน 195:
ระยะเวลาเฉลี่ยสำหรับแผน 216 ต่ำกว่า ดังนั้นจึงสามารถใช้บังคับแผนนี้ในการดำเนินการต่อไปได้ คลิกที่ บังคับแผน เพื่อดูหน้าจอยืนยันพร้อมข้อความ “คุณต้องการบังคับแผน 216 สำหรับแบบสอบถาม 42 หรือไม่”
คลิกใช่ . หลังจากที่แผนถูกบังคับ จะมีการเน้นด้วยเครื่องหมายถูกดังที่แสดงในภาพหน้าจอต่อไปนี้ ในอนาคต แผนนี้จะถูกใช้โดยเครื่องมือเพิ่มประสิทธิภาพการค้นหาสำหรับการดำเนินการ
แนวทางปฏิบัติที่ดีที่สุดกับ Query Store
-
ใช้ SQL Server Management Studio ล่าสุดเพื่อดูฟีเจอร์และการปรับปรุงล่าสุด
-
ตรวจสอบและตรวจสอบการเก็บรวบรวมข้อมูล Query Store
-
ตั้งค่า การสืบค้นที่เหมาะสมที่สุด โหมดการจับภาพและทบทวนตัวเลือกการกำหนดค่า Query Storeconfiguration ตามความจำเป็นเพื่อทำการปรับเปลี่ยน
-
หลีกเลี่ยงการใช้ข้อความค้นหาที่ไม่มีการกำหนดพารามิเตอร์
-
ตรวจสอบสถานะแผนบังคับอย่างสม่ำเสมอ
บทสรุป
Query Store เป็นคุณลักษณะที่มีประโยชน์ที่นำมาใช้ใน SQL Server 2016 เนื่องจากการปรับปรุงประสิทธิภาพการปรับแต่งเป็นหนึ่งในทักษะหลักที่จำเป็นสำหรับผู้ดูแลระบบฐานข้อมูล (DBA) ทุกคน คุณจึงควรเรียนรู้วิธีกำหนดค่าและใช้ Query Store คุณยังสามารถใช้ Query Store เพื่อติดตามการเปลี่ยนแปลงประสิทธิภาพได้ และแก้ไขปัญหาประสิทธิภาพการสืบค้นที่ลดลงโดยการเปรียบเทียบแผนการดำเนินการ คุณสามารถบังคับแผนการสอบถามข้อมูลใดๆ ก็ได้ สิ่งนี้จะแทนที่รายการที่บันทึกไว้ในแคชของแผน ดังนั้นจึงให้ประโยชน์ด้านประสิทธิภาพ Query Store ไม่มีผลกระทบสำคัญต่อประสิทธิภาพของ SQLServer เนื่องจากใช้เพื่อบันทึกและบันทึกสถิติการดำเนินการค้นหาและแผนการดูในภายหลัง
ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม
เพิ่มประสิทธิภาพสภาพแวดล้อมของคุณด้วยการดูแลระบบ การจัดการ และการกำหนดค่าจากผู้เชี่ยวชาญ
บริการแอปพลิเคชันของ Rackspace(RAS) ผู้เชี่ยวชาญจะให้บริการแบบมืออาชีพและที่มีการจัดการในแอปพลิเคชันที่หลากหลาย:
- แพลตฟอร์มอีคอมเมิร์ซและประสบการณ์ดิจิทัล
- การวางแผนทรัพยากรองค์กร (ERP)
- ระบบธุรกิจอัจฉริยะ
- การจัดการลูกค้าสัมพันธ์ของ Salesforce (CRM)
- ฐานข้อมูล
- อีเมลโฮสติ้งและประสิทธิภาพการทำงาน
เราจัดส่ง:
- ความเชี่ยวชาญที่เป็นกลาง :เราลดความซับซ้อนและเป็นแนวทางในการสร้างสรรค์สิ่งใหม่ของคุณ โดยมุ่งเน้นที่ความสามารถที่มอบคุณค่าในทันที
- ประสบการณ์สุดคลั่ง ™:เรารวมกระบวนการก่อน เทคโนโลยีที่สอง®แนวทางพร้อมการสนับสนุนทางเทคนิคเฉพาะเพื่อมอบโซลูชันที่ครอบคลุม
- ผลงานที่ยอดเยี่ยม :เราใช้ประสบการณ์ระบบคลาวด์ที่ครอบคลุมเพื่อช่วยคุณเลือกและปรับใช้เทคโนโลยีที่เหมาะสมบนระบบคลาวด์ที่เหมาะสม
- ส่งไว :เราพบคุณในที่ที่คุณอยู่ในการเดินทางของคุณและปรับความสำเร็จของเราไปพร้อมกับคุณ
แชทเลยเพื่อเริ่มต้น