5
SQL: INSERT มีอะไรช้าลงถ้าไม่ใช่ CPU หรือ IO
เรามีฐานข้อมูลสำหรับผลิตภัณฑ์ที่เขียนหนัก เราเพิ่งซื้อเครื่องเซิร์ฟเวอร์ใหม่พร้อม SSD เพื่อช่วย ด้วยความประหลาดใจของเราการแทรกไม่เร็วกว่าบนเครื่องเก่าของเราที่มีการจัดเก็บช้ากว่ามาก ในระหว่างการเปรียบเทียบเราสังเกตเห็นว่าอัตรา IO ที่แสดงโดยกระบวนการ SQL Server นั้นต่ำมาก ตัวอย่างเช่นฉันรันสคริปต์ที่พบในหน้านี้ยกเว้นว่าฉันได้เพิ่ม BEGIN TRAN และ COMMIT รอบลูป ที่ดีที่สุดฉันจะเห็นการใช้งานดิสก์ถึง 7Mb / s ในขณะที่ CPU แทบจะไม่ได้สัมผัส 5% เซิร์ฟเวอร์มีการติดตั้ง 64Gb และใช้ 10 เวลาการทำงานทั้งหมดคือ 2 นาที 15 วินาทีสำหรับการโทรครั้งแรกจนถึงประมาณ 1 นาทีสำหรับการโทรครั้งต่อไป ฐานข้อมูลเป็นการกู้คืนอย่างง่ายและไม่ได้ใช้งานในระหว่างการทดสอบ ฉันวางโต๊ะระหว่างการโทรแต่ละครั้ง ทำไมสคริปต์ง่าย ๆ นี้ถึงช้าจัง ฮาร์ดแวร์แทบจะไม่มีการใช้เลย ทั้งเครื่องมือการเปรียบเทียบดิสก์เฉพาะและ SQLIO ระบุว่า SSD ทำงานอย่างถูกต้องด้วยความเร็วสูงกว่า 500Mb / s …