เข้าใจเรื่องการกันพื้น (OP) ของ SSD

เปอร์เซ็นต์การจัดสรรรทรัพยากรส่วนเกิน:

ความจุทางกายภาพ - ความจุสำหรับใช้งาน


ความจุใช้งานสำหรับผู้ใช้

สูตรการคำนวณเปอร์เซ็นต์การจัดสรรทรัพยากรส่วนเกิน

ไดร์ฟ SSD มีลักษณะภายนอกคล้ายกับฮาร์ดดิสก์ไดร์ฟ (HDD) (เช่น ความสูง ความกว้างและความยาว) รวมทั้งอินเทอร์เฟซต่อพ่วง (เช่น SATA หรือ SAS) แต่การทำงานของส่วนประกอบภายในและชิ้นส่วนของ SSD จะแตกต่างจากแผ่นจานแม่เหล็กที่หมุนทำงานของ HDD อย่างมาก

หลังจากประกอบ SSD ผู้ผลิต SSD จะสำรองความจุไดร์ฟรวมเพิ่มเติมไว้เป็นเปอร์เซ็นต์สัดส่วนเพื่อใช้กับระบบจัดสรรทรัพยากรส่วนเกิน (OP) ระหว่างการเขียนโปรแกรมเฟิร์มแวร์ ระบบจัดสรรทรัพยากรส่วนเกินจะช่วยเพิ่มประสิทธิภาพในการทำงานและความทนทานของ SSD ทำให้ไดร์ฟใช้งานได้ยาวนานขึ้นเนื่องจากชุดควบคุม SSD มีพื้นที่แฟลช NAND มากกว่าเพื่อลดการสึกหรอของแฟลช NAND ระหว่างการใช้งาน

ความจุทางกายภาพความจุใช้งานสำหรับผู้ใช้% การจัดสรรทรัพยากรส่วนเกินคลาสแอพพลิเคชั่น
64 GB 60 GB 7% เน้นการอ่าน
96GB 90GB 7% เน้นการอ่าน
128GB 120GB 7% เน้นการอ่าน
128GB 100GB 28% เน้นการเขียนมากขึ้น
256GB 240GB 7% เน้นการอ่าน
256GB 200GB 28% เน้นการเขียนมากขึ้น
512GB 480GB 7% เน้นการอ่าน
512GB 400GB 28% เน้นการเขียนมากขึ้น
1024GB 960GB 7% เน้นการอ่าน
1024GB 800GB 28% เน้นการเขียนมากขึ้น
2048GB 1800GB 14% เน้นการอ่าน
2048GB 1600GB 28% เน้นการเขียนมากขึ้น
การจัดสรรทรัพยากรส่วนเกินตามความจุและคลาสของแอพพลิเคชั่น

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

ความจุ OP ที่กำหนดโดยผู้ผลิต SSD จะมีขนาดแตกต่างกันไปขึ้นอยู่กับคลาสของแอพพลิเคชั่นของ SSD และความจุของหน่วยความจำ NAND Flash

ไดร์ฟที่ความจุมากกว่าและมีคลาสแอพพลิเคชั่นที่หลากหลายมักจะกำหนดค่าให้มีการจัดสรรทรัพยากรส่วนเกินมากกว่าไปตามสัดส่วน เนื่องจากข้อจำกัดด้านทรัพยากรในการจัดการ NAND Flash ที่มากกว่าโดยอาศัย Garbage Collection บล็อคว่างและระบบป้องกันข้อมูลที่เหนือกว่า

ระดับ OP นี้ไม่สามารถปรับแต่งได้โดยผู้ใช้และจะไม่แสดงอยู่ในระบบปฏิบัติการต้นทาง โดยเป็นฟังก์ชั่นเฉพาะสำหรับชุดควบคุม SSD เท่านั้น

ข้อดีของ Over-Provisioning (OP)

OP ส่งผลต่อประสิทธิภาพของ SSD อย่างไร

ดายหน่วยความจำ NAND Flash แต่ละตัวประกอบไปด้วยบล็อคข้อมูลเป็นจำนวนมากที่ทำหน้าที่จัดเก็บเพจข้อมูลอีกเป็นจำนวนมาก

สามารถอ่านและเขียนข้อมูลไปยัง NAND Flash ได้ในระดับเพจ แต่การลบจะต้องทำเป็นบล็อคเท่านั้น

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

กรณีเดียวที่สามารถเขียนข้อมูลเพจโดยตรงไปยังบล็อค NAND Flash ได้โดยตรงโดยไม่ผ่านขั้นตอนการแก้ไขการอ่านและเขียนข้อมูลนี้คือในกรณีที่เพจว่างอยู่แล้ว

การปล่อยบล็อคเป็นจำนวนมากว่างไว้และสำรองพื้นที่ผ่านการจัดสรรทรัพยากรส่วนเกินจะช่วยทำให้ประสิทธิภาพในการทำงานดีขึ้นอย่างต่อเนื่อง โดยเฉพาะอย่างยิ่งสำหรับงานเขียนแบบสุ่มที่มีอัตราการเขียนข้อมูลซ้ำซ้อน (WAF) มากที่สุด{{Footnote.N52105}}

OP ส่งผลต่อความทนทานของ SSD อย่างไร

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

เซลล์ NAND Flash แต่ละตัวมีอายุการใช้งานที่จำกัดตามความทนทานในการเขียนโปรแกรมและลบข้อมูล (P/E) ซึ่งจะถูกประเมินระหว่างกระบวนการผลิตโดยผู้ผลิต NAND Flash เนื่องจากขั้นตอนการเขียนโปรแกรมหรือลบข้อมูลในเซลล์ NAND Flash จะส่งผลกระทบต่อขีดความสามารถของเซลล์ในการจัดเก็บประจุไฟฟ้าอย่างมีเสถียรภาพ ซึ่งจะส่งผลต่อความสมบูรณ์ของข้อมูล

ทั้งนี้โครงสร้าง NAND ได้ปรับเปลี่ยนจาก 2D เป็น 3D ทำให้ความทนทานของ NAND มีมากขึ้น ความหนาแน่นของดายเพิ่มขึ้นและลดต้นทุนในการผลิตลง ทำให้ SSD มีราคาประหยัดมากขึ้น

โดยสรุป มีปัจจัยสำคัญสามอย่างที่ส่งผลต่อความทนทานของ SSD ได้แก่
  • โปรแกรมแฟลช NAND/ความทนทานในการลบและการอ่านข้อมูลเชิงโครงสร้าง/ความซับซ้อนในการลบข้อมูล (โครงสร้างในที่นี้ครอบคลุมทั้งเทคโนโลยีการผลิต 2 มิติและ 3 มิติ)
  • ความจุของ SSD
  • ขีดความสามารถของชุดควบคุม SSD และประสิทธิภาพในการทำงาน (ระบบจัดเก็บข้อมูลขยะ การเขียนข้อมูลซ้ำซ้อน การจัดการบล็อคข้อมูล การกระจายการสึกหรอ และการแก้ไขข้อผิดพลาด)

การควบคุมประสิทธิภาพและความทนทานผ่าน Over-Provisioning (OP)

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

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

ระบบจัดเก็บข้อมูลขยะจะทำงานเป็นอิสระจากระบบปฏิบัติการ และจะเริ่มการทำงานอัตโนมัติระหว่างช่วงเวลาที่มีการทำงานต่ำ โดยทำงานเป็นช่วง ๆ หรือโดยการใช้คำสั่ง ATA Data Set Management Trim ที่เกี่ยวข้องเพื่อกำหนดเวลาการจัดเก็บข้อมูลขยะ

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

นอกจากนี้ ชุดคำสั่ง ATA Data Set Management TRIM ยังสามารถเพิ่มพื้นที่ใช้งานให้กับ SSD โดยการกู้พื้นที่หน้าเพจที่ไม่ถูกต้องและพื้นที่ความจุใช้งานของผู้ใช้ที่ยังไม่ได้ถูกใช้งาน

ความจุไดร์ฟที่ฟอร์แมตแล้วขนาดการจัดสรรทรัพยากรส่วนเกินแบนด์วิธการเขียน/อ่านข้อมูลตามลำดับIOPS การอ่าน/เขียนข้อมูล 4k ต่อเนื่องแบบสุ่มTBW (JEDEC Enterprise{{Footnote.N52105}})DWPD{{Footnote.N37134}}
480GB (DC500R) 7% 550/500MB/s 98,000/12,000 IOPS 438 0.5
480GB (DC500M) 32% 555/520MB/s 98,000/58,000 IOPS 1139 1.3
960GB (DC500R) 7% 555/520MB/s 98,000/20,000 IOPS 876 0.5
960GB (DC500M) 32% 555/520MB/s 98,000/70,000 IOPS 2278 1.3
1920GB (DC500R) 7% 555/520MB/s 98,000/24,000 IOPS 1752 0.5
1920GB (DC500M) 32% 555/520MB/s 98,000/75,000 IOPS 4555 1.3
3840GB (DC500R) 7% 555/520MB/s  98,000/28,000 IOPS  3504  0.5
3840GB (DC500M)  32% 555/520MB/s  98,000/75,000 IOPS 9110  1.3
การจัดสรรทรัพยากรส่วนเกินตามความจุและคลาสของแอพพลิเคชั่น

เพื่อให้เข้าในเกี่ยวกับการทำงานของ OP เราจะพิจารณาจาก DC500R SSD ซึ่งเป็น SSD ระดับองค์กรจาก Kingston กันดู SSD นี้มีความจุสูงสุด 3.84TBผู้ใช้จึงสามารถใช้ Kingston SSD Manager เพื่อปรับแต่งการจัดสรรทรัพยากรส่วนเกิน (OP) เมื่อทำการปรับขนาด OP จะเห็นประสิทธิภาพที่ดีขึ้นและความทนทานที่มากขึ้นโดยใช้เกณฑ์ OP ที่ 7% หรือสูงกว่า

ขณะทำการเปรียบเทียบคู่ความจุแต่ละคู่ สิ่งที่เราพบคือ:
  1. ไดร์ฟที่มีความจุมากกว่า (OP น้อยกว่า) ในแต่ละคู่จะรักษาระดับความเร็วในการโอนข้อมูล (แบนด์วิธ) ได้เท่าเดิม แต่ IO ในการเขียนข้อมูลแบบสุ่มต่อวินาที (IOPS) จะลดลงอย่างมาก ซึ่งหมายถึงไดร์ฟที่ OP ต่ำกว่าจะเหมาะสำหรับแอพพลิเคชั่นที่ต้องอ่านข้อมูลเป็นหลัก แต่จะทำงานช้ากว่าสำหรับแอพพลิเคชั่นที่เน้นการเขียนข้อมูลเมื่อเทียบกับไดร์ฟที่มี OP 32%
  2. การจัดสรรทรัพยากรส่วนเกินที่ต่ำกว่าจะทำให้จำนวนไบต์รวมที่เขียน (TBW) เป็นเทราไบต์สำหรับไดร์ฟแต่ละตัวต่ำกว่า เปอร์เซ็นต์ OP ที่สูงกว่าจะทำให้ SSD มีอายุการใช้งานยาวนานกว่า 960GB DC500R สามารถรองรับการเขียนข้อมูลสูงสุดถึง 876TBW ในขณะที่ 800GB DC500R สามารถทำได้ที่ 860TBWจำนวน TBW คำนวณตามรูปแบบการทำงานของ Kingston ภายใต้มาตรฐาน JEDEC{{Footnote.N52105}}.
  3. ขณะแปลงตัวเลข TBW เป็นจำนวนการเขียนข้อมูลไดร์ฟต่อวัน (DWPD) ระหว่างระยะเวลารับประกัน จะเห็นว่าไดร์ฟที่มี OP 32% สามารถรองรับจำนวนการเขียนข้อมูลได้ถึงเกือบสองเท่าต่อวัน ด้วยเหตุนี้ OP 32% จึงแนะนำสำหรับแอพพลิเคชั่นที่เน้นการเขียนข้อมูลเป็นหลัก