RAID1/5 ile bazı veri kaybı riskleri

Şimdiye kadar sık duyduğum bir yanılgı, RAID’in bir tür data cevşeni gibi her türlü musibetten koruduğu inancı. Evinizde filmleri depolamak için aldığınız veri depolama kutuları için yeterli belki ama kritik veri saklıyorsanız bu size sahte bir güvenlik hissi sağlıyor da olabilir.

Çok sevdiğim bir sözü günlüğümde ilk kez anmak bu yazıya kısmetmiş: Aslında hepsi olasılık hesabından ibaret. 🙂 Bilgi sistemlerinizdeki veri çeşitli aşamalarda çeşitli sebeplerle bozulabilir. Donanımlar ve yazılımlar bunları çeşitli yöntemlerle düzeltmeye çalışsalar da ufak bir risk her zaman vardır. Uzaydan dünyamıza düşen kozmik ışınlar bile verinizi bozabilir. Sabit diskin fiziksel olarak arızalanıp servis dışı kalmasından bahsetmiyorum. Verinin bozulmasından bahsediyorum.

Bu bozulma ile ilgili sabit disk üreticileri istatistiki bilgiler sunarlar. ZFS ile ilgili bir yazımda andığım gibi, düzeltilemeyen veri hataları bu bilgilerden biridir. Aşağıda piyasada satılan bir sabit diskin özellik sayfasından bir ekran görüntüsü alıntıladım.

Bu model için 10^15 yazıyor. Bunun “Ben okuduğum 10^15 bitte bir bit hata yaparım abi” demek olduğunu söylemiştim daha önceki yazımda. Yani okuduğu 125 Terabaytta(1) bir bit hata yapıyor.

Bunu 125 TB okuyup bir bit hata yapıyor olarak düşünmemelisiniz. Daha çok, okuduğu bu 125 TB verinin bir yerlerinde bir bit hata yapacak anlamına geliyor. Bu ilk bit de olabilir, sonuncusu da olabilir, ortalarda herhangi bir yerde de olabilir. Ancak okunan veri miktarı 125 TB’a yaklaştıkça bu olasılık yükselir ve 125TB’dan itibaren de 1 olur, yani %100.

İki örnek daha verelim. Aşağıdakinde 10^14 bit verilmiş. 12.5 TB’ta bir hata. Bu herhangi bir teknoloji dükkanından ev bilgisayarınız için alacağınız sabit disklerden biri. “Kurumsal” olmayan bilgisayarlarda genelde bunlardan bulunur.

Son örnek ise kurumsal depolama sınıfından. 10^16 bitte bir hata. Kabaca 1.25 Petabayt, PB(1).

Bunu bir sorun olarak yeni yeni duyuyor olabilirsiniz, çok normal. Depoladığımız veri miktarı gün geçtikçe artıyor, üstelik ivmesi de artıyor. Bu verdiğim sayılar yıllar önce de üç aşağı beş yukarı böyleydi ama o zamanlar 250GB sabit disk büyük bir diskti. Şimdi eve disk alırken 2TB’dan başlıyoruz. Kurumsal depolamada çok daha başka rakamlar konuşuluyor. Dolayısıyla bu hatalara yakalanacak kadar çok miktarda veri aktarımı yapma ihtimalimiz artıyor.

Bu hata oranının RAID1 ile ilişkisi

Kısa bilgi: RAID1’de iki veya daha fazla sayıda diski birbirinin kopyası olarak tutarsınız. Genellikle ikili RAID1 grupları yaygındır. Yani verinin iki kopyası iki diske aynı anda yazılır. Şöyle:

Bu şekilde 10TB’lık iki tane sabit diskten oluşan bir ayna grubunuz var diyelim. Bir tanesi bozulsun ve yerine başka bir tane takın. RAID diziniz, sağlam olan diski baştan sona okuyup yeni diskinize kopyalayacaktır. Eğer birinci disk okumada bir hata yaparsa…

Eyvah eyvah. 🙂 Aslında 1 olan bitlerden bir tanesi “flip” oldu. Burada yanlışı doğrusundan da öte bir durum görüyoruz: Tutarsız veriniz var, bundan haberiniz yok, hangisinin doğru olduğunu bilmiyorsunuz ve bundan haberiniz olduğunda çok geç olabilir.

Eğer kullandığınız disk yukarıda 10^14 bitte bir hata oranı verenlerdense böyle bir durumda kalma ihtimaliniz oldukça yüksek. Hatta eskaza yeni diskiniz bozulursa (olur öyle), ikinci RAID yeniden oluşturmasında kesin yakalanacaksınız.

Yine yukarıda 10^15 bitte bir hata veren türdekilerden bir diskiniz varsa hatırı sayılır derecede daha güvendesiniz. 10^16’lıksa, rahat uyuyup “kısmette varmış” bile diyebilirsiniz. Demeseniz daha iyi olur ama. 😉

RAID yeniden yapılandırmasında disk yükü

Diskler kullanıldıkça yıpranır ve önceki başlıkta gördüğünüz sessiz veri bozulmalarının dışında arıza yapma ihtimalleri de artar. Disk üreticilerinin ürün sayfalarında artık bu yüzden çok çeşitlenmiş ürün grupları görüyorsunuz biraz da. Evde, günde 3 saat tek kişinin kullandığı diskle şirkette 24 saat açık, mesai saatlerinde aynı anda onlarca kişinin isteğine yanıt vermek zorunda kalan diskin yıpranması farklı.

RAID dizinizde bir disk arıza yaptı ve değiştirdiniz diyelim. Yerine bomboş bir disk taktınız. Şimdi sisteminiz, dolu disklerdeki veriyi kullanarak yeni diskinize, eskisindeki verinin aynısını yazacak. Bu sırada da belki başka kullanıcıların veri okuma ve yazma isteklerini de karşılamaya çalışacak. Yani tüm disklerin yükü (hatırı sayılır şekilde) artacak.

İşte bu aşamada diğer disklerden birinin arıza verme ihtimalini de artırıyorsunuz. Hele ki disklerinizin hepsi aynı partide üretilmiş disklerse, birbirlerine yakın zamanlarda arıza yapma ihtimalleri de yükseliyor. Eğer bu yükün altında 2 diskli bir RAID1 dizinizdeki diğer disk de arıza verirse depoladığınız veriyle vedalaşmanız gerekebilir.

RAID5 yazma deliği

Depolama maliyetleri bu kadar düşmüşken ben pek tercih etmiyorum ama RAID5 var bir de. Bu arkadaşta en az 3 adet disk oluyor. Her yazma işleminde veri grubunun kendisi ile bunun kısa bir kontrol verisi ayrı ayrı disklere beraber yazılıyor. RAID1’e karşı avantajı benzer güvenirlikte yer kazancı. Önceki başlıkta verdiğim RAID1’de depolanabilen veri miktarı toplam disk sayısının en fazla %50’si kadar olabiliyor; RAID5’te 3 disk için %66’dan başlıyor.

Böyle. p’li olanlar kontrol verisi. Yani A bloğunu incelerseniz; A1 ve A2 verinin kendisiyken Ap o verinin kontrol verisi. Aynısı B ve C grupları için de geçerli. Kontrol verisini disklere dağıtıyor ki dengelensin. Bu tip 3 diskten oluşan bir RAID5 dizisinde disklerden herhangi biri bozulursa diğer iki tanesinden veriyi geri getirebiliyorsunuz.

Peki tam da bu gruplardan birinin kontrol verisi yazılırken güç kesilirse? Sistemi geri açtığınızda çalışmaya devam edeceksiniz ve muhtemelen disklerden herhangi biri bozulana kadar da bu hatadan haberdar olmayacaksınız. Saatli bomba gibi düşünün. 🙂

Pratikte kesintisiz güç kaynakları, pil destekli kontrol kartları ve başka çeşitli stratejilerle bunun ihtimalini hatırı sayılır derecede azaltabiliyorsunuz. Yine de RAID5’e tek başına o kadar güvenmemekte fayda var. Bu arada yazma deliği sadece RAID5’e değil, tüm RAID seviyelerine irili ufaklı etki ediyor.

Notlar

  1. SI birim sistemindeki Tera’yı kastettim. Yani 1024’ün değil 1000’in katları şeklinde giden. Zaten 1024 olanının adı Tebibayt. Aynı şekilde Petabayt da SI birim sisteminden. 1024’ün katları olanın adı Pebibayt.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir