RAID teknolojisinin ortaya çıkışı
RAID terimi David Patterson, Randy Katz ve Garth A. Gibson tarafından 1987 yılında icat edildi. 1988 tarihli teknik raporlarında, “Ucuz Disklerin Yedekli Dizileri (RAID) Örneği”: Üçlü bir dizi ucuz diskin zamanın en iyi disk sürücülerinin performansını yenebileceğini öne sürdüler. Yedeklilik(Redundancy) kullanılırsa, bir RAID dizisi herhangi bir disk sürücüsünden daha güvenilir olabilir.
RAID nasıl çalışır?
RAID, verileri birden çok diske yerleştirerek ve giriş / çıkış (G / Ç) işlemlerinin dengeli bir şekilde üst üste gelmesini sağlayarak performansı iyileştirerek çalışır. Birden fazla diskin kullanılması arızalar arasındaki ortalama süreyi (MTBF) artırdığı için, verileri yedekli olarak depolamak da hata toleransını arttırır.
RAID dizileri işletim sistemine (OS) tek bir mantıksal sabit disk olarak görünür. RAID disk yansıtma(mirroring) veya disk şeritleme(striping) tekniklerini kullanır. Yansıtma, aynı verileri birden fazla sürücüye kopyalar. Şeritlemebölümleri, her sürücünün depolama alanını bir sektörden (512 bayt) birkaç megabayta kadar değişen birimlere ayırır. Tüm disklerin çizgileri ara sıra düzenlenmiş ve sırayla ele alınmıştır.
Örneğin: Tıbbi veya diğer bilimsel görüntüler gibi büyük kayıtların saklandığı tek kullanıcılı bir sistemde, şeritler genellikle küçük (belki de 512 bayt) olacak şekilde ayarlanır, böylece tek bir kayıt tüm disklere yayılır ve tüm disklerden aynı anda okunarak hızlı bir şekilde erişilebilir.
Çok kullanıcılı bir sistemde, daha iyi performans için tipik veya maksimum boyut kaydını tutacak kadar geniş bir şerit oluşturmanızı gerektirir. Bu, sürücüler arasında örtüşen disk G / Ç’lerine izin verir.
Disk yansıtma ve disk şeritleme bir RAID dizisinde birleştirilebilir. Yansıtma ve şeritleme RAID 01 ve RAID 10’da birlikte kullanılır.
RAID Denetleyici (Controller)
Bir RAID denetleyici, OS’lar ve fiziksel diskler arasında, disk gruplarını mantıksal birimler olarak sunan bir soyutlama düzeyi olarak kullanılabilir. Bir RAID denetleyicisi kullanmak performansı artırabilir ve bir çökme durumunda verilerin korunmasına yardımcı olabilir.
Bir RAID denetleyici hem donanım hem de yazılım tabanlı RAID dizilerinde kullanılabilir. Donanım tabanlı bir RAID ürününde, fiziksel bir denetleyici diziyi yönetir. Bir Çevresel Bileşen Ara Bağlantı veya PCI Express kartı biçiminde olduğunda, denetleyici SATA ve SCSI gibi sürücü biçimlerini destekleyecek şekilde tasarlanabilir. Fiziksel bir RAID denetleyicisi de anakartın bir parçası olabilir.
Yazılım tabanlı bir RAID denetleyici, donanım sisteminin kaynaklarını kullanır. Yazılım tabanlı RAID denetleyicileri donanım tabanlı bir RAID denetleyicisi ile aynı işlevleri gerçekleştirirken, , performans artışının çoğunu etkinleştiremeyebilir.
Yazılım tabanlı bir RAID uygulaması bir sistemin önyükleme işlemiyle uyumlu değilse ve donanım tabanlı RAID denetleyicileri çok maliyetli ise, üretici yazılımı(firmware) veya sürücü(driver) tabanlı RAID başka bir uygulama seçeneğidir.
Bir firmware tabanlı RAID denetleyici yongası anakart üzerinde bulunur ve tüm işlemler CPU tarafından, yazılım tabanlı RAID’e benzer şekilde gerçekleştirilir. Ancak, firmware ile RAID sistemi yalnızca önyükleme işleminin başlangıcında uygulanır. İşletim sistemi yüklendikten sonra, denetleyici sürücüsü RAID işlevselliğini üstlenir. Bir firmware RAID denetleyicisi, bir donanım seçeneği kadar pahalı değildir, ancak bilgisayarın CPU’suna daha fazla yük getirir. Firmware tabanlı RAID, donanım destekli yazılım RAID, hibrid model RAID ve sahte RAID olarak da adlandırılır.
RAID Seviyeleri(Levels)
Bu terimi oluşturan ve konsepti simüle eden 1988 tarihli makalede, yazarlar RAID, 0 ile 5 arasındaki altı seviyeyi ayırt etmişlerdir. Bu numaralandırılmış sistem, sürümleri birbirinden ayırmalarına ve yedekliliğin nasıl kullanıldığını ve RAID dizisine verilerin nasıl yayıldığını görmelerini sağlamıştır. İlerleyen zamanda seviye sayısı arttı ve üç kategoriye ayrıldı: standart, iç içe geçmiş ve standart olmayan RAID seviyeleri.
Standard RAID seviyeleri
RAID 0: Bu yapılandırmada disk şeritleme vardır, ancak yedeklilik yoktur. Verileri disklere bölerek en iyi performansı sunar, ancak hata toleransı yoktur. Kaç disk kullanıldığına bağlı olarak okuma ve yazma hızı katlanarak artar. Disklerden biri bozulduğu taktirde tüm veriler kaybolur. Toplam Kapasite= disk sayısı * disk kapasitesi
RAID 1: Disk yansıtma(mirroring) olarak da bilinen bu yapılandırma, verilerin depolanmasını çoğaltan en az iki disk içerir. Şeritleme kullanmaz. Okuma performansı her iki diskde aynı anda okunabildiğinden daha hızlıdır. Yazma performansı, tek disk depolama için aynıdır. Yapılandırmaya bağlı olarak bir disk bozulduğunda RAID bozulmaz, hata toleransı ve yedeklilik sağlar.
Toplam Kapasite= 1 disk kapasitesi
RAID 2: Bu konfigürasyon, diskler arasında şeritleme kullanır ve bazı diskler hata kontrolü ve düzeltme (ECC) bilgilerini saklar. RAID 3’e göre bir avantajı yoktur ve artık kullanılmamaktadır.
RAID 3: Bu teknik, şeritlemeyi kullanır ve parite bilgisini depolamak için bir sürücüyü ayırır. Gömülü ECC bilgisi hataları tespit etmek için kullanılır. Veri kurtarma, diğer sürücülere kaydedilen bilgilerin özel VEYA (XOR) hesaplanarak gerçekleştirilir. Bir G / Ç işlemi, tüm sürücüleri aynı anda ele aldığından, RAID 3 G / Ç ile üst üste gelemez. Bu nedenle, RAID 3 uzun kayıt uygulamaları ile tek kullanıcılı sistemler için en iyisidir.
RAID 4: Bu seviye büyük şeritler kullanır, bu da herhangi bir sürücüden kayıtları okuyabileceğiniz anlamına gelir. Bu, okuma işlemleri için çakışan G / Ç’yi kullanmanızı sağlar. Tüm yazma işlemlerinin parite sürücüsünü güncellemesi gerektiğinden, hiçbir G / Ç çakışması mümkün değildir. RAID 4, RAID 5’e göre avantaj sağlamamaktadır.
RAID 5: Bu seviye, parite ile blok düzeyinde şeritlemeye dayanır. Eşlik (Parity) bilgileri, her sürücüde dizilir ve bir sürücü başarısız olsa bile dizinin çalışmasına izin verir. Dizinin mimarisi, birden çok sürücüyü kapsayan okuma ve yazma işlemlerine izin verir. Bu, genellikle tek bir sürücününkinden daha iyi olan ancak RAID 0 dizisininki kadar yüksek olmayan performansla sonuçlanır. RAID 5 en az üç disk gerektirir, ancak performans nedeniyle en az beş disk kullanılması önerilir.
RAID 5 dizilerinin, yazma eşlikli bilgiyle ilişkili performans etkisinden dolayı yoğun yazma sistemlerinde kullanım için genel olarak kötü bir seçim olduğu düşünülür. Bir disk başarısız olduğunda, RAID 5 dizisini yeniden oluşturmak uzun zaman alabilir. Yeniden oluşturma süresi boyunca performans genellikle bozulur ve yeniden oluşturma tamamlanana kadar dizi ek bir disk hatasına karşı savunmasızdır.
RAID 6: Bu teknik, RAID 5’e benzer, ancak dizideki sürücüler arasında dağıtılan ikinci bir eşlik(parity) şemasını içerir. Ek eşlik kullanımı, iki disk aynı anda başarısız olsa bile dizinin çalışmaya devam etmesine izin verir. Ancak, bu ekstra korumanın bir bedeli vardır. RAID 6 dizileri, gigabayt (GB) başına daha yüksek bir maliyete sahiptir ve çoğu zaman RAID 5 dizilerine göre daha yavaş yazma performansına sahiptir.
İç içe geçmiş RAID seviyeleri
Bazı RAID seviyeleri birlikte kullanılarak ortaya farklı bir RAID seviyesi çıkarılabilir.
RAID 10 (RAID 1 + 0): RAID 1 ve RAID 0’ı birleştiren bu seviye, RAID 1’den daha yüksek performans sunan RAID 10 olarak adlandırılır, ancak çok daha yüksek bir maliyetle. RAID 1 + 0’da, veriler yansıtılır ve yansıtılan veriler şeritlenir.
RAID 01 (RAID 0 + 1): RAID 0 + 1, RAID 1 + 0’a benzerdir, ancak veri organizasyonu metodu biraz farklıdır. Yansıtma oluşturmak ve daha sonra yansıtılan veriyi şeritlemek yerine RAID 0 + 1 bir şerit kümesi oluşturur ve sonra şerit kümesini yansıtır.
RAID 03 (RAID 53 veya RAID 5 + 3 olarak da bilinen RAID 0 + 3): Bu düzey RAID 3’ün sanal disk blokları için şeritleme (RAID 0 stilinde) kullanır. Bu RAID 3’ten daha yüksek performans sunar, ancak daha maliyetlidir.
RAID 50 (RAID 5 + 0): Bu yapılandırma, RAID 0 şeritlemesi ile RAID 5 eşlik dağıtımını ve veri korumasını azaltmadan performansı artırır.
Standart Dışı RAID seviyeleri.
RAID 7: Bu RAID seviyesi, RAID 3 ve RAID 4’e dayanır, ancak bu iki seviyeye önbellek ekler. Bir denetleyici olarak gerçek zamanlı gömülü bir işletim sistemi içerir; yüksek hızlı bir veri yolu ve tek başına bir bilgisayarın diğer özellikleri ile verileri önbelleğe alır. Artık kullanılmayan olan Storage Computer Corp.’un sahip olduğu standart olmayan, ticari markalı bir RAID düzeyidir.
Uyarlanabilir(Adaptive) RAID: Uyarlanabilir RAID, RAID denetleyicisinin eşlik bilgisinin diskler üzerinde nasıl depolayacağına karar vermesini sağlar.RAID denetleyici hangi RAID set tipinin disklere yazılan veri tipine göre daha iyi performans göstereceğine bağlı olarak RAID 3 ve RAID 5 arasında seçim yapacaktır.
RAID S (aynı zamanda parity RAID olarak da bilinir): Bu, mevcut ekipmanlarda artık kullanılmayan EMC Symmetrix’ten RAID çizgili parite için alternatif ve tescilli bir yöntemdir. Bazı performans geliştirmelerinin yanı sıra disk dizisinde yüksek hızlı bir disk önbelleği bulundurmaktan kaynaklanan geliştirmelerle RAID 5’e benzer görünmektedir.
Linux MD RAID 10: Linux çekirdeği tarafından sağlanan bu seviye, iç içe geçmiş ve standart olmayan RAID dizilerinin oluşturulmasını destekler. Linux yazılımı RAID, standart RAID 0, RAID 1, RAID 4, RAID 5 ve RAID 6 konfigürasyonlarının oluşturulmasını da destekleyebilir.
RAID Teknolojisinin Faydaları
Performans, esneklik ve düşük maliyet RAID’in başlıca faydaları arasındadır. Birden çok sabit sürücüyü bir araya getirerek, RAID tek bir sabit sürücünün çalışmasını geliştirebilir ve nasıl yapılandırıldığına bağlı olarak, sonra bilgisayar hızını arırır ve olası bir disk arızasında güvenilirliğini artırabilir.
RAID 0 ile, dosyalar aynı dosya üzerinde birlikte çalışan sürücülere bölünür ve dağıtılır. Bu nedenle, okuma ve yazma işlemleri tek bir sürücüden daha hızlı gerçekleştirilebilir. RAID 5 dizileri, verileri bölümlere ayırır, ancak başka bir sürücüyü eşlik bilgisine ayırır. Bu eşlik sürücüsü, bir eşitsizlik olmayan sürücü başarısız olduğunda çalışmakta olanı görebilir ve bu başarısız sürücüde ne olduğunu anlayabilir. Bu işlev RAID’in daha fazla kullanılabilirlik(avaibility) sunmasına izin verir. Yansıtma ile RAID dizileri, aynı verileri içeren iki sürücüye sahip olabilir, diğeri başarısız olursa, birinin çalışmaya devam etmesini sağlar.
Ucuz terimi kısaltmadan kaldırılmış olsa da, RAID düşük fiyatlı diskleri çok sayıda kullanarak daha düşük maliyetlerle sonuçlanabilir.
RAID kullanmanın olumsuz tarafı
İç içe geçmiş RAID seviyeleri, daha fazla sayıda diske ihtiyaç duyduklarından, geleneksel RAID seviyelerinden daha pahalıdır. İç içe geçmiş RAID için depolama alanı başına maliyet de daha yüksektir, çünkü birçok sürücü yedeklilik için kullanılmaktadır. İç içe geçmiş RAID, maliyetine rağmen popüler olmuştur, çünkü standart RAID seviyeleriyle ilişkili bazı güvenilirlik sorunlarının üstesinden gelinmesine yardımcı olur.
Başlangıçta, bir RAID dizisindeki tüm diskler aynı anda kurulur. Bu, diskleri aynı yaşta yapar ve aynı çalışma koşullarına ve aşınmaya maruz kalır. Ancak bir disk arızalandığında, dizideki diğer bir diskin de kısa sürede başarısız olması olasılığı yüksektir.
Bazı RAID 1 uygulamaları birden fazla yansıtmadan oluşmasına rağmen, bazı RAID seviyeleri (RAID 5 ve RAID 1 gibi) yalnızca tek bir disk arızasını sürdürebilir ve bu nedenle birden çok arızaya neden olabilir. Sorun, RAID dizisinin ve içerdiği verilerin, arızalı bir sürücü değiştirilinceye ve yeni diske veriyle dolduruluncaya kadar savunmasız bir durumda bırakılmasıdır. Sürücüler, RAID ilk uygulandığında olduğundan çok daha fazla kapasiteye sahip olduklarından, başarısız disklerin yeniden oluşturulması çok daha uzun sürecektir. Daha uzun yeniden oluşturma süreleri, ilk disk yeniden oluşturulmadan önce ikinci bir diskin arızalanma olasılığını artırır.
Arızalı disk değiştirilirken ikinci bir disk hatası oluşmasa bile, kalan disklerin bozuk kesimleri veya okunamayan verileri içermesi ihtimali vardır. Bu tür koşullar diziyi tamamen yeniden inşa etmeyi imkansız hale getirebilir.
İç içe geçmiş RAID düzeyleri, daha büyük bir fazlalık derecesi sağlayarak bu sorunları giderir ve eşzamanlı disk arızaları nedeniyle dizi düzeyinde arıza olasılığını büyük ölçüde azaltır.
RAID ve Yedekleme
RAID kendi başına bir yedekleme çözümü değildir. RAID dizisinin mutlaka bir yedekleme planına dahil edilerek farklı bir hedefe yedeklenmesi gerekir.
RAID Teknolojisinin geleceği
RAID halen kullanılıyor ancak birçok analist, bu teknolojinin son yıllarda modası geçmiş olduğunu söylüyor. Silme kodlaması gibi alternatifler, daha iyi bir veri koruması (daha yüksek fiyata da olsa) sunar ve RAID’in zayıf yönlerini ele almak amacıyla geliştirilmiştir. Sürücü kapasitesi arttıkça, bir RAID dizisinin hata yapma şansı da artar ve kapasiteler sürekli olarak artmaktadır.
Katı hal sürücülerinin (SSD) yükselişi de RAID ihtiyacını hafifletiyor olarak görülüyor. SSD’lerin hareketli parçaları yoktur ve sabit disk sürücüleri kadar sık aşarısız olmazlar. SSD dizileri genellikle veri koruması için RAID’egüvenmek yerine aşınma dengeleme gibi teknikler kullanır. Hiperscale hesaplama, yedekli sürücüler yerine yedekli sunucular kullanarak RAID gereksinimini de ortadan kaldırır.
Yine de, RAID şu an için veri depolama alanının bir parçası olmaya devam ediyor ve büyük teknoloji sağlayıcıları hala RAID ürünlerini piyasaya sürüyor. IBM, RAID performansını artırmayı vaat eden Spectrum Virtualize V7.6 ile birlikte IBM Dağıtılmış RAID’i piyasaya sürdü. Intel Rapid Storage Teknolojisinin en son sürümü, RAID 0, RAID 1, RAID 5 ve RAID 10’u destekler ve NetApp ONTAP yönetim yazılımı, üç adede kadar eşzamanlı sürücü hatasına karşı korumak için RAID kullanır. Dell EMC Unity platformu ayrıca RAID 1/0, RAID 5 ve RAID 6’yı da destekler.