Raid Disk Yapısı

Tem 13, 2018

Kısa bir zaman öncesine kadar her disk birbirinden bağımsız şekilde çalışırdı. Bu durum birden fazla diski olan sistemlerde disklerin yük paylaşımı konusunda probleme sebep olurdu. Bu problemin aşılabilmesi için, birden fazla diski olan sistemlerde bütün diskler tek bir diskmiş gibi kullanılmaya başlandı. Bunu sağlayan ise disk striping (şeritleme) teknolojisiydi. Bu teknolojiyle bilgiler eşit büyüklükte parçalara bölünerek disklere paylaştırılıyordu. Bu sistemin avantajı diske yazma ve okumada çok yüksek hızlar elde edilebilmesiydi; fakat önemli bir dezavantajı ise disklerden herhangi birinin çökmesi durumunda çok büyük miktarda bilgi kaybına uğranılmasıydı.

Aralık 1987 yılında Berkeley Üniversitesi’nde yayınlanan bir makalede RAID (Redundant Array of Inexpensive Disks) konusu tartışılmaya başlandı. Bu makalede RAID1’den RAID5’e kadar 5 farklı RAID yöntemi anlatılmıştır; fakat bilgisayar endüstrisinde RAID1, RAID3 ve RAID5 yöntemleri daha fazla ilgi çekti. RAID’in genel özellikleri aşağıda sıralanmıştır.

  • Kullanıcıya bir veya daha fazla mantıksal sürücü gibi gözüken disk setidir.
  • Veriler diskler arasında dağıtılarak yük paylaşımı sağlanır.
  • Disk hatalarına karşı kendini yeniden oluşturma yöntemleri eklenmiştir.

RAID1: Bu tip kullanımla her disk başka bir diskle ikizlenmektedir. Bu disk kapasitesinin yarıya düşmesine yol açar. Okuma hızı ise diğer sistemlere göre gayet iyidir. Disk kafası okunacak yere hangi diskte daha yakınsa, o disk seçilerek oldukça iyi okuma hızları elde edilebilir. Yazma işlemi ise biraz daha yavaş olur; çünkü aynı bilginin iki diske birden yazılması gerekir.

 

RAID2: Bu metodda disk hatası yüzünden oluşan veri kayıplarının giderilebilmesi ve verilerin yeniden oluşturulabilmesi için Hamming Error Correction Code-ECC (Hata Düzeltme Kodu) kullanılmıştır. ECC ilk önce 50’li yıllarda büyük Dynamic Random Access Memory (DRAM) dizileriyle bereber geliştirildi. RAID2, Tipik RAID2 10 veri diski ve 4 Hamming ECC diski ile yapılır. Hız açısından pek problemli olmamakla beraber, ECC diskleri gerektirdiği için 10 veri ve 4 ECC diski ile oluşturulan bir RAID2 sistemde kapasitenin %71,4 ü kullanılabilir.

 

RAID3: RAID2’de kullanılan ECC metodu için RAID3’de 1 tane parity disk (eşlik diski) ayrılmıştır. Yani RAID3’de her grup diskten bir tanesi eşlik diski olarak kullanılır. Bu eşlik bilgileri datalar üzerinde XOR işlemi yapılarak elde edilmiştir. Eğer bir disk hata veririrse, diğer disklerdeki bilgilerin ve parity drive (eşlik sürücüsü) yardımıyla bu diskteki bilgiler yeniden oluşturulabilir. RAID3 sistemlerde verimlilik hesaplanırken n/n+1 formülü kullanılır. Burda n sayısı dizideki disk sayısıdır. Bu tip sistemlerde büyük I/O karakteristikleri iyi olmasına rağmen ufak veya orta büyüklükteki I/O karakteristikleri iyi değildir.

 

RAID4: Diğer RAID sistemlerine göre farklı bir yaklaşım kullanılmıştır. Bu yaklaşımda veriler sabit blok sayısına sahip parçalar halinde ayrı disklere disk striping (disklere bölüştürme) teknolojisi kullanılarak yazılır ve verinin eşliği ise ayrı bir diskte ona karşılık gelen bölümde tutulur. Bir diske yazma işleminde, veri diske yazıldıktan sonra bunun parity’sinin yazılacağı yerdeki parity bilgisi tekrar okunup, yeni parity yeni veriye göre hesaplanıp tekrar yazılır. Ancak bu da parity diskinin çok fazla kullanılmasına ve kısa sürede risk taşır hale gelmesine sebep olur. RAID4’te okuma hızı yüksektir, yazma hızı ise eşliğin hesaplama yönteminden dolayı yavaştır. Kapasite kullanımı ise RAID3 ile aynıdır.

 

RAID5: RAID5’de, RAID4’teki eşlik diskin aktif halde kullanımını önlemek için, eşlik bilgilerinin diğer disklere paylaştırılması ile eşlik disk kavramı ortadan kaldırılmıştır. Eşlik bilgileri bütün disklere paylaştırılarak yük dengelemesi yapılmıştır. Okuma performansı RAID4 gibidir, yazma performansı ise biraz daha iyileştirilmiştir. Kapasite ise RAID4 gibidir. RAID5’in en önemli avantajı veri güvenilirliğidir. RAID5’te veri kaybı ancak tanımlı olan mantıksal sürücüde iki diskin birden çökmesi sonucu meydana gelebilir. Üç adet disk ile oluşturulması performans açısından tavsiye edilmez. Dört veya beş disk ile çalışmak Raid 5 kullanımı için daha uygundur.

 

  • Eğer 5 disk ile oluşturulmak istenilen bir RAID varsa, Raid 6, Raid 5’e göre çok daha güvenli bir yöntem olacaktır.

RAID 6: Raid 5 ‘e benzemektedir. Raid 6’da  ek olarak ikinci bağımsız parity şeması kullandığından ekstra bir hata töleransı sağlar. Raid 6 da  data bir sıra sürücü üzerine bir blok olarak yazılır ve ikinci bir parity tüm sürücüler için hesaplanır ve yazılır. İki adet parity değer(raid 5 de bir adet oluşuyordu) farklı disklerde oluşturulur. Raid 6 oldukça yüksek veri hata töleransı sağlar ve birden fazla disk hatasında da çalışmaya devam edebilir.

 

RAID-DP(Dual Parity): RAID 6 ile yöntem olarak birbirine benziyor olsa da uygulanma mimarisi ve performansı birbirlerinden oldukça farklıdır. İki adet parity disk oluşturulur ve bu disklerden birine horizonal olarak diğerine diagonal olarak veriler yazılır. Böylece iki adet diskin hasar görmesi durumunda dahi parity değerler hesaplanarak veriler kurtarılabilecektir. Fakat bu durum sistem performansını düşürür.