Kutipan artikel Wikipedia tentang RAID :
RAID 0 dapat dibuat dengan disk dengan ukuran berbeda, tetapi ruang penyimpanan yang ditambahkan ke array oleh masing-masing disk terbatas pada ukuran disk terkecil. Misalnya, jika disk 100 GB dilucuti bersama dengan disk 350 GB, ukuran array akan menjadi 200 GB (100 GB × 2).
Namun artikel itu tidak menyatakan Mengapa itu tidak bisa RAID mereka bersama-sama dan menghabiskan seluruh ruang disk. Saya mengerti bahwa striping menulis di antara keduanya, tetapi tentu saja seharusnya tidak mencegah menulis ke sektor selanjutnya dari disk kedua, sementara berjalan dalam kinerja yang menurun? Apakah ada sistem RAID alternatif (mis., RAID perangkat lunak) yang menawarkan fitur seperti itu?
hard-drive
raid
stripe
Polynomial
sumber
sumber
mdadm --create --verbose /dev/md0 --chunk=512 -l0 -n16 /dev/sdd5 /dev/sde5 /dev/sde6 /dev/sde7 /dev/sde8 /dev/sde9 /dev/sde10 /dev/sde11 /dev/sde12 /dev/sde13 /dev/sde14 /dev/sde15 /dev/sde16 /dev/sde17 /dev/sde18 /dev/sde19
. Saya berakhir dengan ruang yang lebih sedikit daripada saya hanya menggunakan drive 16GBJawaban:
Alasan ukuran dibatasi oleh ukuran disk terkecil berkaitan dengan fakta bahwa garis-garis ditulis "secara bergantian" dan harus berukuran sama.
Dalam sistem dua disk, semua garis aneh ada di satu disk, yang genap di yang lain. Menulis bergantian di antara disk, ganjil / genap / ganjil / genap / ...
Karena garis-garis harus memiliki ukuran yang sama, dan dipasangkan (untuk dua disk), Anda dibatasi untuk ruang maksimum yang dapat digunakan sebesar 2 * (ukuran disk terkecil).
sumber
Kamu bisa gunakan sisa ruang. Anda dapat membuat volume menggunakan ruang yang tersisa, atau bahkan menggunakannya sebagai bagian dari RAID lain. Namun, menggunakan ruang ekstra ini akan menurunkan kinerja yang diberikan RAID 0 kepada Anda, karena dua proses berbeda mungkin mencoba mengakses pengontrol dan disk fisik yang sama.
Mengapa Anda tidak dapat menambahkan ruang ekstra ini ke RAID asli? Nah, tanpa masuk ke banyak detail, itu karena algoritma yang digunakan RAID. RAID 0 menulis ke disk pertama dalam RAID kemudian disk berikutnya. Ini meningkatkan kinerja, karena tidak harus menunggu disk sebelumnya selesai membaca atau menulis. Jika 250 GB dalam posting Anda digunakan, sebagian besar penulisan akan ke disk pertama, cukup banyak menghilangkan kenaikan kinerja.
RAID mungkin bukan solusi yang Anda cari, jika Anda ingin menggunakan semua ruang drive Anda harus merentang volume. Spanning memungkinkan Anda mengambil banyak volume dan menyatukannya dalam satu volume besar. Spanning tidak menawarkan peningkatan kinerja atau redundansi.
sumber
RAID adalah standar pseudo yang menjelaskan bagaimana data dapat disimpan pada array disk. Standar ini menjelaskan empat cara berbeda untuk menyimpan data (secara teknis lebih banyak, tetapi kebanyakan tidak ada yang peduli tentang yang lain):
Raid-0: Striping. Setiap blok data dibagi di setiap anggota perangkat RAID. Tidak ada redundansi, jadi ini lebih dari sekadar Array Disk Murah, bukan array Redundan disk murah.
Raid-1: Mirroring. Setiap blok data disimpan pada setiap disk dalam array. Ini hanya benar-benar membuat sejak dengan dua disk. RAID 1/0 atau hanya RAID 10 adalah kombinasi mirroring dan striping dan dapat digunakan untuk memanfaatkan lebih dari dua disk.
Raid-5: Parity. Setiap blok data dibagi di setiap anggota perangkat RAID + satu disk didedikasikan untuk paritas.
Raid-6: Double Parity: Sama seperti Raid-5, tetapi dengan dua disk paritas.
Itu dia. Raid tidak menjelaskan apa yang harus dilakukan tentang kesalahan ukuran atau apa pun, tetapi striping hanya bekerja dengan disk berukuran sama. Biasanya cara untuk menyiasatinya adalah Anda dapat menggunakan ruang sisa sebagai disk drive terpisah.
Melangkah menjauh dari RAID sebagai cara membuat array disk yang besar, Anda dapat menggunakan hal-hal seperti ZFS dan hanya menambahkan disk ke kumpulan penyimpanan. ZFS akan selalu mencoba menggunakan kedua disk seefisien mungkin, dan Anda bisa memberi tahu ZFS tingkat redundansi yang Anda sukai.
Teknologi sebelumnya adalah hal-hal seperti pemetaan volume (yaitu LVM, atau setara dengan windows), yang mengabstraksi gagasan pemetaan blok ke disk ke tingkat yang lebih tinggi. Dengan LVM Anda dapat menjangkau seluruh disk, memperluas partisi, memiliki partisi yang tidak bersebelahan dan seterusnya. Pemetaan volume bukanlah RAID, dan bukannya meningkatkan kinerja saat Anda menambah disk, ia hanya akan secara acak memilih untuk menulis ke satu disk atau yang lain tergantung di mana Anda berada dalam sistem file. Ini disebut spanning dan biasanya lebih baik daripada RAID jika Anda menggunakan IOPS daripada kinerja mentah.
sumber
Ini bisa benar dan akan berlaku untuk sebagian besar implementasi RAID0. Namun tidak untuk semua.
Ada dua alasan untuk menggunakan RAID 0:
Opsi 2 adalah yang paling umum dan saya pikir ini digunakan di hampir semua implementasi RAID 0 saat ini. Penjelasan teknis adalah bahwa informasi ditulis bergantian antara disk.
Secara non teknis: anggap disk sebagai dua buku. Buku-buku ini memiliki kecepatan akses (baca / tulis) terbatas. Jadi, alih-alih dua buku 100 halaman, kami memformatnya menjadi dua buku, tetapi memberi nomor baru pada halaman-halaman itu sehingga semua angka genap ditulis dalam satu buku dan semua angka ganjil di buku lain.
Sekarang 'buku R0' baru kami berperilaku jika buku tunggal dengan dua kali jumlah halaman dan dua kali kecepatan.
Opsi 1 dapat sesederhana 'lem ke buku back to back'. Dalam hal ini Anda tidak mendapatkan kecepatan, tetapi Anda dapat merekatkan buku dengan jumlah halaman berbeda. Saya sepertinya mengingat beberapa implementasi 'RAID0' seperti itu sekitar tahun 1990. Tetapi bukan itu yang dianggap oleh kebanyakan orang 'RAID 0 yang tepat'.
sumber