NVMe Disk Teknolojisi

Kayahanhakan
Turk Telekom Bulut Teknolojileri
7 min readFeb 25, 2022

1. NVMe Nedir?

NVMe, şimdiye kadarki en yüksek aktarım hızını ve en hızlı yanıt sürelerini sunan flash ve yeni nesil katı hal sürücüler (SSD’ler) için yeni bir depolama erişim ve aktarım protokolüdür.

Temelde NVMe ve SSD teknolojileri NAND flash bellek yapısına dayanır. Verileri tutmak için güç gerektirmeyen bir tür kalıcı depolama alanı teknolojisidir. Günümüzde gelişmiş halini alan NAND flash bellek alanları, geçmişte yaygın kullanılan manyetik veya sabit disk sürücülerine göre kapasite, güvenilirlik, kullanım yaygınlığı, boyut, enerji tasarrufu gibi sebeplerle yaygınlığını arttırmaktadır.

NAND flash belleklerin en önemli özelliği silinemez bellek olmasıdır. Çiplerin üzerinde dolaşan voltaj değerlerini belirli bir seviyede tutarak veriyi koruma altına almaktadır.

Yüksek veri yoluna ve düşük gecikme sürelerine sahip NVMe protokolü, binlerce paralel komutu destekler ve veri flash depolama alanına PCIe veri yolu ile ulaşır.

Günümüzde en yaygın kullanım özelliklerine göre bazı avantajlarını aşağıdaki gibi sıralayabiliriz.

Gecikme Süreleri:

· Düşük CPU döngüleri kullanan basitleştirilmiş komut kümeleri kullanır

· PCIe 3.0’un aktarım hızı 16Gbps iken PCIe 4.0 iki katına sahiptir. SATA III’ün veri aktarım hızı ise en fazla 600MB/s’dir.

· NVMe doğrudan CPU ile iletişim kurar. Sabit disk veya SSD disk teknolojileri SATA arabirimleri ile protokol dönüşümlerine uğrayarak gecikmelere sebep olur.

· Günümüzde yaygın kullanımı sağlanmış, global standart bir yapı olarak kullanılmaktadır

· Daha iyi bir performans deneyimi sunar ve daha az darboğaz oluşturur.

Düşük TCO (Total Cost of Ownership)

· NVMe teknolojisi, eski teknolojilere kıyasla daha çevrecidir. NVMe sürücüleri, güç tüketimini önemli ölçüde azaltmak için düşük güç modunu kullanabilir.

· Beyaz alan kullanımında önemli küçülmeler sağlamaktadır.

Ölçeklenebilirlik:

· NVMe protokolü, yüksek performanslı paralel, düşük gecikmeli veri yollarını kullanır.

· Mevcut teknoloji ile anlık 1 komut işlem sırasına sahipken, NVMe her biri 64K girişe sahip 64K’ya kadar çoklu I/O işlem sırasını aynı anda destekleyebilir.

· Mevcut teknoloji ortalama 100K IOps sunabiliyorken, NVMe teknoloji ile 1 milyonun üzerinde IOps olanak sağlanmaktadır.

Genel Kullanım Alanları (Use Cases)

· NMVe diskler kurumsal işletmelerde güvenilir veri erişimi sunar.

· Akıllı, yoğun işlem yükü gerektiren; Artificial intelligence (AI), machine learning (ML), Big Data Platformları

· DevOps iş yönetim süreçlerinizde

· Web siteniz, web tabanlı uygulamalarınız ve çeşitli IaaS, PaaS, SaaS ürünlerinize ait veri altyapılarınızda.

2. NVMe Neden Tercih Etmeliyiz?

NVMe disk sürücüleri günümüzde en hızlı veri depolama imkânı sunan ara birimlerdir. Yapısı SSD disk ile aynı mimariye sahip olmakla birlikte nispeten yeni bir teknoloji kullanımı ile farklı katmanlarda yaşanabilecek gecikmeleri elimine yapma olanağı sunmaktadır.

Günümüzde veriyi oluşturma, ulaşma konularında artan talepler ve bekleme sürelerinde oluşacak gecikmenin uygulama ve veritabanı katmanlarında servis uzamalarına sebep olacağını aklımızdan çıkarmamalıyız.

Altyapıda performans incelemesi yapıldığında öncelikle darboğaz nerede sorusunu kendimize sorarız. Sabit disk sürücüler (HDD’ler) yaşanabilecek darboğaz için maalesef en uygun alanlardan birini bize sunmaktadır. Yeni ihtiyaçlar ve beklentiler, disk katmanında darboğazı önleme veya başka bir noktaya kaydırma konusunda bir gereksinim ortaya çıktı.

Katı hal sürücüleri (SSD’ler) beklenen performans ihtiyaçlarını belirli oranda karşılamak için kullanıldı. Veri merkezlerinde yapılan SSD yatırımları 2010 yıllarında ortalama %5 oranlarında iken, yaygınlaşma sağlandıkça %50 oranlarına çıkıldı ve şu an birçok kurumda %100 (All Flash Array) seviyelerine gelindi.

Bu teknolojiyi deneyimlerken veri depolama ünitelerinde özellikle;

· Disk katmanlama (Tiering)

· Önceliklendirme (Priority)

· Uygulamalarımıza servis seviyeleri SLO (Service Level Operation) uygulamaya başladık.

Bu durum haliyle uygulamanın IOps karakteristiğini, gecikme sürelerindeki hassasiyetini ve günün, haftanın, ayın farklı zamanlarında değişkenlik gösteren performans ihtiyaçlarının bilinmesi gibi temel gereksinimleri bilmemize, izlememize ve bu süreci yönetme ihtiyacı ortaya çıktı.

Bu ihtiyaçların yanı sıra müdahale edemediğimiz sabit sürücülerin kullandığı arabirimler olan SATA ve IDE protokollerinde hızlar bizim için hızlı dönüşüme ihtiyaç olan temel bağlantı türleri oldu.

Çözüm, kalıcı bellek (NVMe) teknolojisinin gelişimi ile ortaya çıktı. Temel fark, oluşturulan PCIe protokolü ile sağlanan iletişim bağlantısıydı. Bu sürücüler PCI 2.0 veya PCI 3.0 arabirimlerini kullanarak anakart üzerinde kullanımı sağlayabildi.

NAND Flash temelli bellek tipine sahip SSD ler, yeni bağlantı yöntemleri ile NVMe SSD’lere dönüştüğünü görmekteyiz. Artık, veri merkezlerinde ve kişisel cihazlarda yaygın olarak kullanımını sürdürmektedir.

Özetlemek gerekirse;

· Non-Volatile Memory Express (NVMe) teknolojisi sektör standardı olarak başladı. PCIe protokolünü verimli olarak kullanarak bellek üzerinde veri saklama çözümünü kalıcı olarak kullanabilmektedir.

· Yüksek performans ihtiyacı bulunan uygulamalar için idealdir.

· SATA da olduğu gibi; veri iletişimde protokoller arası geçiş yapmadan, anakart üzerinden PCIe protokolü ile NVM disk alanına direk bağlantı ve yüksek IOps çözümü sunmaktadır.

· Düşük gecikme sürelerine sahiptir (2.8 mikro saniye)

· PCIe SSD arayüz kullanılmaktadır

· Fabric türleri arasında; “RDMA (RoCE, iWARP,InfiniBand™) ve Fibre Channel” yer almaktadır.

3. SSD Disk Hızları ve NMVe Dönüşümü

Sabit disk sürücülerinden SSD’lere geçiş depolama sistemleri için bir devrim niteliğinde gerçekleşti. Bu dönüşüm, önemli avantajları da beraberinde getirdi. Hareketli parçaların ortadan kalktığı, ısınma kaynaklı performans kayıplarının önemli derecede azaldığı ve enerji gibi yeni dünya düzenin gerekliliklerini azaltan bir hizmet altyapısına dönüştü.

Bu dönüşümün ilk ürünü SLC ve devamında MLC, TLC ve QLC yapıları ile NAND temelli disk teknolojisinin ilerleyişi devam etti. Temelde, her bir hücreye bir veya daha fazla bit barındırabilen bir teknolojiye sahiptir.

Bu teknoloji kendini geliştirirken özellik anlamında nelerin değiştiğini tabloda daha iyi görebilirsiniz.

Biz bu özellikleri tartışırken artık hareketli bileşenleri geride bıraktığımızı ve artık hibrit yapıların dahi yapılarını tamamen Full SSD’li altyapılara dönüştürdüğünü söyleyebiliriz. Günümüz SSD teknolojisi kullanıcı ihtiyacına yönelik genel disk problemlerini ve artan performans taleplerini karşılama konusunda artık yerini aldığını belirtebiliriz.

4. NVMe vs HDDs

Geleneksel HDD yapısı kullanılan ortamlar özel bir gereksinim dışında (arşiv ve performans ihtiyacı bulunmayan yüksek kapasite gereksinimi bulunan ortamlar) yaygınlığı kalmadı. Bununla birlikte ihtiyaçlarımıza karşılık teknoloji bize hibrit yapılı sistemler oluşturdu. Bu noktaya kadar henüz tam olarak ihtiyacımızı bilemiyor olabiliriz. Örneğin; hibrit yapılarda halen sistemin performans gereksinimlerini bilme, ihtiyaç anında hızlı disk kaynağını aktaramama veya sürekli kaynakların sınırlarında gezinme gibi sık yaşadığımız sorunlar yaşandı. Bu bize değişimin halen devam etmesi gerektiğini gösterdi. Tam bu noktada NVMe yapıları kullandığımızda daha üstün sonuçlar, deneyimler bize gösterdi.

Bununla birlikte, öncelikli ihtiyaçlarımız performans ve anlık binlerce işlemden cevap almak olmayabilir. Veri merkezlerinde halen büyük kaynak gereksinimleri oluşturan yapılan bulunmaktadır. Burada önceliklerimiz performanstan ziyade, verinin tutarlı ve güvenli bir şekilde saklanması da olabilir.

Sabit disk sürücülerinden NL-SAS diskler halen popülaritesini ve kapasite ihtiyacına karşılık çözüm sunabilmektedir. Kapasite olarak günümüzde 18TB 3.5” form faktör diskler konfigürasyonlara dahil edilerek kullanımını sürdürmektedir.

5. NVMe vs SSDs

NAND temelli iki teknolojiyi nasıl karşılaştırabiliriz ve SSD diskler beklentimizi neden tam olarak karşılayamadı?

Aslında sorunun cevabı basitti. NAND disk teknolojisi geliştikçe kullanıcıya daha yüksek özellikler sunabiliyordu. Burada tek nokta, teknolojinin yeterince gelişme ve kullanıcı ihtiyaçlarının belirginleşmesiydi.

Orijinal SATA SSD’ler 3Gbps arabirimler ve 5000 ila 8600 IOps sunuyordu. 6 Gbps SATA ile SSD’ler 60.000 ile 100.000 IOps değerlerini sağlayabildi.

Diğer bir yandan; okuma-yazma hızı sadece ihtiyaçlarımızdan bir tanesini oluşturmaktadır. Paralel çalışma özelliği ile NVMe SSD’ler birçok kuyruk komutunu aynı anda işleyebilir. NVMe teknolojisi 64000'e kadar girişi destekleyebilir, SATA SSD’ler ise 254 girişle sınırlıdır.

· 100% random reads: NVMe > 3X daha iyi IOps than SAS 12Gbps

· 70% random reads: NVMe > 2X daha iyi IOps than SAS 12Gbps

· 100% random writes: NVMe ~ 1.5X daha iyi IOps than SAS 12Gbps

6. NVMe Temelli Mimari Bileşenleri

Bu teknoloji sayesinde disk üzerinde oluşan darboğaz (bottleneck), problemi farklı bir noktaya adreslemeye doğru gidecektir. Uçtan uca yapılacak yatırım en iyi çözüm olacaktır.

Uçtan uca bağlantı topolojisinde; Storage ünitesi, Fabric ve ilgili host HBA larında NVMe aktif olması gerekmektedir.

NVMe Aktif Sunucu

· Tüm işletim sistemleri için PCIe NVMe sürücü. (Windows, Linux, Unix, Solaris, Vmware)

· Yüklenen sürücü OS ve NVMe disk alanı arasında protokol bazlı bir iletişim sağlar.

NVMe Denetleyicisi

· Komut işleme alanı

· Namespace’e erişim sağlanır

· Her bir NVM için çoklu denetleyici yapısı bulunmaktadır

· Paralel ve ölçeklenebilir birçok giriş-çıkış komut yönetimi sağlanır

NVMe Namespaces (alan adı)

· NVM ortamının biçimlendirilmiş LBA ((Logical Block Address) alanını tanımlar

· NVM alt sisteminde birden çok alan adı olabilir

· Özel veya birden çok denetleyici tarafından erişime açıktır

Fabric Port

· Fiziksel bağlantı portları ile ilişkilidir

· NVMe denetleyicileri bir bağlantı noktasıyla ilişkilendirilir.

· PCIe, RDMA (Ethernet RoCE/iWARP, InfiniBand), Fiber Kanal/FCoE gibi türleri bulunmaktadır.

7. Sonuç

NVMe disk teknolojisi günümüzde SSD yapıları için özel olarak tasarlanmış, en iyi kullanıcı deneyimi sunan, kurumsal ve bireysel kullanımda yaygınlığını sürdüren yeni bir protokol olarak çıkarıldı.

Uygulamalarımız için halen geleneksel HDD ve SSD disk yapıları kullanıyorsak, önemli avantajları kaçırıyoruz demektir.

NVMe teknolojisi günümüzde artan yaygınlığı, arıza sıklığı, performans ihtiyaçlarını karşılama, düşük gecikme süreleri ve beyaz alanda sağladığı yer tasarrufu ile çok daha üstün deneyim sağlar.

--

--