สรุป
การปรับปรุงนี้ช่วยเพิ่มประสิทธิภาพโปรแกรมอรรถประโยชน์ SQLIOSim ดังต่อไปนี้ และแก้ไขปัญหาความสมบูรณ์ของข้อมูลที่อาจเกิดจากการจัดการ I/O สําหรับข้อมูลเพิ่มเติมเกี่ยวกับโปรแกรมอรรถประโยชน์ SQLIOSim ให้ดูที่บทนําของโปรแกรมอรรถประโยชน์ SQLIOSim
การบันทึกที่ได้รับการปรับปรุง
- เพิ่มบัฟเฟอร์แวดวงใหม่เพื่อติดตามข้อผิดพลาด เพื่อทําให้ข้อผิดพลาดในบัฟเฟอร์วงแหวนประวัติไม่น่าจะถูกแทนที่เนื่องจากการย้อนกลับ
- เพิ่มผลลัพธ์ต่างๆ ที่มี "จํานวนเครื่องหมายถูก" และ/หรือ "วันที่และเวลา" เพื่อทําให้การแก้จุดบกพร่องง่ายยิ่งขึ้น
- เพิ่มผลลัพธ์และข้อมูล
fsutilของไดรฟ์ข้อมูลไปยังไฟล์ข้อผิดพลาด เพื่อแมปออฟเซตของไฟล์ไปยังออฟเซตบนดิสก์ทางกายภาพ และกรองการติดตามระบบย่อย I/O ได้ง่ายขึ้น - เพิ่มเอาต์พุตสําหรับเวลามาตรฐานสากล (UTC) และเวลาท้องถิ่น
- แบ่งผลลัพธ์ของส่วนหัวของหน้าเป็นไฟล์ข้อผิดพลาด เช่น PageId, Checksum และ Timestamp
- แสดงรายการของหน้าของ
FILE HISTORYบัฟเฟอร์วงแหวนเพื่อให้ค้นหารายการบัฟเฟอร์วงแหวนได้ง่ายขึ้น - แสดงการประทับเวลา เวลา วันที่ CPU แบบลอจิคัล และคอลัมน์อื่นๆ ในมุมมอง Sqliosim.log.xml หรือ ErrorLog.xslt
- เพิ่มขนาดของบัฟเฟอร์วงแหวนและลดความถี่ของการโรลโอเวอร์
- ให้ผลลัพธ์เลขฐานสิบหกและทศนิยมสําหรับผลลัพธ์ทั่วไป เช่น PageId, Checksum และ Timestamp
- Updates เค้าโครงของ Sqliosim.log.xml to make it easier to read the XML file in a text editor.
- สามารถดู Sqliosim.log.xml และ ErrorLog.xslt ที่ถูกต้องใน Microsoft Edge ที่ใช้โหมด Internet Explorer (IE)
การประทับเวลาส่วนหัวของหน้า
จัดเก็บ GetTickCount64 ค่าในส่วนหัวของหน้าในระหว่างการดําเนินการเขียน การนับขีดมีประโยชน์สําหรับการติดตามเมื่อหน้าถูกเขียน และกรองการติดตามระบบย่อย I/O
BNR (ไม่อ่านไบต์)
ปัญหา I/O ทําให้การดําเนินการอ่านถูกส่งกลับเหมือนกับว่าการดําเนินการอ่านสําเร็จ แต่บัฟเฟอร์จริงไม่ได้รับการอัปเดตหรืออ่าน โปรแกรมอรรถประโยชน์ SQLIOSim ได้รับการอ่านที่สําเร็จ แต่การตรวจสอบความถูกต้องล้มเหลว
ในตอนนี้โปรแกรมอรรถประโยชน์ SQLIOSim จะประทับตราบัฟเฟอร์ที่อ่านโดยใช้รูปแบบ BNR ก่อนที่จะออกการอ่าน เมื่อการดําเนินการอ่านกลับเป็นผลสําเร็จ แต่ไม่สามารถดําเนินการอ่านจริง การตรวจสอบความถูกต้องจะยังคงล้มเหลว อย่างไรก็ตาม ไบต์ที่อ่านจะแสดง . รูปแบบ BNR ที่ระบุปัญหาของระบบย่อย I/O
เขียน-ลองใหม่
หากระบบย่อย I/O พบการรีเซ็ต (พบได้บ่อยกว่าในการติดตั้ง direct-attached storage (DAS)) การร้องขอการดําเนินการเขียนอาจเสร็จสมบูรณ์อย่างไม่ถูกต้อง โปรแกรมอรรถประโยชน์ SQLIOSim ไม่ได้รับประกันความสามารถในการเขียนอีกครั้ง ในบางกรณี โปรแกรมอรรถประโยชน์ SQLIOSim จะพยายามอ่านและตรวจสอบความถูกต้องของข้อมูลที่ไม่สามารถเขียนได้
โปรแกรมอรรถประโยชน์ SQLIOSim ได้รับการปรับปรุงเพื่อบันทึกความล้มเหลวในการเขียน แล้วดําเนินการลองเขียนอีกครั้ง
การล็อกขั้นสูง
กลไกการล็อกภายในและกิจกรรมการป้องกันหน้า (VirtualProtect) ได้รับการปรับให้เหมาะสมและปรับปรุงเพื่อรับรองว่าปัญหาที่รายงานโดยโปรแกรมอรรถประโยชน์ SQLIOSim ไม่ได้เกิดจากข้อบกพร่องทางตรรกะในโปรแกรมอรรถประโยชน์ SQLIOSim
อ่าน-ลองใหม่
แก้ไขปัญหาที่ทําให้ความพยายามในการลองอ่านอีกครั้งล้มเหลวเมื่อลองอ่าน LDX (การจําลองบันทึก) ที่ล้มเหลวอีกครั้ง
ตัวอย่างของเอาต์พุตที่ได้รับการปรับปรุง
ตัวอย่างแรกของผลลัพธ์ที่ได้รับการปรับปรุง รวมถึงการปรับปรุงต่อไปนี้:
- เวลา UTC
- เลขฐานสิบหกและเลขฐานสิบ
- จํานวนการประทับเวลา/ขีด
- BNR
- การขยายส่วนหัวของหน้า
ตัวอย่างที่สองของผลลัพธ์ที่ได้รับการปรับปรุง ได้แก่ การปรับปรุงต่อไปนี้:
- บัฟเฟอร์วงแหวน
- เวลา UTC
- การแบ่งช่วงหน้า
ตัวอย่างที่สามของผลลัพธ์ที่ได้รับการปรับปรุง รวมถึงการปรับปรุงต่อไปนี้:
- คอลัมน์ จํานวนขีด
- คอลัมน์ CPU แบบลอจิคัล
ข้อมูลเพิ่มเติม
การปรับปรุงนี้รวมอยู่ในการอัปเดตแบบสะสมสําหรับ SQL Server ต่อไปนี้:
การอัปเดตสะสม 7 สําหรับ SQL Server 2022
เกี่ยวกับการอัปเดตสะสมสําหรับ SQL Server
การอัปเดตแบบสะสมใหม่สําหรับ SQL Server จะมีโปรแกรมแก้ไขด่วนและการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่อยู่ในรุ่นก่อนหน้า เราขอแนะนําให้คุณติดตั้งรุ่นล่าสุดสําหรับ SQL Server รุ่นของคุณ:
การอัปเดตสะสมล่าสุดสําหรับ SQL Server 2022
การอ้างอิง
เรียนรู้เกี่ยวกับคำศัพท์ที่ Microsoft ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์