Bir büyük RAID 10 mu daha küçük diziler mi?


10

Sorum şu: belirli uygulamalar için daha küçük diziler oluşturmak yerine RAID 10 gibi hızlı okuma ve yazma performansına sahip büyük bir dizi oluşturmak ne zaman uygun olur?

Genel G / Ç gereksinimlerim çok ağır değilse, mükemmel okuma ve yazma performansına sahip tek bir dizi, farklı erişim modellerine sahip uygulamaların zirveye çıktığı zamanlar (belki de nadir) zamanlar dışında tüm uygulamalara genel olarak daha iyi performans sağlayabilir. aynı zamanda (bir veritabanı çarpılırken büyük miktarlarda büyük dosyaların kopyalanması).

Bir çift iş milini işlem günlükleri gibi belirli bir göreve ayırırsam ve iş yüküyle ter dökmezler ... neden bu iş yükünü daha büyük bir RAID 10'a koymuyorsunuz? Bu iğler, zamanın% 60'ını çizmek yerine diğer iş yüklerine katkıda bulunabileceklerdi.

PS, benim özel durumumda RAID 10'un maliyet yükü bir faktör değildir, çünkü birden fazla RAID 1 dizisi ve bir ufacık RAID 5 oluşturmaya çalışıyorum. İhtiyacım olan alan için RAID 10'a gitmek karşılaştırılabilir olacaktır.

Yanıtlar:


10

Depolama alanınızı nasıl ayarlayacağınızı bilmek tamamen IOPS ve bant genişliğini ölçmek ve bütçelemekle ilgilidir. (Burada basitim çünkü okuma / yazma, ortalama IO'lar, RAID şerit boyutu ve önbellek isabet yüzdeleri karışımının yüzde karışımının boyutu çok önemli. Bu sayıları alabiliyorsanız, hesaplamalarınızı daha da doğru yapabilirsiniz.)

Depolama alanı planlarken sık sık kullandığım gerçekten güzel bir küçük IO hesap makinesi var . wmarow'un depolama dizini de oldukça çağdaş disk performans numaraları elde etmek için iyidir.

Bir çift iş milini işlem günlükleri gibi belirli bir göreve ayırırsam ve iş yüküyle ter dökmezler ... neden bu iş yükünü daha büyük bir RAID 10'a koymuyorsunuz?

Sıralı IO'yu rastgele IO'lu bir iş miline yerleştirmenin bu sıralı IO'yu rastgele hale getirdiğini unutmayın. İşlem günlüğü diskleriniz, sıralı GÇ işlemleri gördüğünüz için ter atmıyor gibi görünebilir. Sıralı okuma ve RAID-1 birimine yazma işlemleri oldukça hızlı olacaktır, bu nedenle "ter dökmüyorsanız" disk sırası uzunluğuna dayandırıyorsanız, tüm hikayeyi elde edemezsiniz.

Hedeflenen hedef birim için mümkün olan maksimum rasgele IOPS'yi ölçün veya hesaplayın, o birimdeki geçerli iş yükünün temelini alın ve ardından bu işlem günlüğü IOPS'sini hedef birimdeki kalan rasgele IO'ya koymak için yeterli boşluğunuz olup olmadığına karar verin. Ayrıca, iş yükü için gerekli alanı bütçelediğinizden emin olun (belli ki). Çok eğimliyseniz, ES iş yükünüz / alan ayırmanızda ek "boşluk" yüzdesi oluşturun.

Hedef RAID-10 birimine koymak istediğiniz diğer tüm iş yükleri için bu yöntemle devam edin. Rastgele IOPS'unuz biterse, birime çok fazla kazıyorsunuz - daha fazla disk ekleyin veya iş yükünün bir kısmını özel birimlere koyun. Alanınız biterse, daha fazla disk ekleyin.


Bir sorun şu anki yapılandırmamla, toplam IOPS üzerinde sadece iyi bir ölçüm alabiliyorum, ki bu sadece transfer başına ortalama 14K bayt ile sadece 300 civarında (% 60 okuma). Düşündüğüm büyük RAID 10 dizisi 758 rasgele 16k IOPS (% 60 ve önbellek faktörü) yapabilmelidir. Ancak bu hesaplama karışık iş yüklerini dikkate almıyor ve bununla mücadele ediyorum.
Boden

4

Son zamanlarda RAID 5'in güvenilirlik için kötü bir yol olduğunu söyleyen daha fazla makale okudum. Bir diskin RAID 5 dizisinde bozulduktan, sürücünün değiştirilmesinden sonra daha fazla olduğuna inanıyorum ve ikinci bir diskin bizi yeniden biçimlendirip yedeklemeden geri yüklemeye zorlayan gizli bir kurtarılamayan okuma hatası olduğu için kurtarılamadı.

Sürücüler büyüdükçe, bu büyük disklerde algılanamayan kurtarılamaz bir okuma hatasına sahip olma olasılığı da artıyor ve RAID 5 ile güvenilirlik artık onu kesmiyor. Yansıtma yapmıyorsanız, görünüşe göre tavsiye RAID 10'a gitmektir.

Hız sorunlarına karşı çok hassas bir şey yapmazsanız, şeyleri küçük dizilere veya bunun gibi bir şeye bölmek konusunda endişelenmezdim. Bir RAID 10'a koyun ve performansınızın tıkalı olup olmadığını görün. Sistemdeki uygun önbellekleme ve bellek ile iyi olmalıdır. Kıyaslama sayıları asla gerçekte alacağınız şey olmayacaktır, çünkü gerçek kullanımınıza, gerçek yükünüze, disk sürücüsü performansınıza, denetleyicinin önbelleğe alınmasına, disk önbelleğe alınmasına, parçalanmaya vb.

En iyi kural, yapılandırmayı olabildiğince basitleştirmektir, çünkü bir veya iki yıl içinde bu kurulum üzerinde terlemede bir gün veya bir hafta batırsanız bile, bu sunucuda bırakacak bazı sorunları gidermek zorunda kalacaksınız. yapılandırmaya gereksiz karmaşıklık eklediyseniz neden yaptığınız şekilde ayarladığınızı merak ediyorsunuz.


1
Evet, RAID 5'ten RAID 6'ya taşındım ve yazma cezası beni öldürüyor. Büyük bir RAID 10 fikrini seviyorum. Farklı tiplerdeki eşzamanlı G / Ç yükünü karşılaştırmak için ne kullanabilirim?
Boden

1
Bir kronometre en doğru :-)
Bart Silverstrim

1
Sürücülerin ve denetleyicinin önemini hafife almayın. RAID 5 ile bir Dell NAS'ımız var ve kullanıcılar giriş yapıp ondan profil çekerken boğuluyor ve performans monitör numaralarına biraz araştırma yaptıktan sonra sürücülerin 10.000 RPM olmadığı sonucuna vardık. İş yükünün bir kısmını boşaltmak için belirli verileri ayrı bir sunucuya taşıdık.
Bart Silverstrim

2
Dürüst olmak gerekirse, neden birisinin RAID 5'i şirket ortamında kullanacağını anlamıyorum. Biz tamamen RAID 10'uz.
Bip sesi

2
En Çünkü zamanında RAID 5 ila 10 iş bizim düzeyinde gereksiz lüks kabul edildi kötü :-) RAID değildi, sana söylemem gerekir. Fiyatlar gerçekten düştü, zamanlar değişti ve hala sunucu odasında neyin çalıştığını destekliyoruz.
Bart Silverstrim

2

Uygulamalarınız için gecikmelerin ne kadar öngörülebilir olmasını istiyorsunuz?

Örneğin, gerçekten gecikmeye duyarlı bir uygulamanız olduğunu ve finansal veritabanınızla bir dosya sistemini paylaştığını varsayalım. Mali kapanışta, aniden gecikmeye duyarlı uygulama zaman aşımı hakkında çağrı alırsınız. Bunu nasıl anlayacaksınız?

Öte yandan, her şeyi basitleştirmenin büyük bir hayranıyım, bu yüzden herhangi bir istisnai gereksiniminiz olmadığını doğrulayabilirim ve gereksinimleriniz herhangi bir garip özel duruma düşmezse yapılandırmalarınızı birleştirir ve basitleştiririm.


0

Tabii neden olmasın. şey, büyük çok diskli dizinizi doğru bir şekilde oluşturmayı, yanlış yapmayı ve uzun bir yeniden oluşturma süresine girmeyi unutmayın.

RAID 10 2 çeşittir:

  • RAID 1 + 0, burada 2 RAID 1 dizisi oluşturup şeritleyin.
  • RAID 0 + 1, burada 2 RAID 0 dizisi oluşturup aynalayın.

Bir disk öldüğünde, bir diskte tek bir raid1 dizisini yeniden oluşturmanız gerekir. Diğeri ile raid0 dizisinin tamamını yeniden oluşturmanız gerekecek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.