Rabu, 13 Oktober 2010

SEJARAH REID

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.

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 dengan penulisan stripe secara penuh. Patennya pada tahun 1978 tersebut juga menyebutkan bahwa disk mirroring atau duplexing (yang kini dikenal sebagai RAID 1) dan juga perlindungan dengan paritas khusus yang didedikasikan (yang kini dikenal dengan RAID 4) bisa digunakan, meskipun saat itu belum ada implementasinya.

Istilah "RAID" pertama kali didefinisikan oleh David A. Patterson, Garth A. Gibson dan Randy Katz dari University of California, Berkeley, Amerika Serikat pada tahun 1987, 9 tahun berselang setelah paten yang dimiliki oleh Norman Ken Ouchi. Mereka bertiga mempelajari tentang kemungkinan penggunaan dua hard disk atau lebih agar terlihat sebagai sebuah perangat tunggal oleh sistem yang menggunakannya, dan kemudian mereka 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 purwarupa RAID level, atau kombinasi dari drive-drive tersebut. Setiap RAID level tersebut secara teoritis memiliki kelebihan dan juga kekurangannya masing-masing. 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. Hal ini bisa jadi membingungkan, sebagai contoh salah satu implementasi RAID 5 dapat berbeda dari implementasi RAID 5 yang lainnya. RAID 3 dan RAID 4 juga bisa membingungkan dan sering dipertukarkan, meski pada dasarnya kedua jenis RAID tersebut berbeda.

Patterson menulis lima buah RAID level di dalam papernya, pada bagian 7 hingga 11, dengan membagi ke dalam beberapa level, sebagai berikut:

  • RAID level pertama: mirroring
  • RAID level kedua : Koreksi kesalahan dengan menggunakan kode Humming
  • RAID level ketiga : Pengecekan terhadap disk tunggal di dalam sebuah kelompok disk.
  • RAID level keempat: Pembacaan dan penulisan secara independen
  • RAID level kelima : Menyebarkan data dan paritas ke semua drive (tidak ada pengecekan terhadap disk tunggal)



KONSEF 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.

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.

Tiga karakteristik umum dari RAID ini, yaitu :
1. RAID adalah sekumpulan disk drive yang dianggap sebagai sistem tunggal disk.
2. Data didistribusikan ke drive fisik array.
3. Kapasitas redunant disk digunakan untuk menyimpan informasi paritas, yang menjamin
recoveribility data ketika terjadi masalah atau kegagalan disk.

Jadi, RAID merupakan salah satu jawaban masalah kesenjangan kecepatan disk memori dengan CPU dengan cara menggantikan disk berkapasitas besar dengan sejumlah disk-disk berkapasitas kecil dan mendistribusikan data pada disk-disk tersebut sedemikian rupa sehingga nantinya dapat dibaca kembali.

Level RAID
RAID dapat dibagi menjadi 8 level yang berbeda :

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. Level ini sebenarnya tidak termasuk ke dalam kelompok RAID karena tidak menggunakan redundansi untuk peningkatan kinerjanya.

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=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.

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.

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.

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. Penyebaran paritas pada setiap disk ini menghindari penggunaan berlebihan dari sebuah paritas disk seperti pada RAID level 4.

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.

Implementasi RAID
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.

KESIMPULAN
RAID, singkatan dari Redundant Array of Independent Disks merupakan organisasi disk memori yang mampu menangani beberapa disk dengan sistem akses paralel dan redudansi ditambahkan untuk meningkatkan reliabilitas / kehandalan.
Konsep kunci dari RAID meliputi 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).

Tiga karakteristik umum dari RAID ini, yaitu :
1. RAID adalah sekumpulan disk drive yang dianggap sebagai sistem tunggal disk.
2. Data didistribusikan ke drive fisik array.
3. Kapasitas redunant disk digunakan untuk menyimpan informasi paritas, yang menjamin recoveribility data ketika terjadi masalah atau kegagalan disk.

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.

sumber:
(http://sira-go.blogspot.com/2010/02/tentang-raid.html)
(http://id.wikipedia.org/w/index.php?title=RAID&diff=3190099&oldid=3003204)

Tidak ada komentar:

Posting Komentar