Dyski NVMe: wszystko, co musisz wiedzieć o nowym standardzie SSD

dyski
NVMe
storage
Data Space
06.02.2020 Data Space

Do tej pory byliśmy przyzwyczajeni, że walka o wydajność serwera toczy się głównie na polu liczby rdzeni procesora, częstotliwości jego taktowania oraz pojemności RAM. Przede wszystkim tymi parametrami kierowaliśmy się przy wyborze optymalnego rozwiązania. Od kilku lat do gry o maksymalizowanie szybkości działania naszych maszyn dołączają również dyski. Ewolucja na polu storage spowodowała, że do wyboru mamy dziś kilka rozwiązań, a jednym z najciekawszych są dyski NVMe. Poniżej opisujemy ich zalety oraz wyjaśniamy, czym różnią się od tradycyjnych rozwiązań.

Od wielu lat osoby zarządzające infrastrukturą serwerową bagatelizowały problem tzw. wąskiego gardła. Polegał on na tym, że serwery wyposażone w mocne procesory oraz wystarczająco dużo RAM nie mogły odpowiednio wydajnie przetwarzać informacji, ponieważ komunikowały się z dyskami, które nie były w stanie dostatecznie szybko transferować danych do CPU.

Nie ma to aż tak dużego znaczenia w wypadku storage’u obiektowego, gdzie po prostu wyciągamy i wkładamy całe struktury danych. Jednak w wypadku operacji wykonywanych przez system operacyjny lub bazę danych wydajność zapisu i odczytu poszczególnych bloków jest kluczowa i może decydować o szybkości działania całego rozwiązania. Innymi słowy, wydajność dysku będzie determinowała to, czy nasz RAM i procesor dostaną wystarczająco szybko i wystarczająco dużo danych, by działać z pełną mocą.

Podstawowe parametry wydajności dysków

Dyski są opisywane wieloma parametrami, ale na potrzeby ich wydajności względem innych komponentów serwera używa się najczęściej dwóch:

  • Ile danych w ciągu jednej sekundy możemy odczytać lub zapisać na dysku – jest to tzw. przepustowość dysku i mierzy się ją najczęściej w MB/s lub GB/s,
  • Ile operacji zapisu i odczytu możemy wykonać na dysku w ciągu jednej sekundy – jest to tzw. szybkość dysku i mierzy się ją w jednostce IOPS (Input Output Per Second).

Dla przykładu, tradycyjny dysk HDD wyposażony w łącze SATA oferuje przepustowość na poziomie 100-150 MB/s oraz szybkość na poziomie 50-80 IOPS. Oznacza to, że w ciągu jednej sekundy procesor może na nim zapisać lub odczytać dane maksymalnie 80 razy, a każda porcja danych będzie miała maksymalnie ~1,8 MB (150 MB/s podzielone przez 80 IOPS). Oczywiście, im mniej IOPS wykorzystujemy w danej sekundzie, tym większą porcję danych możemy zapisać – maksymalnie 1 porcję danych o wielkości 150 MB w ciągu sekundy.

Ewolucja dysków

Nie będziemy zagłębiali się w historię pamięci masowych – dość powiedzieć, że jedną ze starszych, ale wciąż stosowanych konstrukcji są dyski HDD (Hard Disk Drive). Wyposażone są one w kręcące się talerze, na których głowica zapisuje i odczytuje dane. Im szybciej kręcą się talerze, tym szybciej otrzymujemy dostęp do danych. Wydajność takich dysków jest niska – jak już wcześniej wspomnieliśmy nie przekracza ona około 150 MB/s i 80 IOPS.

Jak łatwo sobie wyobrazić, dyski takie nie nadają się dziś do operacji, które wymagają szybkiego dostępu do bloków informacji, a więc ich zastosowanie zostało zredukowane głównie do zadań związanych z obiektowym zapisem informacji. HDD sprawdza się więc jako rozwiązanie do przechowywania backupów lub innych struktur obiektowych, np. zdjęć. Głównym powodem, dla którego dyski HDD wciąż pozostają w użyciu, jest ich relatywnie niska cena.

Największym skokiem technologicznym ostatnich lat w zakresie pamięci masowych są bez wątpienia dyski SSD (Solid State Drive). Zastąpiły one elektromagnetyczne rozwiązania HDD, wprowadzając na rynek konsumencki technologię półprzewodnikową, która przechowuje dane w tzw. komórkach. Dyski SSD zostały pozbawione elementów mechanicznych, a komórki przechowujące dane mogą przyjmować wiele stanów.

Wszystkie te rozwiązania sprawiły, że SSD przynosi długo wyczekiwany przełom w wydajności, oferując parametry na poziomie średnio 550 MB/s i 5000 IOPS. Dodajmy, że dyski SSD – aby zachować kompatybilność z istniejącymi rozwiązaniami – są często wyposażane w port komunikacyjny SATA, co znacznie ogranicza ich możliwości w zastosowaniach profesjonalnych.

Dyski NVMe – prawdziwa rewolucja

Nie bez powodu w ostatnim akapicie wspomnieliśmy o ograniczeniach portu komunikacyjnego w dyskach SSD. Otóż, w pewnym momencie okazało się, że rozwój pamięci masowych nie ogranicza tylko ich wewnętrzna konstrukcja, ale również sposób ich komunikacji z innymi komponentami serwera. Innymi słowy, dyski SSD zaczęły się rozwijać tak szybko, że pojawiło się nowe wąskie gardło – protokół transmisji SATA (Serial AT Attachment).

I tu również doczekaliśmy się przełomu. Wysłużony protokół SATA został zamieniony na nowszy i oferujący nieporównywalnie większe możliwości protokół PCI Express, tym samym dając zupełnie nowe możliwości dyskom SSD, m.in.:

  • Obniżone opóźnienia przy polecaniach zapisu i odczytu (dyskom NVMe zabiera jedynie około 0,03 ms, by zacząć odczytywać lub zapisywać dane po tym, jak dotarło do nich polecenie zapisu lub odczytu; dla porównania w HDD jest to 13 ms, a wypadku SSD około 0,15 ms),
  • Rozbudowane kolejkowanie do 64K zapytań (chodzi o liczbę kolejek oraz zapytań w jednej kolejce, które mogą być wykonywane jednocześnie),
  • Paralelny zapis danych (możliwość wykonywania jednocześnie wiele zapisów w komórkach pamięci pochodzących z jednej kolejki).

Tak powstały dyski, które dziś nazywamy NVMe. Są to zatem urządzenia o konstrukcji dysków SSD, które wyposażono w nowoczesny interfejs komunikacyjny PCI Express.

W tym miejscu warto jeszcze rozszyfrować samą nazwę. NVMe to skrót od Non-Volatile Memory Express, co można tłumaczyć jako „nieulotna pamięć typu Express”. Oznacza to, że mamy do czynienia z pamięcią, która nie potrzebuje stałego źródła zasilania do tego, by utrzymać zapisane na niej dane, a na dodatek została wyposażona w interfejs komunikacyjny typu PCI Express.

Wydajność dysków NVMe

Zniesienie ograniczeń SATA okazało się strzałem w dziesiątkę. Dyski NVMe biją na głowę we wszystkich testach nie tylko swoich zamierzchłych przodków (HDD), ale również klasyczne rozwiązania SSD. Rynkowe średniaki osiągają przepustowość na poziomie 3,5 GB/s w odczycie danych oraz 1,5 GB/s w zapisie, a szybkość kształtuje się na poziomie 50-400 tys. IOPS. Oczywiście, dysków NVMe mamy na rynku bardzo wiele – w zależności od ceny te parametry będą się różniły, ale chyba każdy widzi, że skok wydajnościowy jest tutaj olbrzymi.

 

HDD SSD NVMe
Przepustowość 150 MB/s 550 MB/s 3500 MB/s
IOPS 50 – 80 5000 – 50 000 50 000 – 400 000

 

Dodatkowo, warto zapoznać się z wynikami naszych laboratoryjnych testów porównujących najczęściej spotykane obecnie na rynku dyski. Wynika z nich m.in., że spadek prędkości operacji na dyskach NVMe jest praktycznie niezauważalny w porównaniu do spadku prędkości na dyskach SSD, a liczba IOPS jest znacznie przeważająca w nośnikach NVMe.

 

Zastosowania dysków NVMe

Jak już wcześniej wspomnieliśmy, dyski NVMe sprawdzą się najlepiej w zastosowaniach, które wymagają szybkiej komunikacji między procesorem i bazą danych. Skorzystają z nich więc przede wszystkim właściciele biznesów e-commerce, dostawcy rozwiązań SaaS i wydawcy popularnych serwisów informacyjnych.

Ten rodzaj pamięci będzie także zbawienny dla przedsiębiorców, którzy utrzymują systemy analityczne bazujące na ciągłym zapisywaniu i odczytywaniu informacji z hurtowni danych – ERP, CRM i Business Intelligence.

Na koniec warto podkreślić, że różnica w cenie między klasycznymi dyskami SSD a ich wersją NVMe jest stosunkowo nieduża i na pewno nie odzwierciedla liniowo skoku, jaki otrzymujemy w zakresie wydajności. Biorąc to pod uwagę, dyski NVMe wydają się dziś rozwiązaniem optymalnym pod każdym względem.


Chcesz dowiedzieć się więcej o wydajności NVMe?

Przeczytaj o platformie dedykowanej z NVMe, którą przygotowaliśmy dla jednego z naszych Klientów.

Data Space
Data Space kontakt@dataspace.pl Naszą misją jest być najlepszym wyborem dla firm, które muszą być online bez względu na wszystko, przez 24 godziny, 7 dni w tygodniu, 365 dni w roku. Dostarczamy im platformę składającą się z najbardziej zaawansowanych rozwiązań z zakresu infrastruktury IT.
Case study
Kolokacja superkomputera do renderingu 3D dla Copernicus Computing - case study
Case study
Migracja systemu e-commerce dla Danhoss - case study