ระดับ RAID ที่ใช้กันอย่างแพร่หลายแตกต่างกันอย่างไรและเมื่อใดที่ฉันควรพิจารณาถึง


181

นี่เป็นคำถามที่ยอมรับได้เกี่ยวกับระดับ RAID

สิ่งที่เป็น:

  • โดยทั่วไปแล้วระดับ RAID ที่ใช้ (รวมถึงตระกูล RAID-Z)
  • พวกเขามักพบการปรับใช้ใน?
  • ประโยชน์และข้อผิดพลาดของแต่ละ

10
@ erimar77 จุดของเครือข่าย StackExchange คือการรวบรวมความรู้ทั้งหมดเกี่ยวกับวัตถุที่กำหนดภายในเครือข่าย SE นั่นหมายความว่าข้อมูลใน Wikipedia ไม่มีประโยชน์ต่อภารกิจ ฉันรอบรู้เรื่อง RAID ค่อนข้างดีดังนั้นฉันไม่ต้องการคำตอบ แต่มันก็เป็นคำถามที่ยอมรับได้ คำถามเชิง Cononical เป็นคำถามที่เก็บคำตอบที่ชัดเจนสำหรับปัญหาทั่วไปที่เราสามารถชี้ซ้ำทั้งหมดได้ "แค่ google it" หรือ "อยู่ใน Wikipedia" ไม่ใช่คำตอบที่ยอมรับได้ แม้ว่าบทความเกี่ยวกับ Wikipedia นั้นดีมาก
MDMarra

2
คัดลอกไปยังผู้ใช้ขั้นสูงเพื่อฉันสามารถ VTC เป็นสำเนาในที่นั้น กรุณาคัดลอกคำตอบให้กับผู้ใช้ขั้นสูง (หรือให้ฉันคัดลอกไว้ตอนนี้)
Hennes

คำตอบ:


197

RAID: ทำไมและเมื่อไหร่

RAID ย่อมาจาก Redundant Array of Disks ดิสก์ (บางคนถูกสอนว่า "ราคาไม่แพง" เพื่อระบุว่าพวกเขาเป็นดิสก์ "ปกติ"; ในอดีตมีดิสก์ซ้ำซ้อนภายในซึ่งมีราคาแพงมาก; เนื่องจากไม่มีตัวย่อที่ปรับใช้แล้ว)

ในระดับทั่วไปที่สุด RAID คือกลุ่มของดิสก์ที่ทำหน้าที่อ่านและเขียนแบบเดียวกัน SCSI IO ถูกดำเนินการบนไดรฟ์ข้อมูล ("LUN") และสิ่งเหล่านี้ถูกแจกจ่ายไปยังดิสก์พื้นฐานในวิธีที่เพิ่มประสิทธิภาพการทำงานและ / หรือเพิ่มความซ้ำซ้อน การเพิ่มประสิทธิภาพเป็นหน้าที่ของการสตริป: ข้อมูลถูกกระจายไปทั่วดิสก์หลาย ๆ ตัวเพื่อให้สามารถอ่านและเขียนเพื่อใช้คิว IO ของดิสก์ทั้งหมดพร้อมกัน ความซ้ำซ้อนเป็นหน้าที่ของการมิเรอร์ ดิสก์ทั้งหมดสามารถเก็บไว้เป็นสำเนาได้หรือสามารถเขียนเป็นชุดได้หลายครั้ง หรือในบางประเภทของการจู่โจมแทนที่จะทำการคัดลอกบิตข้อมูลสำหรับบิตความซ้ำซ้อนนั้นได้มาจากการสร้างแถบพิเศษที่มีข้อมูลพาริตีซึ่งสามารถใช้เพื่อสร้างข้อมูลที่สูญหายในกรณีที่เกิดความล้มเหลวของฮาร์ดแวร์

มีการกำหนดค่าหลายอย่างที่ให้ประโยชน์ในระดับที่แตกต่างกันซึ่งครอบคลุมที่นี่และแต่ละอันมีอคติต่อประสิทธิภาพหรือความซ้ำซ้อน

สิ่งสำคัญในการประเมินระดับ RAID จะทำงานให้คุณขึ้นอยู่กับข้อดีและข้อกำหนดของฮาร์ดแวร์ (เช่น: จำนวนไดรฟ์)

อีกแง่มุมที่สำคัญของ RAID ประเภทนี้ส่วนใหญ่ (0,1,5) คือพวกเขาไม่มั่นใจในความถูกต้องของข้อมูลของคุณเพราะมันถูกแยกออกไปจากข้อมูลจริงที่ถูกเก็บไว้ ดังนั้น RAID จึงไม่ป้องกันไฟล์ที่เสียหาย หากไฟล์เสียหายด้วยวิธีการใด ๆความเสียหายจะทำมิรเรอร์หรือ paritied และส่งไปยังดิสก์โดยไม่คำนึงถึง อย่างไรก็ตามRAID-Z ไม่เรียกร้องให้สมบูรณ์ในระดับไฟล์ข้อมูลของคุณ


RAID ที่แนบมาโดยตรง: ซอฟต์แวร์และฮาร์ดแวร์

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

ซอฟต์แวร์ RAID มักไม่ต้องการคอนโทรลเลอร์เนื่องจากไม่ได้ใช้โปรเซสเซอร์ RAID เฉพาะหรือแคชแยกต่างหาก โดยทั่วไปการดำเนินการเหล่านี้ได้รับการจัดการโดยตรงจาก CPU ในระบบที่ทันสมัยการคำนวณเหล่านี้ใช้ทรัพยากรน้อยที่สุดแม้ว่าจะมีความหน่วงแฝงเล็กน้อยเกิดขึ้น RAID จะถูกจัดการโดยระบบปฏิบัติการโดยตรงหรือโดยตัวควบคุมมารยาทในกรณีของFakeRAID

โดยทั่วไปหากใครบางคนกำลังเลือกซอฟต์แวร์ RAID พวกเขาควรหลีกเลี่ยง FakeRAID และใช้แพ็คเกจระบบปฏิบัติการสำหรับระบบของพวกเขาเช่น Dynamic Disks ใน Windows, mdadm / LVM ใน Linux หรือ ZFS ใน Solaris, FreeBSD และการกระจายอื่น ๆ ที่เกี่ยวข้อง . FakeRAID ใช้การรวมกันของฮาร์ดแวร์และซอฟต์แวร์ซึ่งส่งผลให้เกิดการปรากฏตัวครั้งแรกของฮาร์ดแวร์ RAID แต่ประสิทธิภาพที่แท้จริงของซอฟต์แวร์ RAID ยิ่งไปกว่านั้นมันเป็นเรื่องยากมากที่จะย้ายอาเรย์ไปยังอะแดปเตอร์อื่น


จัดเก็บข้อมูลส่วนกลาง

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

ข้อแตกต่างที่สำคัญระหว่าง NAS และ SAN คือการส่งออกระดับบล็อกและระบบไฟล์ SAN ส่งออก "บล็อกอุปกรณ์" ทั้งหมดเช่นพาร์ติชันหรือโลจิคัลวอลุ่ม (รวมถึงที่สร้างขึ้นด้านบนของอาร์เรย์ RAID) ตัวอย่างของ SAN รวมถึง Fibre Channel และ iSCSI NAS ส่งออก "ระบบไฟล์" เช่นไฟล์หรือโฟลเดอร์ ตัวอย่างของ NAS ได้แก่ CIFS / SMB (การแชร์ไฟล์ Windows) และ NFS


RAID 0

ดีเมื่อ: ความเร็วที่ค่าใช้จ่ายทั้งหมด!

ไม่ดีเมื่อ: คุณใส่ใจข้อมูลของคุณ

RAID0 (aka Striping) บางครั้งเรียกว่า "จำนวนข้อมูลที่คุณจะเหลือเมื่อไดรฟ์ล้มเหลว" มันทำงานกับธัญพืชของ "RAID" ที่ "R" ย่อมาจาก "Redundant"

RAID0 นำบล็อกข้อมูลของคุณแยกออกเป็นหลาย ๆ ชิ้นตามที่คุณมีดิสก์ (2 ดิสก์→ 2 ชิ้น, 3 ดิสก์→ 3 ชิ้น) แล้วเขียนข้อมูลแต่ละชิ้นลงในดิสก์แยกต่างหาก

ซึ่งหมายความว่าความล้มเหลวของดิสก์เดียวทำลายอาร์เรย์ทั้งหมด (เพราะคุณมีส่วนที่ 1 และส่วนที่ 2 แต่ไม่มีส่วนที่ 3) แต่ให้การเข้าถึงดิสก์ที่รวดเร็วมาก

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

พื้นที่ดิสก์ที่ใช้งานได้ทั้งหมดคือผลรวมของดิสก์ทั้งหมดในอาเรย์ที่รวมเข้าด้วยกัน (เช่นดิสก์ 3x 1TB = พื้นที่ 3TB)

RAID 1


RAID 1

ดีเมื่อ: คุณมีดิสก์จำนวน จำกัด แต่ต้องการความซ้ำซ้อน

ไม่ดีเมื่อ: คุณต้องการพื้นที่เก็บข้อมูลจำนวนมาก

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

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

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

พื้นที่ดิสก์ที่ใช้งานได้ทั้งหมดคือขนาดของดิสก์ที่เล็กที่สุดในอาเรย์ (เช่นดิสก์ 2x 1TB = พื้นที่ 1TB)

RAID 1


RAID 1E

1E RAID ระดับคล้ายกับ RAID 1 ในข้อมูลที่เขียนเสมอ (อย่างน้อย) สองแผ่น แต่แตกต่างจาก RAID1 มันช่วยให้ดิสก์มีจำนวนคี่เพียงแค่แทรกบล็อกข้อมูลระหว่างดิสก์หลายแผ่น

ลักษณะการทำงานคล้ายกับ RAID1 การยอมรับข้อผิดพลาดนั้นคล้ายกับ RAID 10 โครงร่างนี้สามารถขยายไปยังดิสก์จำนวนคี่มากกว่าสาม (อาจเรียกว่า RAID 10E แม้ว่าจะไม่ค่อย)

RAID 1E


RAID 10

ดีเมื่อ: คุณต้องการความเร็วและความซ้ำซ้อน

ไม่ดีเมื่อ: คุณไม่สามารถเสียพื้นที่ดิสก์ได้ครึ่งหนึ่ง

RAID 10 เป็นการรวมกันของ RAID 1 และ RAID 0 ลำดับของ 1 และ 0 นั้นสำคัญมาก สมมติว่าคุณมีดิสก์ 8 แผ่นจะสร้างอาร์เรย์ RAID 1 4 ชุดจากนั้นใช้อาร์เรย์ RAID 0 ที่ด้านบนของอาร์เรย์ 4 RAID 1 มันต้องการอย่างน้อย 4 ดิสก์และต้องเพิ่มดิสก์เพิ่มเติมเป็นคู่

ซึ่งหมายความว่าหนึ่งดิสก์จากแต่ละคู่สามารถล้มเหลวได้ ดังนั้นถ้าคุณมีชุด A, B, C และ D กับดิสก์ A1, A2, B1, B2, C1, C2, D1, D2 คุณสามารถสูญเสียดิสก์หนึ่งชุดจากแต่ละชุด (A, B, C หรือ D) และยังมี อาร์เรย์ทำงาน

อย่างไรก็ตามหากคุณสูญเสียดิสก์สองชุดจากชุดเดียวกันอาเรย์นั้นจะหายไปโดยสิ้นเชิง คุณสามารถสูญเสียได้สูงสุด (แต่ไม่รับประกัน) 50% ของดิสก์

คุณรับประกันความเร็วสูงและความพร้อมใช้งานสูงใน RAID 10

RAID 10 เป็นระดับ RAID ทั่วไปโดยเฉพาะอย่างยิ่งกับไดรฟ์ความจุสูงที่มีความล้มเหลวของดิสก์เดียวทำให้ดิสก์ที่สองมีโอกาสมากขึ้นก่อนที่จะสร้างอาร์เรย์ RAID ขึ้นใหม่ ในระหว่างการกู้คืนประสิทธิภาพการทำงานลดลงต่ำกว่า RAID 5 มากเนื่องจากต้องอ่านจากไดรฟ์เดียวเพื่อสร้างข้อมูลใหม่

พื้นที่ดิสก์ที่มีอยู่คือ 50% ของผลรวมของพื้นที่ทั้งหมด (เช่นไดรฟ์ 8x 1TB = พื้นที่ใช้งาน 4TB) หากคุณใช้ขนาดที่ต่างกันจะใช้ขนาดที่เล็กที่สุดจากแต่ละดิสก์

เป็นที่น่าสังเกตว่าไดรเวอร์การจู่โจมซอฟต์แวร์ของเคอร์เนล Linux เรียกว่าmd อนุญาตให้มีการกำหนดค่า RAID 10 ที่มีไดรฟ์จำนวนคี่เช่น 3 หรือ 5 ดิสก์ RAID 10

RAID 10


RAID 01

ดีเมื่อ: ไม่เคย

ไม่ดีเมื่อ: เสมอ

มันเป็นสิ่งที่ตรงกันข้ามของ RAID 10 มันสร้างอาร์เรย์ RAID 0 สองชุดจากนั้นใส่ RAID 1 ไว้ด้านบน ซึ่งหมายความว่าคุณสามารถสูญเสียดิสก์หนึ่งชุดจากแต่ละชุด (A1, A2, A3, A4 หรือ B1, B2, B3, B4) เป็นเรื่องยากมากที่จะเห็นในแอปพลิเคชันเชิงพาณิชย์ แต่เป็นไปได้ที่จะทำกับซอฟต์แวร์ RAID

จะมีความชัดเจนอย่างแน่นอน:

  • หากคุณมีอาเรย์ RAID10 ที่มี 8 ดิสก์และหนึ่งอัน (เราจะเรียกมันว่า A1) จากนั้นคุณจะมีดิสก์ที่ซ้ำซ้อน 6 ตัวและอีก 1 ตัวที่ไม่มีความซ้ำซ้อน หากดิสก์อื่นตายมีโอกาส85%ที่อาร์เรย์ของคุณจะยังทำงานอยู่
  • หากคุณมีอาเรย์ RAID01 ที่มี 8 ดิสก์และหนึ่งอัน (เราจะเรียกมันว่า A1) จากนั้นคุณจะมีดิสก์ซ้ำซ้อน 3 ตัวและ 4 ตัวโดยไม่มีความซ้ำซ้อน หากดิสก์อื่นตายมีโอกาส43%ที่อาร์เรย์ของคุณยังคงทำงานอยู่

ไม่ให้ความเร็วเพิ่มเติมบน RAID 10 แต่มีความซ้ำซ้อนน้อยลงอย่างมากและควรหลีกเลี่ยงค่าใช้จ่ายทั้งหมด


RAID 5

ดีเมื่อ: คุณต้องการความสมดุลของความซ้ำซ้อนและพื้นที่ดิสก์หรือมีปริมาณงานอ่านแบบสุ่มส่วนใหญ่

ไม่ดีเมื่อ: คุณมีปริมาณงานเขียนแบบสุ่มสูงหรือไดรฟ์ขนาดใหญ่

RAID 5 เป็นระดับ RAID ที่ใช้กันมากที่สุดมานานหลายทศวรรษ ให้ประสิทธิภาพของระบบของไดรฟ์ทั้งหมดในอาเรย์ (ยกเว้นการเขียนแบบสุ่มขนาดเล็กซึ่งมีค่าใช้จ่ายเล็กน้อย) มันใช้การดำเนินการ XOR ง่าย ๆ ในการคำนวณความเท่าเทียมกัน เมื่อความล้มเหลวของไดรฟ์เดียวข้อมูลสามารถสร้างขึ้นใหม่จากไดรฟ์ที่เหลือโดยใช้การดำเนินการ XOR กับข้อมูลที่รู้จัก

น่าเสียดายที่ในกรณีที่เกิดความล้มเหลวของไดรฟ์กระบวนการสร้างใหม่นั้นใช้ IO มาก ยิ่งไดรฟ์ใน RAID มีขนาดใหญ่การสร้างใหม่ก็จะใช้เวลานานขึ้นและมีโอกาสเกิดความล้มเหลวของไดรฟ์ที่สองมากขึ้น เนื่องจากไดรฟ์ช้าที่มีขนาดใหญ่ทั้งคู่มีข้อมูลจำนวนมากที่ต้องสร้างใหม่และมีประสิทธิภาพน้อยลงดังนั้นจึงไม่แนะนำให้ใช้ RAID 5 กับ 7200 RPM หรือต่ำกว่า

บางทีปัญหาที่สำคัญที่สุดของ RAID 5 arrays เมื่อใช้ในแอพพลิเคชั่นสำหรับผู้ใช้ทั่วไปคือพวกเขาเกือบจะรับประกันว่าจะล้มเหลวเมื่อความจุรวมเกิน 12TB นี่เป็นเพราะอัตราข้อผิดพลาดการอ่าน (URE) ที่ไม่สามารถกู้คืนได้ของไดรฟ์สำหรับผู้บริโภค SATA คือหนึ่งต่อทุกๆ 10 14บิตหรือ ~ 12.5TB

หากเรานำตัวอย่างของอาร์เรย์ RAID 5 ที่มีเจ็ดไดรฟ์ 2 TB: เมื่อไดรฟ์ล้มเหลวจะมีหกไดรฟ์เหลืออยู่ ในการสร้างอาเรย์ขึ้นใหม่คอนโทรลเลอร์จำเป็นต้องอ่านไดรฟ์หกตัวที่ละ 2 TB เมื่อดูที่รูปด้านบนเกือบจะแน่ใจว่ามี URE อื่นเกิดขึ้นก่อนที่การสร้างใหม่จะเสร็จสิ้น หลังจากนั้นอาร์เรย์และข้อมูลทั้งหมดในนั้นจะหายไป

อย่างไรก็ตามความล้มเหลวของการสูญเสียข้อมูล / อาเรย์ / อาเรย์ของ RAID 5 ในไดรฟ์สำหรับผู้บริโภคนั้นได้รับการผ่อนปรนจากข้อเท็จจริงที่ว่าผู้ผลิตฮาร์ดดิสก์ส่วนใหญ่ได้เพิ่มคะแนน URE ของไดรฟ์รุ่นใหม่เป็น 10 ใน15บิต และเช่นเคยตรวจสอบแผ่นข้อมูลจำเพาะก่อนซื้อ!

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

RAID 5 เป็นโซลูชันที่คุ้มค่ามากที่สุดในการเพิ่มที่เก็บข้อมูลซ้ำซ้อนลงในอาร์เรย์เนื่องจากต้องใช้ดิสก์เพียง 1 แผ่นเท่านั้น (เช่นดิสก์ 12x 146GB 146x = 1606GB ของพื้นที่ใช้งาน) มันต้องการอย่างน้อย 3 ดิสก์

RAID 5


RAID 6

ดีเมื่อ: คุณต้องการใช้ RAID 5 แต่ดิสก์ของคุณใหญ่หรือช้าเกินไป

ไม่ดีเมื่อ: คุณมีภาระงานเขียนแบบสุ่มสูง

RAID 6 นั้นคล้ายกับ RAID 5 แต่ใช้ดิสก์สองแผ่นที่มีค่าพาริตีแทนที่จะเป็นหนึ่งเดียว (อันแรกคือ XOR, ที่สองคือ LSFR) ดังนั้นคุณสามารถสูญเสียดิสก์สองตัวจากอาเรย์โดยไม่มีการสูญเสียข้อมูล โทษการเขียนสูงกว่า RAID 5 และคุณมีพื้นที่ดิสก์น้อยกว่าหนึ่งแผ่น

ควรพิจารณาว่าในที่สุดอาร์เรย์ RAID 6 จะพบปัญหาคล้ายกันในขณะที่ RAID 5 ไดรฟ์ขนาดใหญ่ทำให้เกิดเวลาการสร้างใหม่ที่ใหญ่ขึ้นและเกิดข้อผิดพลาดแฝงมากขึ้นในที่สุดนำไปสู่ความล้มเหลวของอาเรย์ทั้งหมดและการสูญหายของข้อมูลทั้งหมด

RAID 6


RAID 50

ดีเมื่อ: คุณมีดิสก์จำนวนมากที่ต้องอยู่ในอาร์เรย์เดียวและ RAID 10 ไม่ใช่ตัวเลือกเนื่องจากความจุ

ไม่ดีเมื่อ: คุณมีดิสก์จำนวนมากที่มีความล้มเหลวหลายอย่างพร้อมกันก่อนที่จะสร้างใหม่เสร็จสมบูรณ์หรือเมื่อคุณไม่มีดิสก์จำนวนมาก

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

ใน RAID 50 ความจุของดิสก์คือ nx โดยที่ x คือจำนวน RAID 5s ที่สตริป ตัวอย่างเช่นหาก RAID 50 แบบ 6 ดิสก์แบบง่ายที่สุดที่เล็กที่สุดที่เป็นไปได้ถ้าคุณมีดิสก์ขนาด 6x1TB ใน RAID 5s สองตัวที่ถูกข้ามเป็น RAID 50 คุณจะมีพื้นที่เก็บข้อมูลที่ใช้งานได้ 4TB


RAID 60

ดีเมื่อ: คุณมีกรณีการใช้งานคล้ายกับ RAID 50 แต่ต้องการความซ้ำซ้อนมากขึ้น

ไม่ดีเมื่อ: คุณไม่มีดิสก์จำนวนมากในอาเรย์

RAID 6 คือ RAID 60 เนื่องจาก RAID 5 คือ RAID 50 โดยพื้นฐานแล้วคุณมี RAID 6 มากกว่าหนึ่งที่ข้อมูลจะถูกสตริปใน RAID 0 การตั้งค่านี้ช่วยให้สมาชิกสูงสุดสองคนของ RAID 6 ในชุด ล้มเหลวโดยไม่สูญเสียข้อมูล เวลาในการสร้างอาร์เรย์สำหรับ RAID 60 ใหม่อาจเป็นเรื่องปกติดังนั้นจึงเป็นความคิดที่ดีที่จะมีฮอตสแปนหนึ่งอันสำหรับสมาชิก RAID 6 แต่ละคนในอาเรย์

ใน RAID 60 ความจุของดิสก์คือ n-2x โดยที่ x คือจำนวนของ RAID 6s ที่ถูกขีดขวาง ตัวอย่างเช่นถ้าดิสก์ RAID 60 แบบง่าย 8 ตัวที่เล็กที่สุดที่เป็นไปได้ถ้าคุณมีดิสก์ 8x1TB ใน RAID 6s สองตัวที่มีลายขวางเพื่อให้กลายเป็น RAID 60 คุณจะมีพื้นที่เก็บข้อมูลที่ใช้งานได้ 4TB อย่างที่คุณเห็นนี่จะให้พื้นที่เก็บข้อมูลที่ใช้งานได้เท่าที่ RAID 10 จะมอบให้กับอาเรย์ 8 สมาชิก ในขณะที่ RAID 60 จะซ้ำซ้อนมากกว่าเดิมเล็กน้อยเวลาสร้างใหม่จะใหญ่ขึ้นอย่างมาก โดยทั่วไปคุณต้องการพิจารณา RAID 60 เฉพาะเมื่อคุณมีดิสก์จำนวนมาก


RAID-Z

ดีเมื่อ: คุณใช้ ZFS ในระบบที่รองรับ

ไม่ดีเมื่อ: ประสิทธิภาพต้องการการเร่งความเร็ว RAID ของฮาร์ดแวร์

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

ตัวอย่างอาจทำให้ชัดเจนกว่านี้ สมมติว่าคุณมี 3 ดิสก์ในพูล ZFS RAID-Z ขนาดบล็อกคือ 4KB ตอนนี้คุณเขียนไฟล์ไปยังระบบที่มีขนาด 16KB ZFS จะแบ่งสิ่งนั้นออกเป็นสี่บล็อก 4KB (เช่นระบบปฏิบัติการปกติ); จากนั้นมันจะคำนวณความเท่าเทียมกันสองช่วง บล็อกทั้งหกนั้นจะถูกวางไว้บนไดรฟ์คล้ายกับที่ว่า RAID-5 จะกระจายข้อมูลและพาริตี้ นี่เป็นการปรับปรุง RAID5 โดยที่ไม่มีการอ่านแถบข้อมูลที่มีอยู่เพื่อคำนวณพาริตี

อีกตัวอย่างหนึ่งที่สร้างขึ้นก่อนหน้านี้ สมมติว่าไฟล์มีขนาด 4KB เท่านั้น ZFS ยังคงต้องสร้างหนึ่งพาริตี้บล็อก แต่ตอนนี้โหลดการเขียนลดลงเป็น 2 บล็อก ไดรฟ์ที่สามจะให้บริการฟรีตามคำขออื่น ๆ ที่เกิดขึ้นพร้อมกัน ผลที่คล้ายกันจะเห็นได้ตลอดเวลาที่ไฟล์ที่กำลังเขียนไม่ได้เป็นขนาดบล็อกของพูลหลายคูณด้วยจำนวนของไดรฟ์น้อยกว่าหนึ่ง (เช่น [ขนาดไฟล์] <> [ขนาดบล็อก] * [ไดรฟ์ - 1])

ZFS จัดการทั้งการจัดการปริมาณและระบบไฟล์ยังหมายความว่าคุณไม่ต้องกังวลเกี่ยวกับการจัดพาร์ทิชันหรือขนาดบล็อกลาย ZFS จัดการทุกอย่างโดยอัตโนมัติด้วยการกำหนดค่าที่แนะนำ

ธรรมชาติของ ZFS ตอบโต้ RAID-5/6 caveats คลาสสิกบางส่วน การเขียนทั้งหมดใน ZFS เสร็จในลักษณะ copy-on-write บล็อกที่เปลี่ยนแปลงทั้งหมดในการดำเนินการเขียนจะถูกเขียนไปยังตำแหน่งใหม่บนดิสก์แทนที่จะเขียนทับบล็อกที่มีอยู่ หากการเขียนล้มเหลวไม่ว่าด้วยเหตุผลใดก็ตามหรือระบบล้มเหลวในการเขียนข้อมูลกลางการเขียนธุรกรรมจะเกิดขึ้นอย่างสมบูรณ์หลังจากการกู้คืนระบบ (ด้วยความช่วยเหลือของบันทึกเจตนา ZFS) หรือไม่เกิดขึ้นเลยหลีกเลี่ยงความเสียหายของข้อมูลที่อาจเกิดขึ้น ปัญหาอีกประการหนึ่งของ RAID-5/6 คือการสูญเสียข้อมูลที่อาจเกิดขึ้นหรือข้อมูลเสียหายเงียบระหว่างการสร้างใหม่ zpool scrubการดำเนินงานปกติสามารถช่วยดักจับข้อมูลเสียหายหรือผลักดันปัญหาก่อนที่จะทำให้ข้อมูลสูญหายและการตรวจสอบบล็อกข้อมูลทั้งหมดจะทำให้มั่นใจได้ว่าความเสียหายทั้งหมดในระหว่างการสร้างใหม่จะถูกตรวจจับ

ข้อเสียเปรียบหลักของ RAID-Z ก็คือมันยังคงเป็นการจู่โจมซอฟต์แวร์ (และทนทุกข์ทรมานจากความหน่วงเล็กน้อยที่เกิดขึ้นจาก CPU ในการคำนวณโหลดการเขียนแทนที่จะปล่อยให้HBAเป็นฮาร์ดแวร์ออก) สิ่งนี้อาจได้รับการแก้ไขในอนาคตโดย HBAs ที่รองรับการเร่งด้วยฮาร์ดแวร์ ZFS

RAID และฟังก์ชั่นที่ไม่ได้มาตรฐานอื่น ๆ

เนื่องจากไม่มีอำนาจกลางในการบังคับใช้ฟังก์ชั่นมาตรฐานใด ๆ ระดับ RAID ต่างๆจึงมีวิวัฒนาการและได้รับมาตรฐานโดยการใช้งานที่แพร่หลาย ผู้ค้าจำนวนมากได้ผลิตผลิตภัณฑ์ที่เบี่ยงเบนไปจากคำอธิบายข้างต้น นอกจากนี้ยังเป็นเรื่องธรรมดาสำหรับพวกเขาที่จะคิดค้นคำศัพท์ทางการตลาดใหม่ที่แปลกใหม่เพื่ออธิบายแนวคิดดังกล่าวข้างต้น (สิ่งนี้เกิดขึ้นบ่อยที่สุดในตลาด SOHO) เมื่อเป็นไปได้พยายามให้ผู้ขายอธิบายการทำงานของกลไกการทำซ้ำ (โดยส่วนใหญ่จะเป็นอาสาสมัครข้อมูลนี้เนื่องจากไม่มีซอสลับจริง ๆ อีกต่อไป)

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


ขณะนี้ฉันไม่มีเวลาเพิ่มข้อมูลนี้ แต่อธิบายว่าคุณสามารถใช้อัตราการอ่านผิดพลาดที่ไม่สามารถกู้คืนได้เพื่อประเมินชุด RAID 5 ที่ใหญ่ที่สุดที่คุณสามารถใช้กับดิสก์ที่เฉพาะเจาะจงได้หรือไม่
Hubert Kario

สรุปยอดเยี่ยม! ฉันมีหนึ่งที่เพิ่มเติมเกี่ยวกับ RAID5 เทียบกับ RAID6: บ่อยครั้งที่คนพิจารณาความน่าเชื่อถือโดยรวม (โอกาสของความล้มเหลวของอาร์เรย์ที่หายนะ) ของอาร์เรย์ที่มีแกนหมุนหรือดิสก์จำนวนมากที่มีความจุสูงมากจะเลือก RAID6 พวกเขาทำสิ่งนี้ตามความน่าจะเป็นของความล้มเหลวครั้งที่สองที่เกิดขึ้นในขณะที่ดิสก์แรกจะถูกสร้างขึ้นมาใหม่ กฎง่ายๆของฉันคือ RAID6 เมื่อจำนวนสปินเดิลมากกว่า 8 หรือเมื่อไดรฟ์แต่ละตัวมีค่ามากกว่า 1TB ฉันไม่สามารถค้นหาเครื่องคิดเลขที่เป็นที่ยอมรับได้ แต่ Google & เวลาที่สร้างใหม่ที่รู้จักจะช่วยคำนวณได้ดี
JGurtz

3
อาจเป็นการเพิ่มหมายเหตุที่นี่ว่าซอฟต์แวร์ Linux RAID10 ไม่ใช่แบบมาตรฐาน อนุญาตเลย์เอาต์ที่ผิดปกติและมีประโยชน์ en.wikipedia.org/wiki/Non-standard_RAID_levels#Linux_MD_RAID_10
Zoredache

อาจมีมูลค่ารวมถึงการชี้แจงการเขียนบทลงโทษและการรวมแถบ RAID 2 หรือ 3 อาจเป็นสิ่งที่ควรค่าแก่การกล่าวขวัญ แต่ฉันไม่รู้ว่าการใช้งาน 'จริง' ใด ๆ อย่างไรก็ตาม - NetApp ยังคงใช้ RAID4 (และ RAID-DP นั้นเป็น RAID-4 ที่มีไดรฟ์แบบพิเศษ)
Sobrique

1
RAID 6: LSFR ควรเป็น LFSR (การลงทะเบียน shift-feedback เชิงเส้น)
CVn

58

นอกจากนี้ยังมี RAID หนึ่งล้าน !!!!

128 ดิสก์ดังนั้นการอ่านจะรวดเร็วเขียนน่ากลัว แต่น่าเชื่อถือมากฉันคิดว่าโอ้และคุณจะได้พื้นที่ที่มีอยู่ 1/128 ดังนั้นจึงไม่ดีนักจากมุมมองด้านงบประมาณ อย่าทำอย่างนี้กับแฟลชไดรฟ์ฉันลองและจุดไฟไปที่บรรยากาศ ...

ป้อนคำอธิบายรูปภาพที่นี่


7
โอ้พระเจ้า. Chopper กำลังสูญเสียความคิดของเขาในขณะนี้
MDMarra

4
ฉันเข้าใจผิดหรือเปล่า?
Chopper3

6
คุณรู้หรือไม่ว่าฉันกำลังจะสร้างสิ่งนี้ขึ้นมา
Chopper3

33
การจู่โจม 1000000 จะต้องมีอย่างน้อย 128 ดิสก์ แต่จะให้ 64 ดิสก์มูลค่าของพื้นที่จัดเก็บมันก็มีประสิทธิภาพการเขียนกรณีที่เลวร้ายที่สุดเช่นเดียวกับ Raid 1 และความล้มเหลวของไดรฟ์ adjecent ใด ๆ 2 จะฆ่าอาร์เรย์ คุณกำลังตกหลุม Raid 0111111 ซึ่งจะมีความน่าเชื่อถือที่ดีพอสมควร (Raid 11111110 จะต้องมีความน่าเชื่อถือที่ดีขึ้นโดยเฉลี่ย)
Kevin Cathcart

5
โอ้น่ารัก ระดับ RAID แบบไบนารี อะไรต่อไป?
CVn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.