ฉันใช้ SQL Server ที่ทำงานบน Azure VM พร้อม 8 SSDSSD ถูกจัดกลุ่มเข้าด้วยกันใน Storage Spaces เป็นดิสก์ 1 แผ่น - เพื่อเพิ่มความจุและเพื่อรวม IOPS/Throughput แต่ส่วน "รวม IOPS" ดูเหมือนจะไม่ทำงานเท่าที่ฉันสามารถบอกได้จากการทดสอบ / เกณฑ์มาตรฐานทั้งหมดของฉัน (ส่วน "รวมปริมาณงาน" นั้นใช้งานได้) ในความเป็นจริง ดูเหมือนว่าประสิทธิภาพของ SSD (IOPS) บนดิสก์เดี่ยว 1 แผ่นดีกว่าดิสก์เสมือนทั้ง 8 ดิสก์จริง ดังนั้น ฉันกำลังคิดว่าจะลืมเรื่อง Storage Spaces และแบ่งข้อมูลออกเป็น 8 ดิสก์
แต่อะไรจะเป็นวิธีที่ดีที่สุดในการทำเช่นนั้น? (ฉันไม่มีประสบการณ์มากนักกับไฟล์หลายไฟล์หรือกลุ่มไฟล์หรือการแบ่งตารางและอะไรแบบนั้น)
เพียงสร้างไฟล์ mdf 8 ไฟล์ (1 ไฟล์ในแต่ละดิสก์) และให้ SQL Server กระจายข้อมูลไปยังไฟล์เหล่านี้ทั้งหมดหรือไม่ ถ้าเป็นเช่นนั้น ฉันต้องการทราบว่า SQL Server รู้ได้อย่างไรว่าดิสก์ใดที่บันทึกนั้นเปิดอยู่ การทำเช่นนี้จะทำให้เร็วขึ้นหรือไม่?
และอาจแบ่งไฟล์ ldf ด้วยหรือไม่
แล้วกลุ่มไฟล์หลายกลุ่มล่ะ? ฉันไม่รู้จริง ๆ ว่าความแตกต่างในทางปฏิบัติระหว่างไฟล์หลาย ๆ ไฟล์และกลุ่มไฟล์คืออะไร
แล้วการแยกตารางขนาดใหญ่โดยใช้ฟังก์ชันการแบ่งพาร์ติชันล่ะ นั่นจะช่วยได้ไหมตั้งแต่ตอนนี้ SQL Server จะ "มีความคิดที่ดีกว่า" ว่าเรกคอร์ดที่กำหนดจะอยู่ที่ไหน (ในไฟล์ใด) เนื่องจากสิ่งนั้นถูกกำหนดโดยฟังก์ชันพาร์ติชัน