ผมมี HDD 4 ลูก จะใช้งาน VPS ควรจะทำ Raid 5 หรือ 10 ดีครับ

ตามนี้ ครับ http://www.prepressure.com/library/technology/raid

สอบถามเพิ่มอันนี้คือซื้อ ฮาร์ดแวร์ raid หรือเปล่าครับ ปกติ cisco ทำได้แค่ 0 กับ 1

เรากำลังพูดถึง read นะครับ สมมติมี disk เท่ากัน คือ 4 ลูก

raid10 คือการแบ่งออกเป็น 1+0 เหมือนกับมี 2 ลูกเวลาอ่าน
raid5 เวลาอ่าน อ่านจาก 3 ลูก (parity อีก 1 ลูก)

อะไรเร็วกว่ากันต้น :slight_smile:

ถ้า Disk หลายลูก raid5/6 ก็เร็วขึ้นตามนะครับ

ตัวอย่าง disk 10 ลูก
Raid 10 จะได้ความเร็ว read 5 เท่าโดยประมาณถูกมั๊ยครับ
เพราะมันจะ strip เป็น 5 ลูกและเสียไป mirror อีก 5 ลูก

Raid 5 เสียพื่นที่ให้ parity ไป 1 ลูก เนื่องจากตอน read ส่วนที่เป็น parity ไม่ได้ถูกอ่าน
จึงคิดความเร็วได้ 9 เท่าโดยประมาณ

และ Raid 6 ได้ 8 เท่าโดยประมาณ

เค้าก็เขียนไว้นะ

RAID 5
[h=3]Advantages[/h][LEFT]Read data transactions are very fast while write data transaction are somewhat slower (due to the parity that has to be calculated).[/LEFT]

ถ้าเลือก2อัน มีแค่ 1 กับ 0 อะครับ

ถ้าเลือก 4 อันมีให้เลือก 0,5 กับ 10 เลยครับ

แต่ 5 จะเลือกไม่ได้

มีให้ปรับแต่ไม่รู้ว่าจะใช้ได้หรือเปล่า

แบบนี้ ต้องลองครับ ถ้า RAID 5 ดีกว่า คงไม่มีใครใช้ RAID 10 กันหรอกครับ
เพราะว่า ใช้ RAID 5 ดีกว่า ได้ พท. มากกว่าด้วย ถ้าในที่นี้ ได้ 3 ก้อน ?
เพราะ RAID 10 จะเหลือแค่ 2 ก้อน แถมถ้า read สู้ ไม่ได้ได้ด้วย อันนี้ น่าคิดครับ :slight_smile:

Read Benefit RAID 0 = nX, RAID 5 = (n-1)X แบบนี้
ถ้ามี 4 ก้อน ก็น่าจะ read ไม่ต่างกันนะครับ ตามทฤษฎี แต่ถ้าตามการ
ใช้งานจริงผมว่า RAID 10 ทำงานได้เร็วกว่า RAID 5 มากครับ :slight_smile:

The read performance of RAID 5 is almost as good as RAID 0 for the same number of disks. Except for the parity blocks, the distribution of data over the drives follows the same pattern as RAID 0. The reason RAID 5 is slightly slower is that the disks must skip over the [URL=“http://en.wikipedia.org/wiki/Parity_bit”]parity blocks.
จาก Standard RAID levels - Wikipedia ครับ :slight_smile:

ผมขอเพิ่มเติม นอกเรื่องนิดนะครับ แต่ว่าเกี่ยวกับการใช้ RAID ให้ถูกต้องนี่แหละ
คืออย่างเช่น เครื่อง Database MySQL ที่ใช้ทำเครื่อง read (replication)
คือเอาไว้ให้ SELECT อย่างเดียว แต่ว่า จริงๆ แล้ว อย่าคิดว่า ต้อง read เร็วอย่างเดียว
ในส่วนของการ write ก็ต้องเร็วด้วยครับ เพราะว่า เครื่อง slave เครื่องนี้ ต้องรับ
bin-log มาจากเครื่อง master อีกที และต้องทำการ query write ลงไปด้วย
กรณีแบบนี้ RAID 0 จะเหมาะสุดครับ เพราะว่า ถ้า disk พังไปจริงๆ เราก็ยังมี
เครื่อง slave อื่นทำงานอยู่ได้ครับ แล้วค่อยซ่อมกันใหม่ :slight_smile:

ที่คนใช้ Raid 10 กันเพราะมัน write เร็วกว่า Raid 5 ครับ
จึงยอมเสียพื้นที่มากเพื่อประสิทธิภาพ
แล้วอีกอย่าง card raid รุ่นต่ำๆก็มักจะทำ raid 5 ไม่ได้

ได้ความรู้เยอะเลยครับ ขอบคุณมากครับ

ตามความเข้าใจของผม

Raid 1 เขียน 2 ลูกพร้อมกัน ความเร็วใกล้เคียงเขียน 1 ลูก เพราะมันเขียนพร้อมกัน
Raid 1 อ่าน จาก 2 ลูกคนละครึ่ง ได้ความเร็วเร็วกว่าใช้ hdd ลูกเดียว 2 เท่า (ทางทฤษฎี)

Raid 10 ใช้ hdd 4 ลูก
เวลาเขียน เขียนลง 4 ลูกพร้อมๆกัน แบ่งข้อมูลครึ่งนึงไป 2 ลูก อีกครึ่งนึงไปอีก 2 ลูก ความเร็วเท่าๆกับ raid 0 หรือเร็วกว่า raid 1 เท่าตัว(ทางทฤษฎี)
เวลาอ่าน อ่านจาก hdd 4 ลูก ลูกละ 25% เร็วกว่า hdd ลูกเดียว 4 เท่าตัว(ทางทฤษฎี)

Raid 5 ใช้ hdd 3 ลูก
เขียนข้อมูลลง hdd 2 ลูก (ลูกละครึ่ง) กับ parity ลงอีก 1 ลูก ความเร็วใกล้เคึยง raid 0 และ raid 10
อ่านข้อมูลจาก hdd 2 ลูก (ลูกละครึ่ง) กับเช็ค parity จาก hdd อีกลูก ความเร็วพอๆกะ raid 0 แต่ช้ากว่า raid 10

ตามความเข้าใจนะครับ ผิดตรงใหนแย้งได้เลย

ประเด็นเรื่อง raid นี่ถือเป็นประเด็นดราม่าระดับโลกเลย บลัฟกันมาหลายปีแล้ว

:026:

raid 10 ถ้า disk ลูกนึงเสียมัน rebuild ได้อะครับ. แต่ raid 0 คือไม่ต้อง build เลย เลิกคุยต้องหา disk อื่นมาถ่ายข้อมูลแล้วค่อยสร้างใหม่

ว่าแต่ มีใครเคยใช้ Solus VM บ้างหรือเปล่าครับ คือพอจะทำ raid software เขาก็บอกกันว่าอาจจะไม่ดี ให้ซื้อการ์ดRaid

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

พอดีว่าถ้าผมใช้ลูกเดียว รองรับลูกค้า VPS หลาย user มากๆ HDD หมุนไม่ทันแน่ๆครับ

ภาพรวมแล้วผมว่า raid 10 น่าใช้กว่าครับ
http://www.adaptec.com/en-us/_common/compatibility/_education/raid_level_compar_wp.htm

ถ้าต้องเร็วๆ ก็ต้อง hybrid raid ครับ คือ ทำ riad ผสมกับ ssd ครับ
http://www.tomshardware.co.uk/sas-6gb-raid-controller,review-32291-17.html

hybrid raid น่าสนใจมากครับ

[COLOR=#333333]RAID10 เลยครับ แนะนำๆๆ[/COLOR]

RAID-1 ใน mdadm เวลาอ่านมันอ่านจาก 2 ตัวครับ ดังนันถ้าเป็น RAID 10 มันก็อ่านจาก 4 ลูกครับ ย้ำว่าเฉพาะใน mdadm นะครับ ถ้าใช้ HW RAID นี่ผมไม่แน่ใจว่าตัวไหนทำได้บ้าง แต่ไม่ใช่ทุกตัวอะ

ถ้าในแง่ performance นี่ ยังไง RAID-10 ก็ดีกว่าทั้ง 5 และ 6 ครับ แต่ในแง่ Reliability นี่ RAID-6 มันดีกว่าตรงที่พังได้ 2 ลูกพร้อมกันโดยไม่เลือกคู่น่ะครับ

ผมจำไม่ได้เหมือนกันว่าหน้าไหน น่าจะแถวๆ partition setup แหละครับ

ทำ mdadm (software raid) ไปเหอะครับ มันดีกว่า hardware raid ราคาถูกๆส่วนใหญ่ด้วยซ้ำครับ (พวก Fake RAID)

มาคุยกันต่อ :slight_smile:

  • ผมอ้างอิงกรณี read อย่างเดียวนะครับ ตั้งแต่ต้นแล้วที่เปรียบเทียบระหว่าง 5 กับ 10
  • ส่วนตัวผมใช้ 10 ในทุกระบบที่เป็น storage back-end ซึ่งเป็นทางเลือกที่เปลืองกว่า 5 แต่ผมเห็น write > read (ซึ่ง 10 เร็วกว่า 5) นอกจากนี้ยังเผื่อกรณี disk เสีย 5 จะ degrade อย่างน่ากลัว ทั้งหมดนี้จึงทำให้เลือกใช้ 10 ตั้งแต่ต้น

กรณี write นั้นจบไปแล้วว่ายังไง 10 เร็วกว่า 5

มาดูกันว่า “กรณี read” นั้น อะไรเร็วกว่ากัน

ค้น google ดูอีกรอบ พบคำตอบต่างกันไป แต่ที่มีผลทดสอบให้ดูเป็นกราฟก็เห็นจาก http://www.kendalvandyke.com/2009/02/disk-performance-hands-on-part-5-raid.html อ่านดูดีๆ นะครับ มีหลายเคสที่เขาทดสอบ บางเคสต่างกันมาก บางเคสผลลัพธ์ต่างกันไม่มาก ตารางสรุปเป็นแบบนี้ (สีแดงคือ 5 ดีกว่า 10 สีดำ คือ 10 ดีกว่า 5)

สรุป

ในกรณีการเขียน 10 ชนะ 5 ทุกกรณี ความแตกต่างมากน้อยขึ้นกับ controller
ในกรณีการอ่าน 5 เหนือกว่า 10 เล็กน้อยถึงปานกลาง

แต่กรณี controller รุ่นใหม่ๆ http://en.wikipedia.org/wiki/RAID บอกว่า ไม่ต่างกัน

ที่เหมือนกันทุกแหล่งข้อมูล คือ กรณี rebuild raid 5 ใช้เวลานานและทำให้ระบบหน่วงได้ (อีกแหละครับ แก้ไขได้โดยเทคโนโลยีใหม่ๆ)

เรื่อง read เร็ว ขึ้นอยู่กับหลายปัจจัยมากครับ จำนวน disk ประเภทของ file system ขนาดของ file รวมไปถึงความสามารถของตัว RAID เอง

ผมใช้ MD1220 ใส่ disk SAS 2.5" 1TBx24
RAID 10 ลอง test speed read/write ดูพบว่าเร็วกว่า SSD อีก
แต่จำตัวเลขไม่ได้แล้วครับ :slight_smile: