RAID
A.
Sejarah RAID
Pada
tahun 1978, Norman Ken Ouchi dari International Business Machines (IBM)
dianugerahi paten Amerika Serikat dengan nomor 4092732 dengan judul “System for
recovering data stored in failed memory unit”. Klaim untuk paten ini
menjelaskan mengenai apa yang kemudian dikenal sebagai RAID 5. Istilah RAID
pertama kali didefinisikan oleh David A. Patterson, Garth A. Gibson dan Randy
Katz dari University of California, Barkeley, Amerika Serikat pada tahun 1987,
yaitu 9 tahun setelah paten yang dimiliki oleh Norman Ken Ouchi. Mereka bertiga
mempelajari tentang kemungkinan penggunaan dua hard disk atau lebih agar
terlihat sebagai sebuah perangkat tunggal oleh sistem yang menggunakannya, dan
mereka kemudian mempublikasikannya ke dalam bentuk sebuah paper berjudul “A
case for Redundant Arrays of Inexpensive Disks (RAID)” pada bulan Juni 1988
pada saat konferensi SIGMOD. Spesifikasi tersebut menyodorkan beberapa RAID
level atau kombinasi dari drive-drive tersebut. Setiap RAID level tersebut
secara teoritis memiliki kelebihan dan kekurangan. Satu tahun berselang,
implementasi RAID pun mulai banyak muncul ke permukaan. Sebagian besar
implementasi tersebut memang secara substansial berbeda dengan RAID level yang
asli yang dibuat oleh Patterson dan kawan-kawan, tapi implementasi tersebut
menggunakan nomor yang sama dengan apa yang ditulis oleh Patterson.
Seiring
dengan perkembangan zaman, level dan implementasi RAID pun berkembang. Oleh
karena itu, penulis menyusun sebuah makalah dengan judul “Konsep RAID dan
Impelementasinya” agar dapat mengetahui level dan implementasi RAID pada saat
sekarang.
B.
Pengertian
RAID
RAID,
singkatan dari Redundant Array of Independent Disks merujuk kepada sebuah
teknologi di dalam penyimpanan data komputer yang digunakan untuk mengimplementasikan
fitur toleransi kesalahan pada media penyimpanan komputer (terutama hard disk)
dengan menggunakan cara redundansi (penumpukan) data, baik itu dengan
menggunakan perangkat lunak, maupun unit perangkat keras RAID terpisah. Kata
“RAID” juga memiliki beberapa singkatan Redundant Array of Inexpensive Disks,
Redundant Array of Independent Drives, dan juga Redundant Array of Inexpensive
Drives. Teknologi ini membagi atau mereplikasi data ke dalam beberapa hard disk
terpisah. RAID didesain untuk meningkatkan keandalan data dan meningkatkan
kinerja I/O dari hard disk.
RAID
juga merupakan organisasi disk memori yang mampu menangani beberapa disk dengan
sistem akses paralel dan redudansi ditambahkan untuk meningkatkan reliabilitas.
Kerja paralel ini menghasilkan resultan kecepatan disk yang lebih cepat.
C. Konsep RAID
Sejak
pertama kali diperkenalkan, RAID dibagi ke dalam beberapa skema, yang disebut
dengan “RAID Level“. Pada awalnya, ada lima buah RAID level yang pertama kali
dikonsepkan, tetapi seiring dengan waktu, level-level tersebut berevolusi,
yakni dengan menggabungkan beberapa level yang berbeda dan juga
mengimplementasikan beberapa level proprietary yang tidak menjadi standar RAID.
RAID
menggabungkan beberapa hard disk fisik ke dalam sebuah unit logis penyimpanan,
dengan menggunakan perangkat lunak atau perangkat keras khusus. Solusi
perangkat keras umumnya didesain untuk mendukung penggunaan beberapa hard disk
secara sekaligus, dan sistem operasi tidak perlu mengetahui bagaimana cara kerja
skema RAID tersebut. Sementara itu, solusi perangkat lunak umumnya
diimplementasikan di dalam level sistem operasi, dan tentu saja menjadikan
beberapa hard disk menjadi sebuah kesatuan logis yang digunakan untuk melakukan
penyimpanan.
Ada
beberapa konsep kunci di dalam RAID: mirroring (penyalinan data ke lebih dari
satu buah hard disk), striping (pemecahan data ke beberapa hard disk) dan juga
koreksi kesalahan, di mana redundansi data disimpan untuk mengizinkan kesalahan
dan masalah untuk dapat dideteksi dan mungkin dikoreksi (lebih umum disebut
sebagai teknik fault tolerance/toleransi kesalahan). Level-level RAID yang
berbeda tersebut menggunakan salah satu atau beberapa teknik yang disebutkan di
atas, tergantung dari kebutuhan sistem. Tujuan utama penggunaan RAID adalah
untuk meningkatkan keandalan/reliabilitas yang sangat penting untuk melindungi
informasi yang sangat kritis untuk beberapa lahan bisnis, seperti halnya basis
data, atau bahkan meningkatkan kinerja, yang sangat penting untuk beberapa
pekerjaan, seperti halnya untuk menyajikan video on demand ke banyak penonton
secara sekaligus.
Konfigurasi
RAID yang berbeda-beda akan memiliki pengaruh yang berbeda pula pada keandalan
dan juga kinerja. Masalah yang mungkin terjadi saat menggunakan banyak disk adalah
salah satunya akan mengalami kesalahan, tapi dengan menggunakan teknik
pengecekan kesalahan, sistem komputer secara keseluruhan dibuat lebih andal
dengan melakukan reparasi terhadap kesalahan tersebut dan akhirnya “selamat”
dari kerusakan yang fatal. Teknik mirroring dapat meningkatkan proses pembacaan
data mengingat sebuah sistem yang menggunakannya mampu membaca data dari dua
disk atau lebih, tapi saat untuk menulis kinerjanya akan lebih buruk, karena
memang data yang sama akan dituliskan pada beberapa hard disk yang tergabung ke
dalam larik tersebut.
Teknik
striping, bisa meningkatkan performa, yang mengizinkan sekumpulan data dibaca
dari beberapa hard disk secara sekaligus pada satu waktu, akan tetapi bila satu
hard disk mengalami kegagalan, maka keseluruhan hard disk akan mengalami
inkonsistensi. Teknik pengecekan kesalahan / koreksi kesalahan juga pada
umumnya akan menurunkan kinerja sistem, karena data harus dibaca dari beberapa
tempat dan juga harus dibandingkan dengan checksum yang ada. Maka, desain
sistem RAID harus mempertimbangkan kebutuhan sistem secara keseluruhan,
sehingga perencanaan dan pengetahuan yang baik dari seorang administrator
jaringan sangatlah dibutuhkan. Larik-larik RAID modern umumnya menyediakan
fasilitas bagi para penggunanya untuk memilih konfigurasi yang diinginkan dan
tentunya sesuai dengan kebutuhan.
Beberapa
sistem RAID dapat didesain untuk terus berjalan, meskipun terjadi kegagalan.
Beberapa hard disk yang mengalami kegagalan tersebut dapat diganti saat sistem
menyala (hot-swap) dan data dapat diperbaiki secara otomatis. Sistem lainnya
mungkin mengharuskan shutdown ketika data sedang diperbaiki. Karenanya, RAID
sering digunakan dalam sistem-sistem yang harus selalu on-line, yang selalu
tersedia (highly available), dengan waktu down-time yang, sebisa mungkin, hanya
beberapa saat saja.
D.
Struktur
RAID
Disk
memiliki resiko untuk mengalami kerusakan. Kerusakan ini dapat berakibat
turunnya kinerja atau pun hilangnya data. Meski pun terdapat backup data, tetap
saja ada kemungkinan data yang hilang karena adanya perubahan setelah terakhir
kali data di-backup. Karenanya reliabilitas dari suatu disk harus dapat terus
ditingkatkan.
Berbagai
macam cara dilakukan untuk meningkatkan kinerja dan juga reliabilitas dari
disk. Biasanya untuk meningkatkan kinerja, dilibatkan banyak disk sebagai satu
unit penyimpanan. Tiap-tiap blok data dipecah ke dalam beberapa subblok, dan
dibagi-bagi ke dalam disk-disk tersebut. Ketika mengirim data disk-disk
tersebut bekerja secara paralel, sehingga dapat meningkatkan kecepatan transfer
dalam membaca atau menulis data. Ditambah dengan sinkronisasi pada rotasi
masing-masing disk, maka kinerja dari disk dapat ditingkatkan. Cara ini dikenal
sebagai RAID. Selain masalah kinerja RAID juga dapat meningkatkan realibilitas
dari disk dengan jalan melakukan redundansi data.
E. Level
RAID
RAID
dapat dibagi menjadi 8 level, yaitu level 0, level 1, level 2, level 3, level
4, level 5, level 6, level 0+1 dan 1+0. Setiap level tersebut memiliki
kelebihan dan kekurangannya. Pada umumnya, RAID diimplementasikan di dalam
komputer server, tapi bisa juga digunakan di dalam workstation. Penggunaan di
dalam workstation umumnya digunakan dalam komputer yang digunakan untuk
melakukan beberapa pekerjaan seperti melakukan penyuntingan video/audio.
Implementasi RAID, selain secara hardware (dengan RAID controller) juga dapat
dilakukan secara software, misalnya pada Microsoft Windows NT 4.0. Penjelasan
dari ke 8 level RAID adalah sebagai berikut :
1.
RAID level 0
RAID
level 0 menggunakan kumpulan disk dengan striping pada level blok, tanpa
redundansi. Jadi hanya menyimpan melakukan striping blok data ke dalam beberapa
disk. RAID level 0 membutuhkan minimal 2 harddisk, Sistemnya adalah menggabungkan kapasitas dari
beberapa harddisk. Sehingga secara logikal hanya "terlihat" sebuah
harddisk dengan kapasitas yang besar (jumlah kapasitas keseluruhan harddisk).
Pada awalnya, RAID 0, digunakan untuk membentuk sebuah partisi yang sangat
besar dari beberapa harddisk dengan biaya yang efisien.
2. RAID level 1
RAID
level 1 ini merupakan disk mirroring, menduplikat setiap disk. Cara ini dapat
meningkatkan kinerja disk, tetapi jumlah disk yang dibutuhkan menjadi dua kali
lipat, sehingga biayanya menjadi sangat mahal. Pada level 1 (disk duplexing dan
disk mirroring) data pada suatu partisi hard disk disalin ke sebuah partisi di
hard disk yang lain sehingga bila salah satu rusak , masih tersedia salinannya
di partisi mirror.
3. RAID level 2
RAID
level 2 ini merupakan pengorganisasian dengan error-correcting-code (ECC).
Seperti pada memori di mana pendeteksian terjadinya error menggunakan paritas
bit. Setiap byte data mempunyai sebuah paritas bit yang bersesuaian yang
merepresentasikan jumlah bit di dalam byte data tersebut di mana paritas bit=0
jika jumlah bit genap atau paritas bit=1 jika ganjil. Jadi, jika salah satu bit
pada data berubah, paritas berubah dan tidak sesuai dengan paritas bit yang
tersimpan. Dengan demikian, apabila terjadi kegagalan pada salah satu disk,
data dapat dibentuk kembali dengan membaca error-correction bit pada disk lain.
Kelebihannya antara lain kehandalan yang bagus karena dapat membentuk kembali
data yang rusak dengan ECC tadi, dan jumlah bit redundancy yang diperlukan
lebih sedikit jika dibandingkan dengan level 1 (mirroring). Kelemahannya antara
lain prlu adanya perhitungan paritas bit, sehingga menulis atau perubahan data
memerlukan waktu yang lebih lama dibandingkan dengan yang tanpa menggunakan
paritas bit, level ini memerlukan disk khusus untuk penerapannya yang harganya
cukup mahal.
4. RAID level 3
RAID
level 3 merupakan pengorganisasian dengan paritas bit interleaved.
Pengorganisasian ini hampir sama dengan RAID level 2, perbedaannya adalah RAID
level 3 ini hanya memerlukan sebuah disk redundan, berapapun jumlah kumpulan
disk-nya. Jadi tidak menggunakan ECC, melainkan hanya menggunakan sebuah bit
paritas untuk sekumpulan bit yang mempunyai posisi yang sama pada setiap disk
yang berisi data. Selain itu juga menggunakan data striping dan mengakses disk-disk
secara paralel. Kelebihannya antara lain kehandalan (rehabilitas) bagus, akses
data lebih cepat karena pembacaan tiap bit dilakukan pada beberapa disk
(parlel), hanya butuh 1 disk redudan yang tentunya lebih menguntungkan dengan
level 1 dan 2. kelemahannya antara lain perlu adanya perhitungan dan penulisan
parity bit akibatnya performannya lebih rendah dibandingkan yang menggunakan
paritas.
5. RAID level 4
RAID
level 4 merupakan pengorganisasian dengan paritas blok interleaved, yaitu
menggunakan striping data pada level blok, menyimpan sebuah paritas blok pada
sebuah disk yang terpisah untuk setiap blok data pada disk-disk lain yang
bersesuaian. Jika sebuah disk gagal, blok paritas tersebut dapat digunakan
untuk membentuk kembali blok-blok data pada disk yang gagal tadi. Kecepatan
transfer untuk membaca data tinggi, karena setiap disk-disk data dapat diakses
secara paralel. Demikian juga dengan penulisan, karena disk data dan paritas
dapat ditulis secara paralel. kehandalannya juga bagus karena adanya paritas
blok. Kelemahannya antara lain akses perblok seperti biasa penggunaan 1 disk.,
bahkan untuk penulisan ke 1 blok memerlukan 4 pengaksesan untuk membaca ke disk
data yag bersangkutan dan paritas disk, dan 2 lagi untuk penulisan ke 2 disk
itu pula (read-modify-read)
6. RAID level 5
RAID
level 5 merupakan pengorganisasian dengan paritas blok interleaved tersebar.
Data dan paritas disebar pada semua disk termasuk sebuah disk tambahan. Pada
setiap blok, salah satu dari disk menyimpan paritas dan disk yang lainnya
menyimpan data. Sebagai contoh, jika terdapat kumpulan dari 5 disk, paritas
blok ke n akan disimpan pada disk (n mod 5) + 1; blok ke n dari empat disk yang
lain menyimpan data yang sebenarnya dari blok tersebut. Sebuah paritas blok tidak
menyimpan paritas untuk blok data pada disk yang sama, karena kegagalan sebuah
disk akan menyebabkan data hilang bersama dengan paritasnya dan data tersebut
tidak dapat diperbaiki. Kelebihannya antara lain seperti pada level 4 ditambah
lagi dengan pentebaran paritas seoerti ini dapat menghindari penggunaan
berlebihan dari sebuah paritas bit seperti pada RAID level 4. kelemahannya
antara lain perlunya mekanisme tambahan untuk penghitungan lokasi dari paritas
sehingga akan mempengaruhi kecepatan dalam pembacaan blok maupun penulisannya.
7. RAID level 6
RAID
level 6 disebut juga redundansi P+Q, seperti RAID level 5, tetapi menyimpan
informasi redundan tambahan untuk mengantisipasi kegagalan dari beberapa disk
sekaligus. RAID level 6 melakukan dua perhitungan paritas yang berbeda,
kemudian disimpan di dalam blok-blok yang terpisah pada disk-disk yang berbeda.
Jadi, jika disk data yang digunakan sebanyak n buah disk, maka jumlah disk yang
dibutuhkan untuk RAID level 6 ini adalah n+2 disk. Keuntungan dari RAID level 6
ini adalah kehandalan data yang sangat tinggi, karena untuk menyebabkan data
hilang, kegagalan harus terjadi pada tiga buah disk dalam interval rata-rata
untuk perbaikan data (Mean Time To Repair atau MTTR). Kerugiannya yaitu penalti
waktu pada saat penulisan data, karena setiap penulisan yang dilakukan akan
mempengaruhi dua buah paritas blok.
8. RAID level 0+1 dan 1+0
RAID
level 0+1 dan 1+0 ini merupakan kombinasi dari RAID level 0 dan 1. RAID level 0
memiliki kinerja yang baik, sedangkan RAID level 1 memiliki kehandalan. Namun,
dalam kenyataannya kedua hal ini sama pentingnya. Dalam RAID 0+1, sekumpulan
disk di-strip, kemudian strip tersebut di-mirror ke disk-disk yang lain,
menghasilkan strip-strip data yang sama. Kombinasi lainnya yaitu RAID 1+0, di
mana disk-disk di-mirror secara berpasangan, dan kemudian hasil pasangan
mirrornya di-strip. RAID 1+0 ini mempunyai keuntungan lebih dibandingkan dengan
RAID 0+1. Sebagai contoh, jika sebuah disk gagal pada RAID 0+1, seluruh
strip-nya tidak dapat diakses, hanya sebagian strip saja yang dapat diakses,
sedangkan pada RAID 1+0, disk yang gagal tersebut tidak dapat diakses, tetapi
pasangan mirror-nya masih dapat diakses, yaitu disk-disk selain dari disk yang
gagal.
Referensi
http://khairunnisa220189.blogspot.com/2011/05/mengenal-lebih-dalam-raid-beserta-level.html
Komentar ini telah dihapus oleh administrator blog.
BalasHapusok min
BalasHapusSolder uap