Składowanie danych – level advanced

Wirtualizacja i konsolidacja obciążeń w firmowym środowisku IT stawia wysokie wymagania co do wydajności macierzy dyskowych. Rewolucję przyniosły pamięci SSD i nowe podejście do konstrukcji kontrolerów.

Gdy w IT obowiązywało podejście silosowe, macierze dyskowe były wykorzystywane osobno dla każdej aplikacji, w serwerowni pracowało wiele różnych rozwiązań, z których każde obsługiwano i strojono osobno. Wirtualizacja wprowadziła wiele uproszczeń, gdyż obrazy maszyn od różnych aplikacji znajdują się w jednym miejscu, same maszyny są przenoszone między hostami zależnie od obciążenia, a serwerami i aplikacjami zarządza się o wiele prościej niż w środowisku fizycznym. Stary model składowania danych w środowisku wirtualizowanym raczej nie podoła zadaniu, gdyż grupa aplikacji o różnej charakterystyce obciążenia wejścia/wyjścia stawia niezwykle wysokie wymagania odnośnie do wydajności i pojemności macierzy dyskowych. Dotychczas ręcznie strojono macierze dyskowe pod kątem wybranego obciążenia, obecnie niemal wszyscy producenci oferują automatyczne strojenie wydajnościowe. Pojawia się jednak problem związany z kumulacją obciążeń od różnych aplikacji.

W gąszczu aplikacji

Firmowe aplikacje charakteryzują się różnym rozkładem maksimum obciążenia w cyklu miesięcznym. W firmie pracują systemy, które wykazują się silnym maksimum co miesiąc, ale także takie, które są mocno obciążone na koniec każdego kwartału lub pod koniec roku. Obciążenie również może się różnić – inaczej pracują systemy transakcyjne, które ciągle prowadzą zapis i odczyt, a inaczej hurtownie danych, w których proces zasilania obfituje w zapis, a potem większość silnie obciążających operacji jest związanych z odczytem i przetwarzaniem pobranych danych.

Zobacz również:

Ponieważ wszystkie aplikacje w klastrze wirtualizacyjnym pracują przy wykorzystaniu tej samej infrastruktury składowania danych, na macierzy dyskowej te obciążenia się kumulują. Wynikiem są trudno przewidywalne zmiany obciążenia, do których nie da się dostroić macierzy ręcznie. Zmienia się nie tylko proporcja zapis/odczyt, ale także obszar bloków ciągle odczytywanych i zapisywanych. Przy takim obciążeniu niezbędne są narzędzia automatyzujące przenoszenie danych między poszczególnymi warstwami storage'u (autotiering) oraz wyzyskujące szybkość pamięci półprzewodnikowych. Jest to tym trudniejsze w realizacji, im aplikacji jest więcej, a obciążenie bardziej zróżnicowane. W dobie silnej konsolidacji najważniejszym problemem systemów storage nie jest zapewnienie pojemności, ale wydajności wejścia/wyjścia.

Nowe macierze obsłużą gorące dane

Statystyka danych w firmach jednoznacznie wskazuje, że spośród ogółu wszystkich informacji składowanych w systemach IT zaledwie kilka procent (ok. 5%) jest często przetwarzanych, pozostałe charakteryzują się niższym prawdopodobieństwem dostępu. Z badań prezentowanych przez EMC wynika, że aż 80% operacji wejścia/wyjścia można obsłużyć przez niewielką pulę pamięci półprzewodnikowej, jeśli tylko macierz ma mechanizm automatycznie przenoszący używane bloki między modułami SSD a zasobami na dyskach mechanicznych. Mechanizm automatycznego tieringu sprawdza się w praktyce, ale większość konstrukcji macierzy została jedynie przystosowana do korzystania z bufora SSD, a całość oprogramowania nadal pochodzi z epoki dysków mechanicznych, które mogły obsłużyć około 150–180 operacji wejścia/wyjścia na sekundę, a zatem należało je organizować w pule, by uzyskać oczekiwaną wydajność. Nadal jednak logika wielu macierzy była optymalizowana głównie pod kątem dysków mechanicznych, wprowadzając jedynie szybki bufor do obsługi „gorących” bloków danych.

„Ciągły spadek cen pamięci półprzewodnikowych sprawia, że koszt pamięci MLC liczony za 1GB zbliża się do tego, który charakteryzował dyski mechaniczne o dużej wydajności jeszcze 5 lat temu. Nasze macierze z serii VNX zostały zaprojektowane od zera pod kątem wykorzystania nowych procesorów x86 i pamięci Flash. Zostały także dostosowane pod kątem wirtualizacji” – mówi David Goulden, prezes i CEO firmy EMC.

Macierze te można skonfigurować wyłącznie z pamięcią flash albo zastosować pulę dysków mechanicznych do przechowywania nieaktywnych danych. W ten sposób można składować do 6 PB.

Milion IOPS z wielu rdzeni

Specjaliści z firmy EMC potrafią uzyskać wydajność rzędu 43 tys. IOPS z jednego rdzenia i twierdzą, że kluczem do dalszego wzrostu wydajności jest zrównoleglenie operacji. Wtedy kontroler skaluje się prawie liniowo (przyrost osiąga 96% wydajności rdzenia) i przy 32 rdzeniach osiąga 1 mln IOPS.

Niezbędne są przy tym wydajne połączenia między procesorami (w modelowej macierzy pracuje magistrala 40x PCI Express trzeciej generacji), a zadania muszą być równomiernie rozłożone między rdzeniami. Początkowo każdy z rdzeni obsługiwał wybraną część aktywności kontrolera: RAID, wejście/wyjście, pamięć podręczna DRAM, obsługę autotieringu, usługi zarządzania i udostępnianie plików. Ponieważ każde z zadań wymaga innej mocy obliczeniowej, taki statyczny podział zadań między rdzenie sprawia, że część (nawet 50%) mocy wielordzeniowych procesorów nie jest wykorzystywana. Odejście od statycznego podziału zadań na rdzenie umożliwia dalszy wzrost wydajności kontrolerów, dzięki czemu można osiągnąć porównywalną wydajność za pomocą mniejszej liczby urządzeń.


TOP 200