HDD için , IOPS genellikle arama gecikmesi + dönme gecikmesi + aktarım gecikmesi toplamı olandiskin erişim süresine hakimdir . Bu değişkenler erişim örüntülerine büyük ölçüde bağlı olduğundan ve belirli RAID düzeni (ör: şerit boyutu) ve denetleyici (yani: ileri okuma ayarı) ile belirgin olmayan etkileşimlere sahip olduğundan, herhangi bir basit cevap YANLIŞ OLACAKTIR.
Ancak, bir basketbol sahası figürüne sahip olmaya çalışalım. İlk yaklaşımda, n-disk dizisi tarafından garanti edilen IOPS, tek bir diskin IOPS değerinin n katı olmalıdır. Bununla birlikte, hem RAID seviyesi hem de veri erişim modeli , ağırlığı arama / dönme / aktarma gecikmesi arasında değiştirerek, bu birinci dereceden yaklaşımı dramatik bir şekilde değiştirir.
Tek disk başına 100 IOPS (7200 RPM diskler için tipik bir değer) ve 4 disk dizileri (genellikle yalnızca 2 yönlü ile sınırlı olan RAID1 hariç) varsayarak bazı örnekler yapalım:
- tek bir disk 100 IOPS'dir, hem okuma hem de yazma (not: yazma birleştirme nedeniyle, yazma IOPS genellikle okuma IOPS'tan daha yüksektir, ancak basitlik için bunu görmezden gelelim)
- RAID0 (4-yollu şeritleme) sahiptir kadar rastgele IOPS 4x ve kadar sıralı IOPS 4x. Buradaki anahtar kelime "en fazla" dır: şeritleme ve veri hizalamanın doğası nedeniyle, rastgele erişilen sektörler tek bir diskte bulunursa, çok daha düşük IOPS ile bitireceksiniz.
- RAID1 (2 yönlü yansıtma) profil için daha karmaşıktır. Farklı diskler farklı veriler üzerinde arama yapabildiğinden, rastgele okuma IOPS'sinin 2 katına kadar, ancak aynı 1x (veya tepeden dolayı biraz daha düşük) rastgele yazma IOPS'ye sahiptir. Her şey iyi hizalanıyorsa (örneğin: büyük ancak% 100 sıralı okumalar değil, ayna modunda bile parçalar / şeritler kavramı / işleme kullanan bir RAID denetleyicisi, okuma öncesi doğru çalışma, vb.) Sıralı okumalar bazen tekli 2 kata kadar olabilir disk değeri, sıralı yazma işlemleri tek diskin 1 katında kalmaya devam ederken (örn: hızlanma yok)
- RAID10 (4 yönlü yansıtma), 4 yönlü RAID0 şeritleme ile 2 yönlü yansıtma arasında yarı yolda performans açısından akıllıdır. 4 kata kadar rastgele okuma IOPS ve 2 kata kadar rastgele yazma IOPS vardır. Sıralı aktarımlar için RAID1 uyarısı uygulanır: bazen sıralı okuma IOPS'sinin 4 katına kadar, ancak sıralı yazma IOPS'unun sadece 2 katına sahiptir. Bazı RAID10 uygulamasının (yani Linux MDRAID) RAID10 dizileri için farklı performans profiline sahip farklı düzenler sağladığını lütfen unutmayın .
- RAID5 (çizgili parite) rastgele okuma IOPS'a 4 kata kadar, yazma yazma şerit boyutu, büyük şerit önbellek kullanılabilirliği, şerit rekonstrüksiyon algoritması açısından bir dizi faktöre bağlı olarak rastgele yazma IOPS'a sahiptir. kendisi (read-reconstruct-write vs read-change-write), vb., tek bir diskin 0,5x (veya daha düşük) ve 2x IOPS'si arasında olabilir. Sıralı işyükleri daha öngörülebilir, tek bir diskin 3 kat IOPS'si (hem okuma hem de yazma için)
- RAID6 (çizgili çift parite), RAID5 kardeşi gibi davranır, ancak daha düşük yazma performanslarına sahiptir. Tek bir diskin 4 kata kadar rastgele okuma IOPS değerine sahiptir, ancak rastgele yazma performansı RAID5'ten bile daha düşüktür, aynı mutlak değerlerle (0,5x - 2x) ancak gerçek kelime ortalaması daha düşüktür. Sıralı okuma ve yazma işlemleri, tek bir diskin IOPS değerinin 2 katında sınırlıdır.
Tekrar edeyim: yukarıdakiler basit ve neredeyse kırılmış yaklaşımlardır. Her neyse, (ciddi şekilde eksik) bir RAID IOPS hesap makinesiyle oynamak istiyorsanız, buraya bir göz atın .
Şimdi, gerçek dünyaya geri dönün. Gerçek dünya iş yüklerinde, RAID10 genellikle daha hızlı ve tercih edilen bir seçimdir ve bozulmuş bir dizi karşısında bile yüksek performansı korur . RAID5 ve RAID6, okuma merkezli veya sıralı nitelikte olmadıkları sürece performansa duyarlı iş yüklerinde kullanılmamalıdır. Ciddi RAID denetleyicilerinin , RAID5 / 6 düşük rasgele yazma performansının üstesinden gelmek için (ağır şerit önbellekleme yoluyla) büyük güç kaybı korumalı geri yazma önbelleğine sahip olduklarını belirtmek gerekir . Dizinin hızını gerçekten önemsemediğiniz sürece, RAID5 / 6'yı asla önbelleksiz RAID denetleyicileriyle kullanmayın .
SSD farklı hayvanlar, düşünce. İçsel olarak çok daha düşük ortalama erişim süresine sahip oldukları için, eşlik tabanlı RAID'ler performanstan çok daha düşük performansa neden olur ve HDD'lere göre çok daha uygun bir seçenektir. Ancak, küçük rastgele yazma merkezli bir iş yükünde, yine de bir RAID10 kurulumu kullanırdım.