RAID (Redundant
Array of Independent Disks) adalah sebuah teknologi di dalam penyimpanan data
komputer yang digunakan untuk mengimplementasikan fitur toleransi kesalahan
pada media penyimpanan komputer (utamanya adalah hard disk) dengan menggunakan
cara redundansi (penumpukan) data, baik itu dengan menggunakan perangkat lunak,
maupun unit perangkat keras RAID terpisah.
Dengan RAID, data yang
disimpan akan dibagi/direplika ke beberapa hardisk secara terpisah, guna
untuk meningkatkan kehandalan data atau bisa juga untuk meningkatkkan performa
I/O hardisk.
Kehandalan data bisa
terpenuhi dengan RAID karena penyimpanan data tidak hanya diletakkan di
beberapa disk. Jika ada disk yang rusak, data akan tetap aman, dan hardisk yang
rusak dapat diganti dengan segera tanpa mempengaruhi eksistensi data.
Peningkatan performa
I/O hardisk bisa terpenuhi karena ketika hardisk melakukan baca/tulis tidak
dilakukan sendiri, tetapi dilakukan bersama-sama dengan hardisk lainnya.
Istilahnya mereka secara gotong royong melakukan tugas. Sebagai contoh, RAID 0
dengan 2 hardisk, jika kecepatan per disk adalah 7200 rpm, maka dengan RAID 0,
kecepatan berlipat ganda, 2 x 7200 rpm = 14400 rpm.
Level-Level Standar
RAID
Pada dasarnya, level
standar RAID ada 5. Tetapi seiring dengan perkembangan teknologi komputer,
beberapa level-level baru bermunculan.
1. RAID 0 (atau
yang disebut juga dengan stripe set atau striped volume), data akan disimpan
terpisah secara merata ke dua hardisk atau lebih, tanpa informasi parity untuk
meningkatkan kecepatan. Parity data di RAID digunakan untuk memeriksa error
hardisk & mendapatkan redundansi data. Jika ada hardisk yang rusak, secara
otomatis RAID akan melakukan rekonstruksi data pada hardisk yang baru.
Nah, pada RAID 0, parity data tidak ada, sehingga jika ada hardisk yang rusak,
maka secara otomatis data akan rusak. Tidak ada redundansi/kehandalan data di
level RAID 0. Pada umumnya, RAID 0 digunakan untuk meningkatkan performa
baca/tulis saja, atau untuk memperbesar kapasitas simpan, tanpa mementingkan
redundansi data.
Seperti yang sudah saya sebutkan sebelumnya, dengan RAID 0, kecepatan I/O
hardisk akan meningkat karena kinerja baca/tulis dikerjakan bersama-sama.
Dengan 3 hardisk SATA 7200 rpm, anda akan memiliki performa setara 3 x 7200 rpm
= 21600 rpm. Dengan RAID 0, 3 x 1 TB hardisk = 3 TB hardisk!
2. Dengan RAID
1, data di hardisk pertama akan di salin (mirroring) persis sama ke hardisk
kedua. Jika anda lebih mementingkan performa baca & kehandalan data,
ketimbang simpan, maka RAID 1 adalah pilihan yang pas.
Pada RAID 1, jika pada salah satu hardisk terjadi kerusakan, maka data akan
tetap aman karena sudah tersalin di hardisk kedua. Jika hardisk yang rusak
mendapatkan ganti, maka secara otomatis RAID 1 akan melakukan salinan/mirorring
ke hardisk yang baru.
2 Hardisk yang diatur dengan RAID 1, total kapasitasnya hanya seperti memiliki
1 hardisk saja. Jadi semisal 2 x 1 TB hardisk dengan RAID 1, maka kapasitas
simpan yang bisa dipakai adalah 1 TB saja.
Kecepatan baca/tulis pada RAID 1 cukup bagus, walau tidak setinggi performa
pada RAID 0. Kekurangan RAID 1 hanyalah pada kapasitas simpan saja.
RAID 1 banyak digunakan pada operating system (OS) & transactional
database.
3. RAID 5 menggunakan
metode block-level striping dengan data parity didistribusikan ke semua
hardisk. RAID 5 cukup populer karena mampu menghadirkan redundansi data dengan
biaya yang tidak terlalu besar.
RAID 5 memiliki toleransi kerusakan disk hanya satu saja, sama seperti RAID 1.
Jadi, jika anda menggunakan 3 x 1TB hardisk, maka kapasitas simpan yang bisa
digunakan adalah 2 TB saja, karena 1 TB lainnya digunakan untuk toleransi
kerusakan.
RAID 5 memiliki performa baca dua kali lipat lebih cepat, tetapi tidak ada peningkatan
pada performa tulis. RAID level ini dianjurkan untuk penyimpanan data, file
server, atau untuk backup server.
4. RAID 10 biasa
juga disebut dengan RAID 1+0 atau RAID 1&0, mirip dengan RAID 0+1, cuma
perbedaanya adalah penggunaan level RAIDnya dibalik.
RAID 10 sebenarnya bukan level standar RAID yang diciptakan untuk driver Linux
MD. RAID 10 membutuhkan minimal 4 buah hardisk.
RAID 10 adalah kombinasi antara RAID 0 (data striping) dan RAID 1 (mirroring).
Memiliki performa baca/tulis & redundansi data tertinggi (memiliki
toleransi kerusakan hingga beberapa hardisk).
RAID 10 memiliki toleransi kerusakan 1 hardisk per mirror stripe.
RAID 10 biasanya banyak diimplementasikan pada database, web server &
server aplikasi atau server-server yang membutuhkan performa hardisk tinggi.
5. RAID 50 (atau
juga disebut dengan RAID 5+0) merupakan kombinasi block-level striping dari
RAID 0 dengan distribusi parity dari RAID 5. RAID 50 membutuhkan minimal 6
hardisk.
Jika salah satu hardisk dari masing-masing RAID 5 ada yang rusak, data akan
tetap aman. Akan tetapi jika hardisk yang rusak tidak segera diganti, dan
hardisk dari RAID 5 tersebut ada yang rusak lagi, maka semua data di RAID 50
akan rusak. Penggantian hardisk harus dilakukan agar data tetap terjaga redundansinya.
RAID 50 memilik toleransi kerusakan 1 hardisk per sub-array. Seperti halnya
RAID 10, RAID 50 juga memiliki performa baca/tulis & redundansi data tinggi
(memiliki toleransi kerusakan hingga beberapa hardisk).
RAID 50 biasanya banyak di implementasikan pada server database, server
aplikasi, dan server penyimpanan file.