Pokazywanie postów oznaczonych etykietą ssd. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą ssd. Pokaż wszystkie posty

niedziela, 8 grudnia 2013

XtremeIO - torpeda odpalona...po półtora roku czekania...

Ostatnio EMC ogłosiło GA (General Availability), czyli produkt dostępny w sprzedaży bez ograniczeń, dla swojej pierwszej macierzy klasy AFA (All-flash-array). Produktu od początku zbudowanego i zaprojektowanego do obsługi dysków SSD i żadnych innych.

Temat dysków SSD i macierzy wyspecjalizowanych w ich obsłudze od jakiś dwóch lat jest jednym z "najgłośniejszych" i najbardziej "trendy" w środowisku storage. Na początku bardzo szybko zaczęły powstawać nowe "startup"-y z produktami tej kategorii (np: Violin, Pure Storage, Solid Fire). O firmach tych zaczynało być coraz głośniej, pojawiło się coraz więcej nowych funkcjonalności (np: inline deduplikacja), a same urządzenia zaczęły być dostępne nie tylko lokalnie (do 100km od Doliny Krzemowej ;) ) ale też do zamówienia nawet na takim końcu świata jak np: Polska (Pan się nie boi, serwisant jest dostępny i w razie potrzeby doleci z Londynu w 5h). W końcu, czyli jakieś półtora roku temu, wkroczyliśmy w etap gdy niszą macierzy AFA zainteresowali się najwięksi gracze na rynku storage i rozpoczęło się przejmowanie przez nich firm siedzących w temacie. IBM kupił Texaco Memory Systems, CISCO kupiło WhipTail (całkiem niedawno), HP rozpoczęło sprzedaż i serwis urządzeń Violin, a EMC w maju zeszłego roku przejęło firmę XtremeIO.

No właśnie...
Przejeło, zrobiło wielki szum i ogłoszenie startu "tajemniczego" projektu "X" (i ubicie równie tajemniczego projetu "Thunder""), po czym nastała cisza...
Pojawiały się co jakiś czas informacje zarówno ze strony EMC (optymistyczne) jak i konkurencji (sarkastyczne) oraz niezależnych blogerów (różne) na temat zaawansowania prac nad macierzą all-flash bazującą na produktach XtreamIO, ale ogólnie to było w tym temacie bardzo, ale to bardzo cicho. Świat oczywiście nie stał w miejscu i macierze AFA stawały się coraz popularniejsze, było o nich coraz głośniej (choć oczywiście dalej jest to margines całej sprzedaży urządzeń storage) i wyglądało na to, że EMC nie ma za bardzo pomysłu i produktu, który mógłby wyróżnić się w tym obszarze na tle konkurencji.

14 listopada 2013 , po półtora roku od momentu przejęcia XtremeIO, EMC ogłosiło nowy produkt. Pierwszą w swoim portfolio macierz od początku do końca budowaną z przeznaczeniem do bycia ekstremalnie szybkim urządzeniem opartym na dyskach SSD.

Czy opłacało się czekać?


Nowa macierz składa się z tak zwanych X-Bricks. Cała konfiguracja może mieć od jednej do czterech takich cegiełek (wsparcie dla większych konfiguracji pewnie zostanie za niedługo ogłoszone). Każdy X-Bricks to w chwili obecnej 10TB przestrzeni (używane są dyski SSD 400GB), a także dodatkowa para kontrolerów. Dodawanie kontrolerów powoduje, że liniowo skaluje się wydajność rozwiązania - przy 4 X-Brickach jest ona określona na 1.000.000 IOPSów ( 4k random , 100% read)
Jeszcze w temacie konfiguracji hardware można wspomnieć o połączeniach między X-Brickami, które są oparte na inifinbandzie.

Bardzo ciekawie jest rozwiązane zarządzanie/konfigurowanie macierzy. Administrator nie musi robić praktycznie nic. XtremeIO nie ma RAIDów, LUNów, storage grup, nie ma tieringu, nie trzeba konfigurować cache, wielkości bloków itd... Jedyne co trzeba zrobić to wskazać do jakiego serwera ma być wystawiona przestrzeń i ile jej ma być.

Jak więc działa macierz?

Po pierwsze dane są rozrzucane po dyskach - zawsze po wszystkich i zawsze po równo (EMC pokazuje statystykę macierzy zajętej w 80% gdzie maksymalna różnica w zajętości między dwoma dowolnymi dyskami jest nie większa niż 0,2%).
Po drugie "thin provisioning" i deduplikacja są zawsze włączone. Dane wpadające na macierz są dzielone na 4Kb bloki i sprawdzane jest czy taki blok już się na macierzy znajduje. Jeżeli tak to oczywiście nie jest zapisywany ponownie.
Po trzecie - zabezpieczenie danych na dyskach nie opiera się na standardowych grupach RAID ale mechanizmie nazwanym XDP (XtremeIO Data Protection). Jeżeli chodzi o odporność na awarie to XDP odpowiada (w dużym przybliżeniu) RAID6, czyli posiada redundancję N+2. Różnica tkwi jednak w narzucie na protekcję (czyli ilości przestrzeni jaka jest "tracona" na zapewnienie ochrony danych) - w przypadku XDP jest to około 8% więc bardzo niewiele, oraz zredukowaniu tzw: Write amplification/write penalty czyli potrzebie zwielokrotnienie operacji I/O przy zapisywaniu danych na dyski w konfiguracjach RAIDowych. Przykładowo pojedyncze żądanie zapisu przy RAID6 wymaga wykonania aż 3 operacji odczytu i 3 zapisu na samych dyskach, dla XDP jest to 0 operacji odczytu i około 1.2 operacji zapisu (średnio oczywiście). Wpływ takiego działania w oczywisty sposób powoduje wzrost wydajności takiego rozwiązania w porównaniu do podobnych ale opartych o RAIDy


Krytyka:

EMC (jak to EMC) zrobiło z okazji wejścia na rynek duży szum. Na szczęście mieli na tyle przyzwoitości lub instynktu samozachowawczego i nie głosili wszem i wobec, że oto przedstawiają Rewolucję i Nową Jakość (koniecznie pisaną dużą literą) ale promocją produktu zajęli się bardzo porządnie.

Cicho nie siedziały także inne firmy oferujące swoje produkty w obszarze macierzy AFA i dość szybko pokazały się artykuły i wpisy w blogach firmowych dość sceptycznie podchodzące do nowego dziecka EMC.

Nimbus bardzo obrazowo pokazał efektywność nowej macierzy na prostej grafice porównującej macierz EMC z ich urządzeniem o podobnej pojemności:

Źródło: http://www.nimbusdata.com/newsevents/blog.php

Ktoś mógłby powiedzieć, że może i większe ale urządzenie EMC jest wydajniejsze lub zapewnia lepszą funkcjonalność. Otóż nie bardzo. Porównania część dalsza (po lewej EMC, po prawej Nimbus):

Źródło: http://www.nimbusdata.com/resources/v_xtremio.php

Jeszcze dalej w porównaniu poszedł IBM który zestawił ze sobą macierz XtremeIO nie tylko ze swoją macierzą AFA ale także z "tradycyjnym" V7000 tyle tylko że wypełnionym dyskami SSD:

Źródło: www.ibm.com/developerworks/community/blogs/InsideSystemStorage/

Oprócz samych porównań, konkurencja krytycznie wypowiadała się także o możliwościach XrtremeIO - szczególnie o "rzekomym" braku mechanizmu "garbage collection", odporności na utratę/uszkodzenie jednego z nodów, oraz brak kompresji i deduplikację stałym blokiem.
Cóż, taka rola konkurencji, żeby wbijać szpilki...


Podsumowanie:

Rozwiązanie EMC to nie rewolucja, tylko kolejny już (dwudziesty-trzydziesty?) produkt w tym obszarze, ma  fajne rozwiązania, ale w wielu przypadkach odstaje od obecnych na rynku urządzeń. Na pewno XtremeIO będzie miało tą przewagę, że EMC ma największe możliwości jeżeli chodzi o moce przerobowe w obszarze logistyki i zaplecza serwisowego. Poczucie, że specjaliści dostawcy od danego produktu są na wyciągnięcie ręki, a nie na drugim końcu świata, jest bardzo ważne dla dużych firm gdzie priorytetem jest stabilność działania i bardzo szybkie rozwiązywanie wszystkich awarii.
Jeżeli chodzi o "szum" wokół XtremeIO to należy go przyjmować ze zdrowym dystansem. Z jednej strony nie wierzyć w propagandę sukcesu ze strony EMC, z drugiej tak samo traktować opnie i "obiektywne" porównania konkurencji :D
Najlepiej było by samemu spróbować...


Do poczytania:
XtremIO - Taking the time to do it right
EMC finally releases the XtremIO all flash array
IBM FlashSystem versus EMC XtremeIO all flash arrays
XtremIO - Hardware/software overview architecture deepdive  (Mocno techniczny i dokładny opis! Dobre!)
NimbusData - BLOG

sobota, 18 maja 2013

Macierze flashowe - poradnik kupującego na 2013

Ostatnio DCIG wypuszcza całkiem sporo"buyer's guide"-ów na najróżniejsze produkty z obszaru storage. W jednym z ich ostatnich opracowań porównano kilkadziesiąt modeli macierzy flashowych (tzw: AFA - All Flash Arrays), urządzeń wykorzystujących do przechowywania danych wyłącznie (lub w większości) dysków SSD. Rynek tych urządzeń od około 2 lat cały czas rośnie i obecnie z fazy start-upów, przeszedł do etapu wykupywania mniejszych (ale dobrze rokujących) firm przez gigantów.

Macierze SSD mają kilka zdecydowanych zalet nad rozwiązaniami bazującymi na "tradycyjnych" dyskach. Oprócz najbardziej oczywistej, czyli dużo większej wydajności, wykorzystanie takich rozwiązań pozwala na lepszą utylizację CPU w serwerach (które przy pracy z normalnymi macierzami dużo czasu marnotrawią na czekanie na odpowiedzi z sytemu dyskowego) oraz ograniczenie zużycia energii i miejsca w serwerowni.

Założenia

Aby zakwalifikować się do porównania, macierz musiała spełniać następujące warunki:
  • Dostępna jako applinace - czyli odrębne urządzenie z własnym oprogramowaniem (firmware).
  • Nie bazuje na MS Windows Storage Server
  • Wspiera konfigurację opartą w 100% na dyskach SSD
  • Może wspierać konfiguracje oparte na wymieszaniu dysków SSD z tradycyjnymi 
  • Musi wspierać minimum 16 dysków
  • Musi obsługiwać przynajmniej jeden protokół SAN (iSCSI, FCP, FCoE,Infiniband)
  • Może wspierać protokoły NAS (CIFS,NFS)
  • Musi być dostępna w sprzedaży od 1 listopada 2012

Kryteria 

Macierze były oceniane według kilku kategorii. W odróżnieniu od poprzednich wpisów dotyczących "Buyer's guide"-ów od DCIG nie będę wyliczał wszystkich składowych razem z ich opisem. Zdecydowana część jest oczywista. Bardziej szczegółowo skupię się na ocenianych funkcjonalnościach związanych z zarządzaniem napędami flashowymi.

Management & Replication
W tej sekcji urządzenia są oceniane biorąc pod uwagę kilkanaście kategorii. Głównie chodzi o wspieranie przez macierze pewnych konkretnych funkcjonalności takich jak: Thin Priovisioning, Snapshoty, Deduplikacja czy wsparcie dla VMware (np: obsługa VAAI i VASA)

Storage Array Hardware
Szczegóły dotyczące hardware jaki posiada i wspiera dane urządzenie (ilość cache, rodzaje interfejsów, max pojemności obsługiwane itd...)

Flash Management
W tej części mamy specjalne możliwości związane z zarządzaniem pamięciami/dyskami flash. Sprawdzana jest obecność 5 rodzajów funkcjonalności:
  • Write Coalescing - technika polegająca na grupowaniu zapisów w cache i nagrywaniu ich na dysk dopiero wtedy, kiedy osiągną wielkość bloku do usunięcia (EBS - erasure block size). Funkcjonalność ta poprawia wydajność, oraz wydłuża czas życia nośnika i jest to związane z mechanizmem działania pamięci flash. Dane na dysku SSD nie mogą być nadpisane, aby zmienić wartość komórki należy ją skasować, a dopiero potem na nowo zapisać wartość. Dodatkowo kasowanie nie może być wykonane per komórka ale dzieje się jednocześnie dla większej ilości danych - najmniejszy "kasowalny" jedną operacją obszar to właśnie EBS. Użycie Write Coalescing zmniejsza ilość operacji kasowania, przy zapisywaniu danych.  
  • Variable RAID Stripe Sizing - kolejna funkcjonalność poprawiająca wydajność i czas życia. Też opiera się na wielkości EBSa. Tym razem macierz dba o to aby dane rozrzucane (stripe) były po obszarze równemu wielkości EBS.
  • Data Aging Timer Tuning - czy dostępna jest dla administratora możliwości ustawiania/zmiany pewnych liczników odpowiedzialnych za "starzenie" się danych
  • Inline Deduplication - czy macierz wspiera deduplikacje w czasie rzeczywistym (in-line)
  • Block Level Compression - czy macierz wspiera kompresję na poziomie bloku
  • Hardware Accelerated Compression - czy urządzenie posiada dedykowane układy (ASIC) do obsługi kompresji.
Application Layer
Obsługa protokołów dostepu plikowego (NFS,CIFS) i objektowego (REST,SOAP), rodzaje wspieranej autentyfikacji (logowanie przez AD, Kerberos, NIC itd...)

Support
Jakie wsparcie zapewnia dostawca swoim produktom.


Przetestowane modele

Asute Networks
www.astutenetworks.com

Asute chwali się kilkoma "unikalnymi" możliwościami jakie mają ich produkty. Pierwszym z nich jest DataPump Engine czyli dedykowany układ (ASIC) ktory zarządza ruchem przychodzącym do macierzy. W porównaniu do rozwiązań konkurencji opartych na standardowym układzie x86, ASIC Asute ma charakteryzować się dużo większą wydajnością.
Kolejnym atutem jest deduplikacja w czasie rzeczywistym, która ma zerowy wpływ na wydajność.

Asute podkreśla także bardzo ekonomiczość ich rozwiązania, twierdząc, że ich produkty mają najlepszą cenę jednostkową per IOPS.

DCIG przetestował 3 modele macierzy Asute  (seria ViSX) różniące się obsługiwaną pojemnością:
  • ViSX G4 2400
  • ViSX G4 4800
  • ViSX G4 9600

GreenBytes
getgreenbytes.com/

Firma pozycjonuje się jako dostawca infrastruktury dla rozwiązań VDI-owych czyli wirtualnych terminali.
Tego typu środowiska zwykle mają bardzo duże wymagania dotyczące wydajności storage na których są zbudowane.
Model, który został przetestowany to:
  • IO Offload Engine (5,000 VDI Model)


Huawei Enterprise
enterprise.huawei.com/

Huawei to firma mająca bardzo różnorodne portfolio produktów z najróżniejszych obszarów infrastruktury IT. Storage jest tylko malutkim kawałeczkiem w ich ofercie, a macierze AFA (All Flash Array) to już zupełnie drobinka, w sumie jeden niewyróżniający się niczym szczególnym model:
  • OceanStor Dorado2100

Kaminaro
www.kaminario.com

Kolejny start-up działający na rynku macierzy All Flash. Podobnie jak inne firmy specjalizujące się w tym obszarze, ma swoje własne rozwiązania związane z architekturą i oprogramowaniem zarządzającym pamięcią flash, w Kaminaro nazywają się one SPEAR (Scale Out Performance Storage Archtecture)
  • K2 F

Nimbus
www.nimbusdata.com

Nimbus dość odważnie poczyna sobie na rynku macierzy flash. Firma ma kilka "rodzin" macierzy z których największe to "E Class" (Enterprise) i "S Class"(Standard). Rodzina "E" wyróżnia się przede wszystkim architekturą zapewniającą dużo większą dostępność i odporność na awarie. Oprócz tego Nimbus od niedawna ma także trzecią linię macierzy nazywaną Gemini.

Największym klientem Nimbusa jest E-Bay który kupił macierze AFA o ponad 100TB pojemności.

Do porównania DCIGa wzięte zostały następujące macierze klas E i S (poszczególne podele w obrębie rodziny różnią się pojemnościami):
  • E Class Flash Memory System E6400M+E1000X
  • E Class Flash Memory System E6400M+E2000X
  • S Class Flash Memory System S255M / S255X
  • S Class Flash Memory System S505M / S505X
  • S Class Flash Memory System S1005M / S1005X

PureStorage
www.purestorage.com

Firma o której kiedyś krążyły plotki, że ma być wykupiona przez EMC (w ostateczności EMC kupiło XIO).
Rozwiązania PureStore obsługują deduplikacje w czasie rzeczywistym, przez co pozalają na dużo większą "gęstość" upakowania danych, obsługiwane są także snapshoty oraz thin provisioning (co nie jest standardem w obszarze macierzy flash).

W teście DCIGa pojawiły się dwia (z dostępnych \dwóch) modeli macierzy PureStorage. FA-310 to urządzenie z pojedynczym kontrolerem, FA-320 ma ich dwa.
  • FA310
  • FA320

Tegile
www.tegile.com

Tegile to kolejny start-up skupiony na macierzach flash i hybrydowych. Macierze Tegile są w stanie udostępniać dane zarówno po sieci SAN jak i z wykorzystaniem protokołów plikowych. Z kilku modeli dostępnych DCIG to testów wybrał tylko jeden, ale najsilniejszy:
  • Zebi  HA2800

Texas Memory Systems (IBM)
TMS

TMS to firma najdłużej działająca na rynku macierzy flashowych, jeszcze kilka lat temu praktycznie jako jedyna oferowała tego typu produkt. W zeszłym roku firma została wykupiona przez IBMa. IBM ostatnio przedstawił swoje plany co do produktów dawnego TMSa, same macierze zmieniają się (przynajmniej na razie) w niewielkim stopniu natomiast nazwa całej linii została przemianowana na FlashSystem-s.

W porównaniu DCIGa pojawiały się trzy macierze, jeszcze w starym nazewnictwie:
  • RamSan 720
  • RamSan 810
  • RamSan 820

Seria 7xx jest oparta o pamięci eMLC, natomiast 8xx to flash typu SLC (Więcej o typach pamięci SSD można znaleźć TUTAJ )

Violin Memory
www.violin-memory.com

Violin to druga (oprócz TMS) firma o której można powiedzieć, że nie jest już startup-em tylko dojrzałym bytem specjalizującym się w macierzach AFA. Oprócz tego firma sprzedaje także flashowe karty PCI-Express.

Violin w obszarze macierzy flashowych ma dwie główne rodziny produktów: Seria 3000 i Seria 6000. W obydwu znajdują się macierze zarówno oparte o dyski MLC jak i SLC, główną różnicą między rodzinami jest znacznie większe zabezpieczenie przed awariami (podwójne kontrolery, brak SPOFów) w przypadku Serii 6000.
  • Series 3000: 3120/3202/3205/3210/3220
  • Series 6000: 6212/6232/6606/6616

Whiptail
whiptail.com

"Last but not least" - Whiptail, kolejny ze startupów wyspecjalizowany w sektorze macierzy AFA.
Firma ma dwie (a w zasadzie 3 bo Invicta jest podzielona jeszcze na kategorię "normal" i "infinity") linie macierzy: Accela to macierze "entry level" z pojedynczym kontrolerem, o wymiarach 2U i różnych pojemnościach (od 1,5TB do 12TB), Invicta to architektura opierająca się na węzłach (nodes) o różnych wielkościach (6,12 i 24TB) które można ze sobą łączyć tworząc większe konfiguracje.

W podsumowaniu DCIG uwzględnione zostały następujące modele:
  • Accela ASSA 1500
  • Accela ASSA 3000
  • Accela ASSA 6000
  • Accela ASSA 12000
  • Invicta ISSA 6
  • Invicta ISSA 12
  • Invicta ISSA 24

Wyniki:


Wyniki są trochę zaskakujące muszę przyznać.

"Best-in-Class":

Pierwsze miejsce i kategorię "Best-in-class" zdobyła macierz Tergile Zebi HA2800. W większości ocenianych kategoriach otrzymała bardzo wysokie oceny a dodatkowo obsługuje wszystkie funkcjonalności zapewniane przez VAAI. Na plus zasługuje także bardzo duża ilość pamięci cache, obsługa replikacji lokalnej, zdalnej, wsparcie dla protokołów zarówno NASowych, jak i SANowych, a także bardzo efektywna deduplikcja. Zebi jestnie tylko macierzą All Flash, wspiera także konfiguracje hybrydowe z dyskami tradycyjnymi.

"Recommended":

Kolejne 4 macierze zostały ocenione jako "Recommended". Serbrny medal trafił do PureStorage FA320, a następna trójka to produkty firmy Nimbus (zarówno S jak i E klasa). Macierze w tej klategorii cechowały się dobrym wsparciem dla VMware (choć nie wszyskie funkcjonalności VAAI były wspierane), a także dużą ilością dodatkowych własności takich jak np: thin provisioning czy replikacja - rzeczy te są standardem przy "tradycyjnych" macierzach ale w obszarze urządzeń flashowych nie są to zbyt popularne funkcjonalności - przynajmniej jeszcze do niedawna

"Excellent":

Oczko niżej, pod recommended, jest kategoria Excellent, na którą załapało się 7 macierzy. Początek tej listy to pozostałe urządzenia Nimbusa i PureStorage, zaraz za nimi grupa 3 macierzy Violin Memory (seria 6xxx) i na końcu GreenBytes. Urządzenia które tutaj trafiły miały nieco gorsze (ale wciąż bardzo dobre) oceny z poszczególnych kategorii i obsługę dodatkowych funkcjonalności. Wszyskie miały też conajmniej 96GB pamięci Cache oraz wspierały zarówno FC jak i iSCSI - nie wszyskie jednak obsługiwały dostęp plikowy.

"Good":

Największa kategoria - 14macierzy. Zaczna się od Violina, potem Huawei i pozostałe macierze Violinowe, wymieszane z Whiptail. Można powiedzieć, że urządzenia "Good" to taki trochę standard na rynku. Wsparcie raczej tylko dla portokołów SANowych, brak deduplikacji, raczej ubogo z innymi funkcjonalnościami (np: Thin Provisioning").

"Basic":

Na końcu macierze "proste/podstawowe", 8 modeli z czego na początku Huawei, potem Astute i Kaminaro, zaś ostatnie trzy miejsca w rangingu dzielnie zamykają produkty IBM/TMS.
Basic to basic - jeden protokół SANowy, ubogo w dodatki, ciężkie zarządzanie...


Podsumowanie:

Jak wszystkie pozostałe "Buyers Guide"-y od DCIG, tak i ten stanowi bardzo dobre i obszerne porównanie produktów z danego obszaru. Osobiście zaskoczył mnie wynik - zarówno jeżeli chodzi o Tergile na miejscu pierwszym, jak i na TMSy (zwane od niedawna FlashSystem-s) na szarym końcu.
No cóż, "raz na wozie, raz pod wozem".


niedziela, 15 lipca 2012

Macierze "solid state" - demony prędkości (Część 3 - Nieco więcej technikaliów)

W poprzednich częściach dotyczących dysków SSD oraz macierzy wyłącznie z nich zbudowanych ("Solid state arrays") opisaliśmy podstawy tej technologii oraz firmy, które w tej branży działają. Teraz chciałbym wejść trochę głębiej w mechanizmy działania tego typu urządzeń.

Jak zbudowany jest dysk SSD

Dysk SSD jaki jest każdy widzi -główna różnica między nim a jego "tradycyjnymi kolegami" polega na braku mechanicznych obracających się części (talerze, głowica). Z tego powodu dyski SSD są ciche, niezawodne i zużywają mało energii.

Gdyby otworzyć obudowę dysku i spojrzeć do środka można by wyróżnić następujące komponenty
  • Kontroler
  • Interfejsy I/O
  • Pamięci Flash

Kontroler:

Czyli mózg dysku SSD, odpowiada zarówno za wszyskie "podstawowe" operacje na pamięci flash (zapis/odczyt/skasowanie) jak i za komunikację dysku ze światem zewnętrzny, a także zarządza wszyskimi specjalnymi funkcjami które są specyficzne dla technologii SSD jak np: TRIM czy Garbage Collection (o których będzie później). Sam kontroler to prosty procesor 16 lub 32 bitowy.

Najbardziej znane firmy produkujące kontrolery SSD to:
  • SandForce (wykupiony z początekiem roku przez LSI)
  • Indilinx (zależny od OCZ)
  • JMicron
  • Marvell
Udział w produkcji kontrolerów SSD mają także tacy giganci jak Intel i Samsung.

Interfejs I/O:

Układy łączące dysk ze światem zewnętrznym. Mogą występować w najróżniejszych standardach z których te najbardziej popularne to SATA,FC,SAS, 

Pamięci Flash:

Układy pamięci flash mogą być wykonane w dwóch technologiach: NAND i NOR, ponieważ jednak NOR-y są dużo wolniejsze, umożliwiają mniejsze upakowanie danych oraz cechują się mniejszą wydajnością tak więc praktycznie nie są używane przy produkcji flash-y.
Pamięci NAND możemy podzielić na takie które po pojedynczej komórce są w stanie przechować jeden bit danych (SLC) i takie które mogą ich przechowywać dwa (MLC) lub więcej (TLC). Bardziej szczegółowe informacje o tym podziale znajdują się w pierwszym wpisie dotyczącym SSD: LINK


Jak działa dysk SSD

Tak naprawdę chciałbym tutaj skupić się na kilku pojęciach związanych z dyskami SSD, a przy okazji ich opisu przedstawić także specyfikę działania tego typu napędów.

Te pojęcia to:
  • Write Amplification
  • TRIM
  • Garbage Collection
  • Wear Leveling
Write Amplification (WA):

Dyski SSD są dużo szybsze przy operacjach odczytu niż zapisu, a różnica w prędkości wykonywania tych działań może być nawet kilkunastokrotna. Odpowiedzialny za to jest sposób w jaki dysk SSD zapisuje dane.
Są dwie główne różnice w sposobie zapisu przed dysk tradycyjny i flashowy.
Po pierwsze dysk SSD nie może bezpośrednio nadpisać danych. Jeżeli jakaś komórka już zawiera informacje najpierw musi ona być wyczyszczona i dopiero potem można w niej pisać. Po drugie kontroler SSD nie jest w stanie wyczyścić danych z  pojedynczej komórki, musi to zrobić całą tzw: stroną, która ma ich od kilkunastu do kilkudziesięciu. W rezultacie po otrzymaniu polecenia zapisu, kontroler SSD musi odczytać zawartość całej strony, w której znajduje się blok do nadpisania (aby nie utracić przy czyszczeniu strony już zapisanych w niej bloków). Następnie strona zostaje wyczyszczona. Ostatni krok to ponowne zapisanie danych które wcześniej na niej rezydowały a także nowo zmienionego pojedynczego bloku (tak naprawdę działa to nieco inaczej ale to zostanie wyjaśnione w części poświęconej Garbage Collection, w tej chwili dla lepszego zrozumienia zostańmy przy opisanej powyżej wersji)
Współczynnik Write Amplification (WA) wynika z działania tego mechanizmu i określa ile razy więcej danych jest naprawdę zapisywanych na dysku SSD, w porównaniu do danych które zostały do niego "wysłane".
Oczywiście im więcej takich nadmiarowych zapisów trzeba robić, tym dłużej trwa ta operacja - jest to bezpośrednia przyczyna dużo mniejszej wydajności napędów przy zapisach (pojedynczy zapis jest tak naprawdę serią operacji R/W), dodatkowo im wyższe WA tym szybciej dysk się zużyje, gdyż więcej cyklów zapisu jest potrzebnych dla każdego pojedynczego żądania.
Kolejnym negatywnym efektem, jest fakt iż im więcej danych jest na dysku tym wolniej będzie działał (w stronach czyszczonych będzie więcej bloków do przepisania).

TRIM:

TRIM jest to komenda SATA która pomaga w zmniejszeniu współczynnika WA, a przez to zwiększa szybkość działania i żywotność dysku SSD.
Co robi TRIM?
Jeżeli usuwamy dane (np: pliki) w systemie operacyjnym (obojętnie jakim), system ten odnotowuje sobie ten fakt i traktuje zajmowaną przez nie przestrzeń jako wolną ale nie wysyła informacji o tym do dysku.  Z punktu widzenia systemu operacyjnego miejsce jest wolne i może zostać nadpisane, ale dla dysku są to dane istotne, o których bezpieczeństwo trzeba zadbać, do czasu aż nie przyjdzie polecenie ich skasowana lub nadpisania. Dlatego też dane te zostają odczytane i zapisane za każdym razem gdy kontroler czyści stronę na której się znajdują (aby nadpisać jakiś inny blok). Jest to działanie niepotrzebne gdyż dane te są już skasowane tylko dysk nie dostał tej informacji.
Polecenie TRIM wysyła do dysku informację o skasowaniu danych, gdy tylko jest to robione na poziomie systemu operacyjnego. Dzięki temu dane te nie są przepisywane przy czyszczeniu strony i nie zwiększają współczynnika WA. Polecenie TRIM aby działało musi być wspierane zarówno przez system operacyjny jak i przez sam dsyk SSD.

Garbage Collection (GC):

Nieco wyżej psiałem, że aby nadpisać dane kontroler dysku SSD odczytuje całą stronę czyści go a następnie przepisuje na powrót stare dane + nadpisana nowa. W rzeczywistości odbywa się to nieco inaczej i uczestniczy w tym proces nazywany Garbage Collection (GC).
Nowe dane nie nadpisują starych ale są zapisywane w nowych blokach, natomiast te już nieaktualne dalej rezydują na dysku, są tylko zaznaczone do usunięcia, GC to proces który co jakiś czas przepisuje istotne dane do nowych stron, a na starych zostawiając tylko te już nieaktualne, potem takie strony są automatycznie czyszczone i gotowe na przyjecie nowych zapisów. Zalety stosowania GC to przede wszystkim szybsze zapisy - dane są nagrywane do nowych czystych stron i nie ma potrzeby czyszczenia i nadpisywania. Oczywiście nie ma nic za darmo, sam proces GC obciąża dysk i dlatego uruchamiany jest w okresie gdy generowany jest do niego mniejszy ruch. Problemy zaczynają się gdy sam dysk jest utylizowany bardzo mocno i dodatkowo zaczyna zapełniać się jego pojemność. W takiej sytuacji kontroler często nie jest w stanie znaleźć pustych stron na zapisy i musi uruchamiać proces GC w trakcie pracy, co powoduje spowolnienie samego napędu.

Wear Leveling (WL):


Każda komórka z której składa się dysk SSD ma swoją "wytrzymałość", która określa ile razy może ona przejść cykl czyszczenia i zapisu. Ponieważ niektóre dane po zapisaniu prawie się nie zmieniają, natomiast inne modyfikowane są prawie non stop (np: plik stronicowania OSa) część komórek w dysku jest obciążona dużo bardziej i wielokrotnie szybciej niż pozostałe może osiągnąć swoją granicę "używalności". Aby uniknąć takiego przedwczesnego zużycia, kontroler stosuje różne mechanizmy aby równomiernie rozłożyć ruch do/z dysku. Nazywa się do Wear Levelingiem(WL) i zwykle polega na przeadresowywaniu komórek pamięci na dysku. Ponieważ zmieniają się adresy komórek więc nie ma ryzyka że ciągle zapisy tych samych danych będą trafiały w to samo miejsce nadmiernie je eksploatując.




Na tym kończę serię wpisów dotyczących technologii SSD i macierzy "solid state"  - zajęło mi to dużo więcej czasu niż początkowo zakładałem ale mocno doskwiera michroniczny brak czasu i nadmiar innych zajęć. Co będzie w następnych wpisach jeszcze nie wiem, może wrócę do tematu Clariionów, a może nie.

sobota, 2 czerwca 2012

Macierze "solid state" - demony prędkości (Część 2.2 - Firmy na rynku)

Przed nami kolejna część opisu rynku macierzy "solid state". Ostatnio skończyliśmy na Texas Memory System, teraz pora na opis reszty liczących się graczy.


Violin
http://www.violin-memory.com/

Firma Violin została zalożona w 2005 i skupia się na produkcji macierzy "solid-state". W Polsce produkty Violina sprzedaje, po "rebrandingu", HP, co sprawia że możliwości dostarczenia serwisu i wsparcia w Polsce są dużo większe niż dla innych producentów. Tak jak i każdy z pozostałych dostawców Violin ma pewne rozwiązania specyficzne dla siebie (często także chronione patentami) - warto wspomnieć chociażby o stosowanym przez Violina rozwiązaniu flash vRAID czyli odpowiednikiem zwykłej struktury RAID ale o funkcjonowaniu opartym o hardware, nie o oprogramowanie. vRAID sklada się z 4 modułów flash na dane + 1 na parzystość
Jeżeli chodzi o portfolio firmy Violin to można wyróżnić w nim trzy serie produktów:

6000 Flash Memory Array
W skład tej linii wchodzą dwa produkty 6616 i 6632. Pierwszy z nich jest wykonany w technologii SLC, obsługuje ok 1mln IOPSów i ok 10TB przestrzeni, model 6632 jest macierzą MLC, o dwukrotnie gorszych parametrach wydajnościowych natomiast większej (również 2 razy) pojemności.


3200 Flash Memory Array
Sztandarowy product firmy Violin Memory  - macierz o wielkości 3U mogąca zapewnić do 10TB przestrzeni z bardzo dobrymi parametrami wydajnościowymi.


3100 Flash Memory Array
Linia macierzy podobna do serii 3200 ale w przeciwieństwie do niej nie skupiająca się na maksymalnej wydajności ale “upakowaniu” danych. W obudowie o wielkości 3U można zapisać do 30TB danych.




Nimbus
http://www.nimbusdata.com/


Bardzo obiecująca firma na rynku "solid state" - do jej sukcesów należy na przykład sprzedaż 100TB przestrzeni na macierzach SSD dla amerykańskiego EBay-a. Jest to, na chwilę obecną, jedna z największych transakcji w tym obszarze. Co ciekawe, Nimbus od niedawna ma swojego partnera w Polsce i także na naszym rodzimym rynku może się pochwalić wdrożeniem swojego produktu. Firmą która współpracuje z Nimbusem i świadczy wsparcie oraz serwis dla jej produktów jest COMPAREX.

Macierze firmy Nimbus działają pod systemem operacyjnym (autorskim) o nazwie HALO. System ten zapewnia (lub będzie zapewniał w najbliższych realeasach) szereg funkcjonalności zarówno obecnych w produktach konkurencji (np:deduplikacja), jak i takie, które są standardem dla macierzy tradycyjnych ale nie występują w macierzach „solid state” (replikacja synchroniczna i asynchroniczna). Wszystkie te funkcjonalności nie są licencjonowane i dostępne do wykorzystania bez dodatkowych opłat.

Nimbus dostarcza dwa rodzaje rozwiązań nazwanych: S-Class i E-Class

E-Class (Enterprise) to rozwiązanie w pełni redundantne, posiadające dwa kontrolery i brak SPOFów.
S-Class (Standard) - posiada jedynie pojedynczy kontroler.

Do każdego z tych rozwiązań dokłada się następnie odpowiedniki półek dyskowych o pojemnościach do 10TB jedna. Maksymalna wielkość to 100TB w przypadku S-Class i 500TB dla E-Class



PureStorage
http://www.purestorage.com/

PureStorage to tzw start-up, czyli nowa firma z dużym potencjałem ale małymi możliwościami do zapewnienia wsparcia i nie rozbudowaną siecią partnerów/sprzedawców.
Macierzy PureStorage wykorzystują autorski system operacyjny: Purity Operating Envirnoment który zapewnie takie funkcjonalności jak globalna i działająca in-line deduplikacja wraz z kompresją. Dzięki temu dane zapisywane na macierzy zajmują od 5 do 20 razy mniej przestrzeni. Pozwala to na obniżenie kosztu jednostkowego do wartości ok 5$/GB
Obecnie firma mają w ofercie dwa rodzaje produktów:

FA-310
FA-320

Przy założeniu realistycznego współczynnika deduplikacja dla tzw: primary storage czyli 5:1 macierze te są w stanie przechować odpowiednio 50 i 100TB danych. Dyski w tych urządzaniach wykonane są w technologii MLC, ale system nimi zarządzający posiada mechanizmy wydłużające czas działania. W chwili obecnej macierze dostępne są jedynie na zasadzie „Early Access”, a dostarczenie i zapewnienie serwisu na terenie Polski jest praktycznie niemożliwe.



SolidFire
http://solidfire.com/

Kolejna nowa firma zajmująca się obszarem „solid-state arrays”. Podobnie jak Pure Storage jej produkty mają wbudowaną deduplikację, co sprawia, że efektywna pojemność jest o 5 do 20 razy większa niż rzeczywista ilość miejsca na dyskach. Produkty SolidFire są głównie przeznaczone do świadczenia usług w modelu „cloud storage” poprzez wsparcie dla dostępu obiektowego (protokół REST), który jest głównie wykorzystywany przy tego typu zastosowaniach. Innymi cechami macierzy SolidFire jest thin provisioning z wbudowaną opcją reklamacji (odzyskiwania) przestrzeni oraz mocno rozbudowane mechnizmy QoS (ustawienie max, min IOPSów oraz przepustowości per LUN itd…)

Pojedyńczy element (node) z którego zbudowane są rozwiązania SolidFire nosi nazwe SF3010 i ma wielkość 1U. Wspierane jest łączenie do 100nodów. Jedynym obsługiwanym w tej chwili interfesjem jest Eternet 10Gb/sec




Whiptail
http://whiptail.com/


Kolejny start-up, do niedawna firma miała w swojej ofercie tylko jeden produkt nazwany XLR8r i pozycjonowany jako rozwiązanie dla środowiski VDI-owych. Około 2 tygodnie temu ogłosiła jednak dużą zmianę i modyfikację swojego portfolio.
Obecnie Whiptail oferuje 2 produkty:

Accela  - następca XLR8r, mniejsza z dwóch propozycji Whiptail-a. Jest to moduł o wielkości 2U i pojemności do 12TB.
Invicta - "rozbudowana" wersja Acceli. Przede wszystkim jest to rozwiązanie skalowalne (scale-out) tak więc ma możliwość zbudowania dużo większego środowiska.

System na którym działa zarówno Accella jak i Invicta nosi nazwę: RaceRunner




Kaminaro
http://www.kaminario.com/

Kaminaro to firma dostarczająca produkty zarówno oparte na flash SSD jak i na kościach DRAM (podobnie jak TMS). Architektura i silnik napędzający macierze tego producenta został nazwany SPEAR (Scale-out Performance Storage Architecture), jak w samej nazwie jest zaznaczone przystosowany jest on dla rozwiązań mogących być mocno skalowane.

Kaminaro w tej chwili ma w ofercie 3 produkty różniące się od siebie rodzajem wykorzystanego nośnika:
  • Kaminaro K2-F ---> Model wyłącznie z modułami flash. Zalecany dla zastosowań w których występuje duża liczba odczytów.
  • Kaminaro K2-D ---> Model wyłącznie z modułami DRAM. Obsługuje mniejsze pojemności ale dostarcza większą wydajność oraz krótsze czasy odpowiedzi. Zastosowanie do głównie aplikacje generujące ogromne ilości zapisów.
  • Kaminaro K2-H ---> Model hybrydowy posiadający zarówno moduły DRAM jak i flash. Kaminaro poleca go do ruchu "mieszanego" zarówno z zapisami jak i odczytami.



GreenBytes
http://www.getgreenbytes.com/


Jeżeli chodzi o GreenBytes to firma ta ma w swojej ofercie jedną macierz typu "solid state".
Nosi ona nazwę Solidarity i jest urządzeniem wspierającym wyłącznie protokół iSCSI. Oczywiście, podobnie jak w pozostałych przypadkach system zarządzający daną macierzą musi mieć swoją "nietypową" nazwę i jest to GO OS (Globaly Optimized OS).

Z ciekawych spraw to macierz zapewnia bardzo wysoką dostępność, między innymi dzięki redundantnym kontrolerom oraz wspiera mechanizm wewnętrznej deduplikacji w trybie rzeczywistym.



EMC ( + XtremeIO)


Oprócz firm specjalizujących się w "solid-state" macierzach, także "wielcy" świata storage przyglądają się bardzo temu segmentowi i próbują zdobyć na nim swoje przyczółki. Pierwsza próba jaką wykonało EMC ciężko mi uznać za udaną. Firma ta doszła do wniosku, że nie ma się co przemęczać i budować nowej architektury, ale warto wykorzystać rozwiązanie już posiadane (w tym przypadku macierz VNX) i skonfigurować ją wykorzystując wyłącznie dyski SSD.
W ten sposób powstał VNX 5500F --> klasyczna macierz midrange zdolna do obsługi zarówno ruchu blokowego jak i plikowego ale wyposażona wyłącznie w napędy flashowe. Biorąc pod uwagę, że standardowe kontrolery nie są przystosowane do olbrzymiego ruchu generowanego przez SSD, a także nie wykorzystują specyfiki działania takich dysków (np: zupełnie inny mechanizm zapisywania, niż odczytywania) okazało się, że tego typu konstrukcje nie są zbyt atrakcyjne.

EMC poszło po rozum do głowy i rozpoczęło prace nad czymś co początkowo sprawiało wrażenie przekształcenia się w macierz "solid-state" z prawdziwego zdarzenia. Tym czymś były projekty Lighning i Thunder. Pierwszy z nich okazał się kartą flash instalowaną w serwerze, a drugi najprawdopodobniej finalnie będzie akceleratorem storage w sieci SAN (coś podobnego, ale nie całkiem będącego macierzą SSD). Więcej o tych dwóch projektach można znaleźć TUTAJ.
Kolejnym krokiem EMC było wykupienie firmy specjalizującej się w solid-state storage, a mianowicie XtremeIO (http://www.xtremio.com/). To daje już potężne zaplecze do budowy własnego rozwiązania (lub po prostu zaadoptowanie istniejącego w XIO) - EMC zdaje się podążać tą pierwszą drogą i na ostatnim EMC World 2012 ogłosiło powstanie projektu X (Project X), który wydaj się być niczym innym, jak macierzą "solid state" z prawdziwego zdarzenia.

Jak zwykle - pożyjemy,zobaczymy.



HP


Na zakończenie HP, które całkiem niedawno ogłosiło swój produkt "solid state"-owy. Niestety, podobnie jak w przypadku EMC, nie można powiedzieć, że mamy do czynienia z czymś nowym, a jedynie tradycyjną macierzą wyposażoną wyłącznie w dyski SSD. Urządzenie to nosi nazwę P4900, obsługuje wyłącznie interfejs iSCSI i startowo dostarcza 6,4TB przestrzeni.



środa, 2 maja 2012

Macierze "solid state" - demony prędkości (Część 2.1 - opis rozwiązania+TMS)


W poprzednim wpisie (Część 1) rozpocząłem temat macierzy "solid state" ale skupiłem się wyłącznie na opisaniu dysków SSD. Teraz przyszła kolej na macierze:

Macierze "Solid State":

Macierzami „Solid State” nazywamy rozwiązanie wykorzystujące tylko i wyłącznie dyski SSD. Macierze te dysponują o około klasę mniejszymi pojemnościami niż odpowiedniki z dyskami mechanicznymi, jednak deklasują je pod względem wydajności .
Potrzeba wykorzystania nośników odmiennych niż dyski mechaniczne jest związana z szybkim postępem technologii w innych obszarach takich jak moc procesorów czy przepustowości sieci.  Od roku 2000 wydajność tych "pozostałych" komponentów zwiększyła się od 15 do ponad 400 razy:
  • Procesor rok 2000 (Pentium 4 1,5Ghz) , rok 2012(Octal 2,6 Ghz) około 30 razy szybszy
  • Pamięć RAM rok 2000 (DDR1 PC-2100), rok 2012 (DDR3 PC3-17000) około 16 razy szybsze
  • Sieć rok 2000 (100Mb Ethernet), rok 2012 (40GbE) - szybsze 400 razy.
Niestety jeżeli popatrzymy z podobnej perspektywy na prędkości dysków twardych (tradycyjnych), to będzie to dość przygnębiający widok:
  • Dysk rok 2000 (15k RPM) , rok 2012 (15k RPM) - wzrost o 0%
Pozostające ciągle na tym samym poziomie wydajności mechaniczne dyski twarde przestają być nośnikiem mogącym zapewnić prawidłową wydajność systemu dyskowego i coraz częściej stają się wąskim gardłem wydajnościowym.
Obecnie wykorzystywane są różne rozwiązania niwelujące słabą wydajność podsystemów dyskowych takie jak: caching, automatyczny tierning czy skalowanie macierzy na wydajność (kupno dużej ilości nadmiarowych dysków), ale są to tylko pewne obejścia. Za rozwiązanie strukturalne dla najbardziej wymagających aplikacji powinno się uważać rezygnację z dysków mechanicznych i przejście całkowicie na dyski SSD oraz macierze „solid-state”.
Warto także zauważyć, że macierz "solid-state" to coś więcej niż tylko zwykła macierz, do której nie dodało się dysków tradycyjnych, a tylko SSD (taką konstrukcje ma np w swoim portfolio EMC: VNX5500-F).
Macierz "solid-state" w prawdziwym tego słowa znaczeniu to urządzenie od początku do końca zaprojektowane wyłącznie z myślą o dyskach SSD, z firmware-m zoptymalizowanym pod wymagania takich dysków.
Oczywistą sprawą jest, że macierze SSD są wielkokrotnie szybsze niż ich odpowiedniki z dyskami HDD, ale traci się na pojemności (choć pojawiają się już rozwiązania z deduplikacją w czasie rzeczywistym). Kolejną cechą, która odróżnia te dwa typy macierzy są dodatkowe możliwości zwiększające bezpieczeństwo - rozwiązania typu redundacja wszyskich komponentów (brak SPOFów), czy funkcjonalności związane z replikacją lokalną i zdalną są dużo bardziej dojrzałe w produktach tradycyjnych.

Na rynku istnieje w tej chwili kilka (lub kilkanaście) firm specjalizujących się w sektorze macierzy „solid state”. Dwie z nich: TMS i Violin są firmami o ugruntowanej pozycji i posiadające rozbudowaną sieć sprzedaży i partnerów także na terenie Polski. Pozostałe to tzw: Startup-y, zalożone w latach 2010 lub 2011, posiadające bardzo duży potencjał i innowacyjne rozwiąnia ale nie mogące zapewnić odpowiedniego wsparcia na terenie Polski. W tej chwili większość start-upów ma swoje centra w dolinie krzemowej.


Przyjrzyjmy się poszczegółnym firmom i ich ofertą:

TMS (Texas Memory System):
http://www.ramsan.com/


Jedna z dwóch "dużych" firm nakierowanych na macierze "solid state". Założona w 1978r, pierwsza macierz oparta na flashach (SAM 300) została wypuszczona na rynek w 1990r.
Macierze TMSa noszą nazwę RamSAN i można podzielić je na dwie linie:

Macierze oparte na dyskach SSD flash:
Czyli "tradycyjne" modele macierzy "solid-state" (choć tradycyjne dla tej kategorii produktów, brzmi nieco śmiesznie). W tej klasie dostępne obecnie są następujące rozwiązania:

Ramsan-810
Macierz oparta na dyskach SSD wykonanych w technologii eMLC (więcej o podziale dysków w poprzednim wpisie). Nie mamy wieć tutaj do czynienia z bardzo drogimi dyskami SLC, ale nie wykorzystuje się również "ekonomicznej" klasy MLC. Sama macierz ma wielkość 1U i dostarcza do 10TB przestrzeni. Dostępne interfejsy to FC i Infinband.

Ramsan-710
Podobnie jak 810 macierz wielkości 1U o identycznych dostępnych interfejsach: FC i Infiniband. Główna różnica to wykorzystanie dysków SLC, czyli szybszych, wytrzymalszych ale także o mniejszych pojemnościach, z tego powodu maksymalna pojemność pojedyńczej macierzy to 5TB

Ramsan-640
Nieco większy model macierzy opartej na SSD - wysokość 4U, w całości zbudowana na "enterprise"-owych pamieciach SLC. Sumarycznie może dostarczyć 500.000IOPS i to według specyfikacji producenta zarówno w zapisie jak i odczycie. Przestrzeń jedynie 8TB, no ale nie dla dużego capacity kupuje się macierze "solid state". RamSan-640 obsługuje także technologię FlashBrick dzięki której składające się na nią moduły (2TB każdy) mogą być wymieniane bez utraty znajdujących się na nich danych pomiędzy macierzami.

Ramsan-630
Macierz o wielkości 3U, pamięciach SLC i pojamności 10TB. Widać od razu, że jest to "upgradowany" jeżeli chodzi o gęstość danych model 640. Prawdziwym zaskoczeniem jest jednak jego wydajność - 1.000.000IOPS (czyt: MILION IOPS). Ile w tym marketingu nie wiem - niestety nie miałem okazji sprawdzić.

Ramsan-6300
A to już można powiedzieć powtarzając za skeczem wykonywanym przez popularny kabaret "chłyt małketingowy". Ta macierz to nic innego jak szafa wielkości 42U wyładowana od dołu do góry RamSan-ami-630 (zmieściło się ich 14).
Dzięki temu mamy urzadzenie które jest w stanie wygenerować 14.000.000IOPSów, zapewnia przepustowość 140GB/s i dostarcza 140TB przestrzeni.
Fajne wartości, można się chwalić w folderach i na prezentacjach :D

Ramsan-720
Jeżeli chodzi o ten model to przede wszyskim skupiono się tutaj na dostępności i zapewnieniu ciągłości działania. Pozostałe modele mają wbudowaną pewną redundancje (zasilanie, układ chłodzący) ale same kontrolery były SPOFem. W Ramsan-720 ilość punktów których uszkodzenie spowodowało by zatrzymanie macierzy zostało ograniczone do minimum.
Jeżeli chodzi o szczegóły techniczne to jest to macierz o wysokości 1U i oparta na pamięciach SLC, jak na tak małe wymiary bardzo imponująca jest pojemność - 12TB

Ramsan-820
Rozwiązanie pod względem architektury analogiczne do RamSan-720 z poświęceniem bardzo dużej uwagi kwestią ciągłości działania. Różnica polega na rodzaju wykorzystanych pamięci SSD, zamiast SLC użyto eMLC, które (kosztem trwałości i szybkości) zapewnia większą pojemność.
1U macierzy RamSan-820 to do 24TB przestrzeni.

Macierze oparte na dyskach SSD DRAM:


Superliga jeżeli chodzi o macierze "solid-state", tutaj zamiast pamięci flash do przechowywania danych wykorzystuje się kości DRAM - czasy odpowiedzi są "obłędne", nawet kilka razy mniejsze niż przy "zwykłych" macierzach SSD. Oczywiście ma to swoją cenę, po pierwsze tego rodzaju pamięć jest nieodporna na zanik zasilania, potrzeba więc stosować dodatkowe zabezpieczenia, po drugie pojemności tych urządzeń liczy się raczej w GB niż TB.
Próby liczenia kosztu jednostkowego dla tych urządzeń przyjmując dotychczasowe, najpopularniejsze metryki czyli TB/$ dają przeogromne ceny - wiadomo jednak, że przy tych urządzeniach nie to jest najważniejsze.

TMS oferuje następujące produkty z tej serii:

Ramsan-420
Zbudowana na kościach DDR2 macierz, zapewniająca 256GB przestrzeni. Wydajność to około 600.000IOPS, natomiast czasy odpowiedzi są poniżej 15milisekund (mili, nie mikro!).
Jak na zatrważającą przestrzeń ćwierci TB, macierz zajmuje "zaledwie" 4U - maleństwo :D


Ramsan-440
Model podobny do RamSan-420 ale dzięki lepszemu upakowaniu danych mieści 512GB. Pozostałe parametry bez zmian.


Ramsan-300
Mniejsza i bardziej ekonomiczna wersja od swoich większych braci z serii 4xx. Wielkościowo zmiana jest kosmetyczna (z 4 na 3U) ale pojemność spadała znacznie - do 32GB a ilość obsługiwanych na sekundę operacji wejścia/wyjścia do 200.000.
Jeżeli ktoś chce rozpocząć pracę z macierzami oprartymi na RAMie, a wystarczy mu 32GB przestrzeni to takie rozwiązanie jest pewnie bardzo dobre na start.


Nie chcę tego wpisu rozciągać dalej, a w sumie omówiliśmy dopiero pierwszego z kilku producentów oferujących macierze "solid-state" - dlatego też reszta będzie opisana następnym razem.

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