wtorek, 10 kwietnia 2012

2 rocznica bloga

Dzisiejszego dnia minęły 2 lata odkąd napisałem pierwszy wpis na blogu.
Co prawda inauguracja była dość smutna (z racji katastrofy Tupolewa) i bardzo krótka ale w pewien sposób zaczęła to co udaje mi się kontynuować do tej pory.

Blog rozwijał się bardzo spokojnie i bez większych rewolucji, ale takie też były założenia. Nie chciałem (i dalej nie chcę) zawojować za pomocą metastorage świata pamięci masowych, trochę to takie "pisanie dla samego siebie" choć oczywiście bardzo mi miło jeżeli, ktoś znajduje to pożyteczne dla siebie informacje.

Co do statystyk:
Jak widać w ciągłu tych 2 lat odwiedziło mnie prawie 3400 unikalnych użytkowników ( około 6000 odwiedzin). Na pewno "kokosów" bym nie zarobił umieszczając tutaj reklamy ;)
Niestety bardzo duży współczynnik odrzuceń - średnio 4 na 5 trafiających na mojego bloga nie czytało więcej niż pojedynczej strony - wynika to z pewnością z bardzo dużej ( i niezasłużonej) popularności jednego ze wpisów - tego dotyczącego cloud computingu.

To co cieszy to fakt, że mam niewielką grupkę osób, które mojego bloga odwiedzają i czytają regularnie:



Najbardziej zadziwiająca sprawa, jaka spotkała mnie przez te 2 lata blogowania, to fakt podlinkowania mnie przez Wikipedię (http://pl.wikipedia.org/wiki/Cloud_computing) i co najśmieszniejsze dotyczy to posta o temacie nieco odbiegającym od motywu przewodniego tego bloga. Dzięki temu poznałem siłę Wiki bo z tego jednego niepozornego linku w przypisach mam ponad 2200 wejść.

Co dalej z blogiem?
Ano nic nowego. Dalej będę pisał o sprawach jakie mi się spodobały w świecie storage, postaram się ciągnąć temat dotyczący Clariionów i przygotowania do certyfikacji EMC w tym obszarze, a może urodzi się w mojej głowie jeszcze coś innego. Pożyjemy zobaczymy.

Pozdrawiam wszystkich czytających i życzę przyjemnej lektury.

czwartek, 5 kwietnia 2012

Macierze "solid state" - demony prędkości (Część 1 - Dysk SSD)

Jednym z najbardziej obecnie obiecujących trendów w obszarze storage i coś co pojawia się bardzo często we wszystkich zestawieniach związanych z przyszłościowymi technologiami to macierze składające się wyłącznie z dysków SSD.
Ponieważ ostatnio przygotowywałem w pracy analizę rynku takich rozwiązań i zebrałem trochę materiału oraz uzupełniłem swoją wiedzę na ten temat, to z miłą chęcią podzielę się tymi informacjami tutaj.

Zaczniemy od początku czyli opisania czym w ogóle jest dysk SSD

Dysk SSD

Podstawy:

Dysk SSD jest urządzeniem do przechowywania danych o zastosowaniach analogicznych jak „tradycyjne” dyski twarde. W odróżnieniu od nich SSD nie posiada części mechanicznych (talerze, głowice) a dane przechowywane są na elektronicznych układach półprzewodnikowych.

Zalety:
  • Dużo szybsze od tradycyjnych dysków (szczególnie podczas tzw swobodnych odczytów - random reads)
  • Brak mechanicznych części powoduje iż ich awaryjność jest dużo mniejsza, a odporność na wstrząsy i wpływ środowiska bardzo duża. 
  • Małe zużycie energii - to także wynika z budowy tych urządzeń.
Wady:
  • Koszt, znacząco większy niż dla dysków tradycyjnych. 
  • Mniejsze pojemności.
  • Ograniczona żywotność liczona w tzw cyklach zapisu. Cykl zapisu polega na wykasowaniu zawartości bloku z danymi i nadpisaniu go nowymi danymi – komórki pamięci na dyskach SSD mogą wykonać taką operację jedynie ograniczoną liczbę razy.  
Parametry wydajnościowe:

Napędy SSD są dużo szybsze niż ich mechaniczne odpowiedniki. Dysk SAS 15k potrafi osiągnąć około 180IOPSów. Wielkość ta jest zależna od dwóch czynników: szybkości obrotowej dysku oraz tzw "seek time", czyli czasu potrzebnego do głowicy dysku, na ustawienie się nad właściwym sektorem. Czynniki te są zależne od samej fizycznej budowy napędów i w najbliższej przyszłości nie jest możliwe ich podniesienie (np: zwiększenie prędkości obrotowej ponad 15.000obrotów powoduje bardzo duże wzrost siły bezwładności działającej na talerze) - z tego względu można powiedzieć, że dyski "tradycyjne" zbliżyły się do swoich granic wydajnościowych. W przypadku SSD nie ma ograniczeń mechanicznych i potrzeby "pozycjonowania" się głowicy nad danymi do odczytu, dlatego też napęd może obsłużyć dużo większą ilość żądań zapisu/odczytu. Dyski SSD mają jednak bardzo skomplikowany i wprowadzający duże opóźnienia mechanizm zapisu danych - dlatego też występują spore różnice między wydajnością przy zapisach (około 500IOPSów) a odczytach (40.000IOPSów). Przy standardowym "wymieszanym" ruchu dyski SSD są klikanaście razy szybsze od mechanicznych.
Kolejnym z parametrów wydajnościowych jest czas odpowiedzi. W przypadku HDD dla dysków 15k wynosi on około 3ms , przy dyskach SSD mówimy o wielkościach rzędu 100µS (0,1ms).

Podział dysków SSD -> Flash i DRAM:

Dyski SSD można podzielić według kilu kryteriów,j ednym z nich jest rodzaj układów półprzewodnikowych używanych do przechowywania danych. Można wyróżnić dwie kategorie: SSD zbudowane na modułach flash oraz na kościach DRAM.
Dyski SSD używane w komputerach stacjonarnych i laptopach, a także zdecydowana większość dysków używanych w serwerach oraz macierzach jest oparta o moduły flash.  DRAM obecny jest jedynie w niewielkiej ilości specjalizowanych macierzy opartych na tej technologii oraz w kartach PCIe. Poprzedni paragraf zatytułowany "Parametry wydajnościowe" opisywał tak naprawdę nie ogół dysków SSD ale właśnie ich podkategorię opartą na modułach flash.

Jeżeli chodzi o różnice między tymi dwoma technologiami to dyski DRAM są o wiele szybsze niż ich flashowe odpowiedniki. Czas odpowiedzi z pamięci DRAM mieści się w granicach 10-50µS, a z dysków flash około 100µS. Różnica jest znaczna, ale obydwie te wartości i tak są bardzo niskie jeżeli porównamy je do dysków tradycyjnych.
W układach DRAM nie występuje także zjawisko "zużywania" się komórek pamięci, które jest widoczne we flash-ach.
Jedną z ważniejszych różnic w działaniu jest reakcja na utratę zasilania - po odcięciu dopływu prądu komórki DRAM tracą zawartą w nich informację, dyski flash są na to zjawisko niewrażliwe. Z tych powodów macierze oprarte na DRAM muszą być zaopatrzone w baterie, do podtrzymywania zawartości pamięci w przypadku awarii zasilania.
Kolejna sprawa jaka wyróżnia te dwie grupy to wydzielanie ciepła - w przypadku DRAMu jest on dużo większy, co wpływa na potrzebę instalowania dodatkowych modułów chłodzących.

Podział dysków SSD --> SLC/MLC/eMLC/TLC

Zostając przy dużo bardziej popularnych dyskach opartych na modułach flash (bardzo często mówiąc SSD myślimy właśnie o dyskach flashowych) to je także można podzielić na kilka kategorii.
Różnica polega na budowie pojedynczej komórki pamięci i ilości przechowywanych w niej danych. Główne rodzaje komórek to SLC i MLC.
Komórki SLC (Single Level Cell)  przechowują jeden bit pamięci i mogą przyjmować tylko dwie wartości (1 i 0). Komórki MLC (Multi Level Cell) mogą znajdować się w czterech stanach (00,01,10,11) tak więc przechowują dwa bity informacji.
Przechodząc teraz z poziomu pojedynczej komórki do poziomu dysku SSD wykonanego w danej technologii:
Dyski SSD MLC mają dużo większe pojemności (dwa bity zamiast jednego na komórkę), są także tańsze. Jednak większa liczba stanów, w jakich może znajdować się pojedyncza komórka, sprawia, że różnice między nimi się zacierają, przez co dużo większa jest możliwość popełnienia błędów oraz mniejsza odporność na zużywanie. Dyski MLC są także nieco wolniejsze niż SLC.

Można również spotkać się z dwoma innymi rodzajami flashowych dysków SSD, a mianowicie eMLC i TLC. eMLC (Enterprise Multi Level Cell) to dysk oparty na komórkach MLC ale o poprawionej odporności na zużycie - "zwykłe" komórki MLC wytrzymują około 10.000 cykli czyszczenia/zapisu, natomiast eMLC to około 30.000cykli (dla porównania SLC - 100.000cykli).
TLC (Triple Level Cell) - to komórki przechowujące 3 bity danych (8 stanów) - otrzymujemy jeszcze większą gęstość danych ale oczywiście cierpi na tym niezawodność i odporność na "zużycie".



Na chwilę obecną wystarczy tyle informacji o dyskach SSD, kolejny wpis będzie poświęcony macierzą opartym wyłącznie na tych napędach i firmom które je dostarczają. Jeszcze potem myślę wrócić do tematu samych dysków i opisać trochę dokładniej ich działanie (funkcje takie jak TRIM, Garbage Collection itd...)


Do poczytania:

SSD - Wikipedia
What eMLC and eSLC do for SSD longevity
Flash SSDs - Inferior Technology or Closet Superstar?
Solid State Disk Overview
SLC kontra MLC gdzie dwóch się bije