sebenarnya saya pikir Wikipedia menjelaskannya lebih baik daripada dokumen yang sebenarnya. Ini teks dari artikel tersebut.
Driver RAID perangkat lunak kernel Linux (disebut md, untuk "beberapa perangkat") dapat digunakan untuk membangun array RAID 1 + 0 klasik, tetapi juga (sejak versi 2.6.9) sebagai level tunggal [4] dengan beberapa ekstensi menarik [ 5]. Tata letak "dekat" standar, di mana setiap potongan diulangi n kali dalam array garis k-way, setara dengan pengaturan RAID-10 standar, tetapi tidak mengharuskan n membagi k. Misalnya tata letak n2 pada drive 2, 3 dan 4 akan terlihat seperti:
2 drives 3 drives 4 drives
-------- ---------- --------------
A1 A1 A1 A1 A2 A1 A1 A2 A2
A2 A2 A2 A3 A3 A3 A3 A4 A4
A3 A3 A4 A4 A5 A5 A5 A6 A6
A4 A4 A5 A6 A6 A7 A7 A8 A8
.. .. .. .. .. .. .. .. ..
Contoh 4-drive identik dengan array RAID-1 + 0 standar, sedangkan contoh 3-drive adalah implementasi perangkat lunak RAID-1E. Contoh 2-drive adalah RAID setara 1. Driver juga mendukung tata letak "jauh" di mana semua drive dibagi menjadi f bagian. Semua potongan diulang di setiap bagian tetapi diimbangi oleh satu perangkat. Misalnya, tata letak f2 pada array 2 dan 3 drive akan terlihat seperti:
2 drives 3 drives
-------- --------------
A1 A2 A1 A2 A3
A3 A4 A4 A5 A6
A5 A6 A7 A8 A9
.. .. .. .. ..
A2 A1 A3 A1 A2
A4 A3 A6 A4 A5
A6 A5 A9 A7 A8
.. .. .. .. ..
Ini dirancang untuk kinerja striping array mirrored; pembacaan berurutan dapat dilucuti, seperti pada RAID-0, pembacaan acak agak lebih cepat (mungkin 10-20% karena menggunakan sektor luar yang lebih cepat dari disk, dan waktu pencarian rata-rata yang lebih kecil), dan penulisan berurutan dan acak adalah tentang kinerja yang sama untuk serangan cermin lainnya. Tata letak berkinerja baik untuk sistem di mana bacaan lebih sering menulis, yang merupakan situasi yang sangat umum pada banyak sistem. 1 / f pertama dari setiap drive adalah array RAID-0 standar. Dengan demikian Anda bisa mendapatkan kinerja striping pada set mirror hanya 2 drive. Opsi dekat dan jauh dapat digunakan sekaligus. Potongan di setiap bagian diimbangi dengan n perangkat. Misalnya tata letak n2 f2 menyimpan 2 × 2 = 4 salinan dari masing-masing sektor, sehingga membutuhkan setidaknya 4 drive:
A1 A1 A2 A2 A1 A1 A2 A2 A3
A3 A3 A4 A4 A3 A4 A4 A5 A5
A5 A5 A6 A6 A6 A6 A7 A7 A8
A7 A7 A8 A8 A8 A9 A9 A10 A10
.. .. .. .. .. .. .. .. ..
A2 A2 A1 A1 A2 A3 A1 A1 A2
A4 A4 A3 A3 A5 A5 A3 A4 A4
A6 A6 A5 A5 A7 A8 A6 A6 A7
A8 A8 A7 A7 A10 A10 A8 A9 A9
.. .. .. .. .. .. .. .. ..
Pada Linux 2.6.18 driver juga mendukung tata letak ofset di mana setiap strip diulangi berkali-kali. Misalnya, tata letak o2 pada array 2 dan 3 drive diletakkan sebagai:
2 drives 3 drives
-------- --------
A1 A2 A1 A2 A3
A2 A1 A3 A1 A2
A3 A4 A4 A5 A6
A4 A3 A6 A4 A5
A5 A6 A7 A8 A9
A6 A5 A9 A7 A8
.. .. .. .. ..
Catatan: k adalah jumlah drive, n #, f # dan o # adalah parameter dalam opsi mdadm --layout. Linux juga dapat membuat konfigurasi RAID standar lainnya menggunakan driver md (0, 1, 4, 5, 6).
Itu menarik dan dijelaskan dengan baik. Namun, RAID1 polos juga memiliki fitur, setidaknya pada RAID perangkat lunak Linux, untuk dapat mempertahankan banyak pembaca secara paralel dengan kinerja yang sangat baik:
Kelihatannya RAID10, dalam tata letaknya yang dekat, lebih cocok untuk perilaku ini (mempercepat I / O bukan single-threaded seperti RAID0 tetapi multi-threaded I / O). n2f2 dengan 4 disk mirip dengan RAID1 dengan 4 disk.
Tata letak n2 dengan 4 disk akan melakukan keduanya: menggandakan kinerja baca untuk utas tunggal, dan melipatgandakan kinerja baca untuk dua utas (jika penjadwal Linux md RAID10 diimplementasikan dengan baik, satu utas harus dibaca berpasangan, dan yang lainnya pada pasangan lainnya).
Semua tergantung apa yang Anda butuhkan! Saya belum melakukan tolok ukur.
sumber