Dysk twardy, na którym zapisane są pliki strony internetowej z pewnością nie jest czymś, o czym myśli się często. W kolejnej odsłonie cyklu Poniedziałki z hostingiem zaglądniemy „pod maskę” serwerów i pokażemy, że rodzaj nośnika danych może robić różnicę.
Przez cztery kolejne tygodnie przyjrzymy się bliżej dyskom SSD. Sprawdzimy po co w ogóle montuje się je w serwerach. Wyjaśnimy, jakie strony warto przenieść na hosting SSD, a kiedy będzie to zbędny wydatek. Weźmiemy pod lupę mity dotyczące żywotności dysków w technologii flash i na konkretnych przykładach sprawdzimy, co daje przesiadka na serwer z dyskiem SSD.
Skąd to całe zamieszanie z dyskami SSD?
Dyski oparte na pamięci flash w ciągu ostatnich kilku lat robią sporą karierę. Najczęściej mówi się o nich w kontekście komputerów osobistych. Mają być cudowną bronią w walce o przyspieszenie starego peceta i rozwiązaniem dla osób, którym szczególnie zależy na wydajności maszyny.
W sieci pełno jest filmów z efektownymi porównaniami, pokazującymi przewagę dysków SSD nad ich starszymi kuzynami.
Kilkadziesiąt sekund to wynik nie do pogardzenia. Skąd bierze się ta różnica? Odpowiedź znajdziemy patrząc na konstrukcję dysku twardego i dysku SSD.
Długa historia dysku twardego
Choć brzmi to niewiarygodnie, to popularne „twardziele” niedługo skończą… 60 lat. W 1956 r. inżynierowie z firmy IBM skonstruowali pierwszy dysk twardy o zawrotnej pojemności 5 MB. Dane były zapisywane i odczytywane przez ruchome ramię z dwoma głowicami. Rolę nośników pełniły wirujące dyski pokryte warstwą magnetyczną. Brzmi znajomo?
Chociaż pojemność i pozostałe parametry dzisiejszych dysków twardych trudno porównywać z ich pradziadkiem, to zasada działania nośnika nie zmieniła się znacznie. Wciąż mamy do czynienia z ruchomym ramieniem i głowicami, jednak ich praca wygląda dziś zupełnie inaczej, między innymi dzięki zastosowaniu kontrolerów.
Jak szybko zrobić zakupy w supermarkecie?
Rolą kontrolerów jest kolejkowanie danych do odczytu i zapisu na dysku. Realizowanie operacji w kolejności ich napływania nie jest bowiem najbardziej efektywnym rozwiązaniem. Podobnie jest z zakupami w supermarkecie. Wrzucanie do koszyka produktów w kolejności, w jakiej są zapisane na liście zakupów, mogłoby skończyć się chodzeniem po sklepie tam i z powrotem. Towary znajdują się bowiem w różnych częściach sklepu.
Dane na dysku twardym również są zapisane w różnych sektorach nośnika – bliżej lub dalej jego środka. Przesuwanie głowicy pomiędzy sektorami wymaga czasu, dlatego stosuje się różne strategie szeregowania zadań, takie jak:
- SSTF (shortest service time first) – w pierwszej kolejności realizowane są zadania wymagające najmniejszego ruchu głowicy.
- SCAN – ramię głowicy „skanuje” dysk, realizując zadania napotkane po drodze. Po dotarciu do ostatniej ścieżki, znajdującej się na krawędzi dysku, rozpoczyna skanowanie w drugą stronę.
- N-step-SCAN – żądania są ustawiane w podkolejkach, a każda z nich jest przetwarzana zgodnie ze strategią SCAN.
Strategie szeregowania zadań pozwalają znacznie zwiększyć wydajność dysku. Wciąż jednak ruchoma głowica pozostaje słabym ogniwem całego układu. Nie może bowiem znajdować się w dwóch miejscach jednocześnie. Inaczej jest w przypadku dysków SSD.
Szybsze, ale droższe
W dyskach SSD stosuję się pamięci flash. Tą samą technologię znajdziemy w pendrive’ach i kartach, na których zapisywane są zdjęcia w aparatach cyfrowych. Dyski SSD nie posiadają ruchomych części, co znalazło odbicie w nazwie – skrót SSD oznacza bowiem solid-state drive. Dzięki zastosowaniu pamięci flash, dyski tego typu:
- są odporne na uszkodzenia mechaniczne (np. upadki),
- mają stosunkowo niski pobór energii elektrycznej i niską emisja ciepła,
- pracują bezgłośnie i wykazują większą żywotność,
- nie potrzebują defragmentacji,
- mają gorszy stosunek ceny do pojemności niż dyski HDD.
Jednak najistotniejszą cechą dla użytkownika pozostaje szybkość działania dysków SSD. Na filmie z początku wpisu obydwa laptopy dzieli kilkadziesiąt sekund różnicy. Wynika ona z tego, że zapisywanie i odczyt danych odbywa się inaczej niż na dyskach HDD. Operacje nie są kolejkowane, ale mogą być wykonywane jednocześnie na ustalonej konstrukcyjnie liczbie komórek. To pozwala odczytywać i zapisywać dane z prędkością ponad 500 MB/s, co jest wynikiem nie do osiągnięcia dla technologii HDD.
Dyski SSD wygrywają również w wyścigu o dostęp do plików. Czas losowego dostępu do danych dla dysku SSD wynosi zwykle ok. 0,1 ms. Dzięki temu, że zrezygnowano z ruchomych części, czas ten jest taki sam, bez względu na to, w którym sektorze dysku zapisano plik.
Inaczej jest w przypadku dysków HDD. Czas „podróży” głowicy do właściwego miejsca na dysku wynosi zwykle od 10 do 20 ms (dla prędkości obrotowej 7 200 RPM). Technologia HDD przegrywa również w konkurencji odczytu i zapisu małych plików. Z tych względów dyski SSD coraz częściej stosuje się tam, gdzie prędkość jest kluczowa, czyli w serwerach, którym poświęcimy kolejny odcinek cyklu.