Jak mierzyć wydajność, szybkość i niezawodność dysku

dyski
hardware
Marcin Kowalski
25.01.2018 Marcin Kowalski

Cofnijmy się o 10 lat. Wydajność dysków określały tylko dwa parametry: wielkość i prędkość. W tyłach głowy wszystkich z tamtych czasów pozostało powiązanie: prędkość = dysk SAS = większa wydajność. Kilka lat później pojawiają się dyski SSD i nagle port przestaje mieć znaczenie. Technologia idzie dalej, następuje wybuch standardów i nagle jesteśmy zasypani mnóstwem metryk wydajności podsuwanych przez działy marketingu. Większość systemów ma jedno wąskie gardło generujące koszty, jednak poprawna identyfikacja tej zmiennej pozwala optymalizować rozwiązanie.


Metryki wydajności i jakości macierzy dyskowej:


1. Pojemność

Najprostsza miara – pojemności ma być tyle, aby starczyło i został jeszcze zapas. Większość dysków zaczyna zwalniać przy zapełnieniu przekraczającym 80%, a powyżej 95% zaczyna być mocno nieciekawie. Rozbudowa wolumenu w locie jest kłopotliwa i może prowadzić do różnych problemów.

Zaplanuj pojemność na teraz, zaplanuj pojemność potrzebną za 1,5 roku, nie przekraczaj 80% dostępnego miejsca.

Metryka biznesowa: koszt 1 GB.

2. IOPS

Ilość operacji IO (input/output) na sekundę. 10 lat temu dysk SATA pozwalał osiągnąć 50-80 IOPS, a dysk SAS – 120 IOPS. Mentalnie projektując zapominamy, że świat poszedł do przodu. Aktualnie dysk SATA, jakiego używamy w data center (HGST 7K6000) osiąga do 240 IOPS, a ostatnia generacja dysków SAS 15k (których nie używamy, gdyż dyski SAS zostały wyparte przez SSD) pozwalała osiągnąć 300 IOPS.

Metryka biznesowa: koszt 1 IOPS

IOPS w dyskach flash to zupełnie inna planeta wydajności. Ale też inne problemy.

Wydajność konsumenckich dysków SSD mierzona jest według innych standardów. Wydajność dysku SSD w serwerze to wydajność podczas pracy długotrwałej (stąd parametry 5-7k IOPS są czymś normalnym), wydajność dysku w laptopie do wydajność krótkotrwała, osiągana w ciągu kilku sekund, a potem nieosiągalna.

Dysk SATA SSD to 5-15k IOPS, dysk SAS SSD – 7-120k IOPS, natomiast dyski NVMe osiągają do 250k. Warto zauważyć, że dość często barierą jest przepustowość interfejsu – szyny PCIe – albo wydajność „kontrolera”, a nie samego medium, jak w przypadku dysków talerzowych.

“Ile potrzeba IOPS?” jest jednym z podstawowych pytań, na które szukamy odpowiedzi projektując rozwiązania. W systemach o małych wymaganiach schody kosztowe wyglądają następująco:
1. Dyski pojemnościowe SATA
2. Dyski SATA
3. Dyski SATA + cache na SSD
4. Dyski SSD SATA
5. Dyski SSD SAS
6. Dyski SSD NVME (wszystkie formaty)
7. Dyski Flash Optane

Kolejnym schodkiem, o którym często zapominamy, jest RAM. OS zwykle cachuje wszystkie odczyty, które może, w pamięci ulotnej. Więcej RAM = szybszy odczyt.

3. Opóźnienie

Opóźnienia w czasie dostępu danych mają znaczenie. Jeżeli system czeka na dane, nie robi nic i się marnuje. Opóźnienia powodowane są przez cztery czynniki:

  • Rodzaj nośnika,
  • Rodzaj portu,
  • Czy storage jest lokalny czy sieciowy,
  • Zabezpieczenia przed utratą danych.

Opóźnienie a rodzaj medium

Jak mierzymy wydajność, szybkość i niezawodność dyskuźródło: intel.com

Jak widać na powyższym wykresie, dyski mechaniczne nie mają szans z pamięciami flash. Pytanie mniej oczywiste: Czy to ma dla mnie znaczenie? Większość systemów projektowana była w czasach dysków talerzowych, a opóźnienie było czymś, co zawsze będzie mieć miejsce. Przez dwadzieścia lat zmniejszenie opóźnienia następowało powoli wraz ze wzrostem prędkości obrotowej dysku talerzowego.

Opóźnienie a rodzaj portu
Im bliżej do procesora tym mniejsze opóźnienie. Ścieżka DYSK → Kontroler SAS/SATA → Kontroler PCIe → Procesor jest dłuższa niż Dysk → Kontroler PCIe → Procesor. Standard SATA/SAS projektowany był dwadzieścia lat temu i jest, jak każdy standard, kompromisem pomiędzy wydajnością a ekonomicznymi i technologicznymi ograniczeniami. Biorąc pod uwagę to, co opisaliśmy powyżej pamiętajmy, że niskie opóźnienia możliwe są do uzyskania tylko w przypadku lokalnego storage – a więc tylko pewne rodzaje oprogramowania mogą korzystać z niskich opóźnień. Ekosystem jest więc brutalny – z jednej strony mamy „wolne” dyski SATA, potem przyspieszamy pamięciami flash, a następnie oddalamy storage sieciowo od serwera.

Opóźnienie a sieć
Storage sieciowy ma większe opóźnienie niż storage lokalny. DYSK → Kontroler SAS macierzy → Procesor macierzy → Karta sieciowa macierzy → Karta sieciowa serwera → Szyna PCIe → Procesor. A to wszystko czasami oddalone o setki metrów od siebie. Opóźnienie dysków mechanicznych mierzymy w milisekundach (ms), dysków SSD w mikrosekundach (µs), a sieci – znowu w mikrosekundach. Sieciowy dysk SSD niestety powraca na opóźnienia dysków talerzowych. Nowe technologie i coraz wyższa prędkość sieci w pewnym momencie zmniejszą tę wielkość, ale obecnie jedynym obejściem jest stosowanie lokalnych dysków cachujących.

Opóźnienie a zabezpieczenia
Kiedy używamy RAID5, RAID6, lub innego rozwiązania opartego na sumach kontrolnych, musimy pogodzić się z opóźnieniami generowanymi podczas zapisu. Jeżeli dołożymy do tego storage sieciowy, może okazać się, że opóźnienia są wręcz absurdalne.

Jedno można powiedzieć o przyszłości rozwiązań do przechowywania danych – będzie bardzo skomplikowana. Wiele nośników, mnóstwo standardów, całość dostępna przez sieć – ta mnogość zmiennych sprawia, że dobranie odpowiedniego rozwiązania będzie coraz trudniejsze. Za kilka lat czeka nas gigantyczna rewolucja technologiczna i połączenie RAM oraz Storage w jeden byt, a w konsekwencji zmiana całej architektury przetwarzania i składowania informacji, jaką znamy.


Zastanawiasz się, czy planowana przez Ciebie konfiguracja będzie dość szybka? Przetestuj swoje rozwiązania na sprzęcie Data Space. Udostępniamy serwery w miesięcznych okresach rozliczeniowych, doradzamy w kwestii konfiguracji i parametrów, opierając się na wieloletnim doświadczeniu.

Marcin Kowalski
Marcin Kowalski marcin.kowalski@dataspace.pl Od ponad 10 lat pomagam administratorom i klientom. Serwery, urządzenia sieciowe, kolokacja, rozwiązywanie problemów i tworzenie nowych produktów.
Newsy
NGSFF - nowy standard dysków od Samsunga (komentarz)
General
Przerwa serwisowa w Data Center - nieunikniony obowiązek dostawców usług
   /   General   /   Jak mierzyć wydajność, szybkość i niezawodność dysku