Dziś porozmawiamy o tym, jak lepiej przechowywać dane w świecie, gdzie sieci piątej generacji, skanery genomów i autonomiczne pojazdy generują więcej danych dziennie niż całe ludzkie społeczeństwo w okresie przed rewolucją przemysłową.

Nasz świat generuje coraz więcej informacji. Część z nich jest ulotna i zanika tak szybko, jak szybko jest zbierana. Inna musi być przechowywana dłużej, a jeszcze inna jest zaprojektowana 'na wieki' — przynajmniej tak nam się wydaje z perspektywy teraźniejszości. Strumienie informacji osiadają w centrach danych z taką prędkością, że każde nowe podejście, każda technologia mająca na celu zaspokojenie tego niekończącego się 'popytu', szybko stają się przestarzałe.

40 lat rozwoju rozproszonych systemów pamięci masowej.
Pierwsze sieciowe urządzenia do przechowywania w formie, którą znamy, pojawiły się w latach 80-tych. Wielu z was miało do czynienia z NFS (Network File System), AFS (Andrew File System) lub Coda. Po dekadzie moda i technologie się zmieniły, a rozproszone systemy plików ustąpiły miejsca klastrowym systemom pamięci masowej opartym na GPFS (General Parallel File System), CFS (Clustered File Systems) i StorNext. Jako podstawę wykorzystywane były blokowe systemy przechowywania klasycznej architektury, na których za pomocą warstwy programowej tworzono jednolity system plików. Te i podobne rozwiązania wciąż są stosowane, zajmują swoją niszę i są całkiem poszukiwane.
Na przełomie tysiącleci paradygma rozproszonych systemów pamięci trochę się zmieniła, a na czołowe pozycje wysunęły się systemy z architekturą SN (Shared-Nothing). Nastąpił przeskok od klastrowego przechowywania do przechowywania na oddzielnych węzłach, którymi z reguły były klasyczne serwery zapewniające niezawodne przechowywanie oprogramowania; w oparciu o takie zasady zbudowane są, na przykład, HDFS (Hadoop Distributed File System) i GFS (Global File System).
W kierunku 2010 roku koncepty leżące u podstaw rozproszonych systemów pamięci coraz częściej zaczęły znajdować odzwierciedlenie w pełnoprawnych produktach komercyjnych, takich jak VMware vSAN, Dell EMC Isilon i nasza . Za wspomnianymi platformami stoją już nie tylko społeczności entuzjastów, ale konkretni dostawcy, którzy odpowiadają za funkcjonalność, wsparcie, serwisowanie produktu oraz gwarantują jego dalszy rozwój. Takie rozwiązania są najbardziej poszukiwane w kilku dziedzinach.

Operatorzy telekomunikacyjni
Można powiedzieć, że operatorzy telekomunikacyjni są jednymi z najstarszych użytkowników rozproszonych systemów przechowywania. Na schemacie widać, które grupy aplikacji generują największą ilość danych. OSS (Systemy Wsparcia Operacyjnego), MSS (Systemy Wsparcia Zarządzania) oraz BSS (Systemy Wsparcia Biznesowego) stanowią trzy wzajemnie uzupełniające się warstwy programowe, potrzebne do świadczenia usług dla abonentów, raportowania finansowego dla dostawców oraz wsparcia operacyjnego dla inżynierów operatorów.
Często dane z tych warstw są ze sobą mocno pomieszane, a rozproszona przechowalnia jest wykorzystywana do uniknięcia gromadzenia niepotrzebnych kopii, gromadząc całą informację wpływającą z działającej sieci. Przechowalnie łączą się w ogólną pulę, do której dostęp mają wszystkie usługi.
Nasze wyliczenia pokazują, że przejście z klasycznych systemów przechowywania danych do rozproszonych systemów blokowych pozwala zaoszczędzić do 70% budżetu wyłącznie dzięki rezygnacji z dedykowanych systemów klasy hi-end i wykorzystaniu zwykłych serwerów klasycznej architektury (zwykle x86), działających w połączeniu ze specjalistycznym oprogramowaniem. Operatorzy komórkowi już od dłuższego czasu zaczęli nabywać takie rozwiązania w znaczących ilościach. W szczególności, rosyjskie firmy operatorskie korzystają z takich produktów od Huawei od ponad sześciu lat.
Tak, część zadań nie może być wykonana za pomocą rozproszonych systemów. Na przykład, gdy wymagania dotyczące wydajności lub zgodności ze starszymi protokołami są wyższe. Ale nie mniej niż 70% danych, które przetwarza operator, można z powodzeniem ulokować w rozproszonej puli.

Sektor bankowy
W każdym banku współistnieje wiele różnorodnych systemów IT, począwszy od procesingu, a skończywszy na zautomatyzowanym systemie bankowym. Ta infrastruktura również działa z ogromnym wolumenem informacji, przy czym większość zadań nie wymaga zwiększonej wydajności i niezawodności systemów przechowywania, na przykład w przypadku rozwoju, testowania, automatyzacji procesów biurowych itp. Tutaj zastosowanie klasycznych systemów przechowywania jest możliwe, ale z roku na rok staje się coraz mniej korzystne. Ponadto w tym przypadku brakuje elastyczności w wydatkowaniu zasobów systemów przechowywania, których wydajność oblicza się na podstawie obciążenia szczytowego.
Podczas korzystania z rozproszonych systemów przechowywania ich węzły, będące w rzeczywistości zwykłymi serwerami, mogą być w każdej chwili przekształcone, na przykład w farmę serwerów i używane jako platforma obliczeniowa.

Jeziora danych
Na powyższym schemacie przedstawiono listę typowych odbiorców usług . Mogą to być usługi e-administracji (na przykład "Głosowanie Interaktywne"), które przeszły cyfryzację przedsiębiorstw, struktury finansowe itp. Wszyscy oni muszą pracować z dużymi ilościami zróżnicowanych informacji.
Eksploatacja klasycznych systemów przechowywania danych do rozwiązywania takich zadań jest nieefektywna, ponieważ wymaga zarówno wysokowydajnego dostępu do baz danych blokowych, jak i zwykłego dostępu do bibliotek zeskanowanych dokumentów przechowywanych w formie obiektów. Można tu również dodać, na przykład, system zamówień przez portal internetowy. Aby to wszystko zrealizować na platformie klasycznego systemu przechowywania danych, potrzebny będzie duży zestaw sprzętu do różnych zadań. Jedno poziome uniwersalne systemy przechowywania mogą bez problemu pokrywać wszystkie wcześniej wymienione zadania: wystarczy stworzyć w nim kilka pul z różnymi charakterystykami przechowywania.

Generatory nowej informacji
Ilość danych przechowywanych na świecie rośnie o około 30% rocznie. To dobre wieści dla dostawców systemów przechowywania, ale co jest i będzie głównym źródłem tych danych?
Dziesięć lat temu takimi generatorami stały się media społecznościowe, co wymagało stworzenia dużej liczby nowych algorytmów, rozwiązań sprzętowych itp. Obecnie wyróżnia się trzy główne czynniki napędzające wzrost ilości przechowywanych danych. Pierwszym jest chmura obliczeniowa. W tej chwili około 70% firm w mniejszym lub większym stopniu wykorzystuje usługi chmurowe. Mogą to być systemy poczty elektronicznej, kopie zapasowe i inne zwirtualizowane byty.
Drugim czynnikiem napędzającym stają się sieci piątej generacji. To nowe prędkości i nowe ilości przesyłanych danych. Zgodnie z naszymi prognozami, szerokie rozpowszechnienie 5G doprowadzi do spadku popytu na karty pamięci flash. Niezależnie od tego, ile pamięci będzie w telefonie, zawsze się ona kończy, a przy dostępności w urządzeniu kanału 100-megabajtowego nie ma potrzeby przechowywania zdjęć lokalnie.
Do trzeciej grupy przyczyn, dla których rośnie zapotrzebowanie na systemy przechowywania, należą dynamiczny rozwój sztucznej inteligencji, przejście na analitykę wielkich danych oraz trend na powszechną automatyzację wszystkiego, co tylko możliwe.
Cechą „nowego ruchu” jest jego . Musimy przechowywać te dane, nie definiując ich formatu. Format ten jest potrzebny tylko przy późniejszym odczycie. Na przykład system bankowy oceny zdolności kredytowej do ustalenia dostępnego rozmiaru kredytu będzie analizował zamieszczone przez ciebie zdjęcia w mediach społecznościowych, określając, jak często bywasz nad morzem i w restauracjach, a jednocześnie badał dostępne mu wyciągi z twoich dokumentów medycznych. Te dane, z jednej strony, są wszechstronne, a z drugiej strony — pozbawione jednorodności.

Ocean niestrukturalnych danych
Jakie problemy wiążą się z pojawieniem się „nowych danych”? Najważniejszą z nich jest oczywiście sam rozmiar informacji oraz czas przechowywania. Sam nowoczesny autonomiczny samochód bez kierowcy generuje codziennie do 60 TB danych, które pochodzą ze wszystkich jego czujników i mechanizmów. Aby opracować nowe algorytmy ruchu, te informacje muszą być przetwarzane w ciągu tych samych 24 godzin, w przeciwnym razie zaczynają się gromadzić. Muszą być przechowywane przez bardzo długi czas — dziesiątki lat. Tylko wtedy w przyszłości będzie można wyciągać wnioski na podstawie dużych analiz statystycznych.
Jedno urządzenie do dekodowania sekwencji genetycznych generuje około 6 TB dziennie. A dane zebrane dzięki niemu w ogóle nie zakładają usuwania, to znaczy hipotetycznie powinny być przechowywane wiecznie.
Wreszcie, są też sieci piątej generacji. Oprócz samej przekazywanej informacji, taka sieć jest także ogromnym generatorem danych: dzienników działań, zapisów rozmów, wyników interakcji międzymaszynowych itd.
Wszystko to wymaga wypracowania nowych podejść i algorytmów przechowywania oraz przetwarzania informacji. I takie podejścia już się pojawiają.

Technologie nowej epoki
Można wyróżnić trzy grupy rozwiązań, które mają na celu sprostanie nowym wymaganiom dla systemów przechowywania informacji: wdrożenie sztucznej inteligencji, techniczna ewolucja nośników danych oraz innowacje w zakresie architektury systemowej. Zacznijmy od AI.

W nowych rozwiązaniach Huawei sztuczna inteligencja jest wykorzystywana już na poziomie samego magazynu, który jest wyposażony w procesor AI, pozwalający systemowi samodzielnie analizować swoje stany i przewidywać awarie. Jeśli macierz dyskowa zostanie podłączona do chmurowej usługi, która posiada znaczne zdolności obliczeniowe, sztuczna inteligencja będzie mogła przetworzyć więcej informacji i zwiększyć dokładność swoich hipotez.
Oprócz awarii, taka AI potrafi prognozować przyszłe szczyty obciążenia i czas, który pozostał do wyczerpania pojemności. Pozwoli to na optymalizację wydajności i skalowanie systemu jeszcze przed wystąpieniem jakichkolwiek niepożądanych zdarzeń.

Teraz przejdźmy do ewolucji nośników danych. Pierwsze pamięci flash były realizowane w technologii SLC (Single-Level Cell). Oparte na tej technologii urządzenia były szybkie, niezawodne i stabilne, ale miały małą pojemność i były bardzo drogie. Wzrost objętości i obniżenie ceny udało się osiągnąć dzięki pewnym technicznym kompromisom, przez które prędkość, niezawodność i żywotność nośników uległy skróceniu. Niemniej jednak trend nie wpłynął na same macierze dyskowe, które dzięki różnym architektonicznym sztuczkom stały się ogólnie bardziej wydajne i bardziej niezawodne.
Ale dlaczego potrzebne były macierze dyskowe klasy All-Flash? Czy nie wystarczyło po prostu wymienić w już eksploatowanym systemie stare HDD na nowe SSD tego samego formatu? Było to konieczne, aby efektywnie wykorzystać wszystkie zasoby nowych dysków półprzewodnikowych, co w starych systemach było po prostu niemożliwe.
Firma Huawei, na przykład, opracowała w tym celu szereg technologii, z których jedną z nich jest , która umożliwiła maksymalne zoptymalizowanie interakcji „dysk – kontroler”.
Inteligentna identyfikacja pozwoliła rozłożyć dane na kilka strumieni i poradzić sobie z szeregiem niepożądanych zjawisk, takich jak (wzmocnienie zapisu). Jednocześnie nowe algorytmy odzyskiwania, w szczególności , zwiększyły szybkość odbudowy, skracając jej czas do zupełnie nieznacznych wartości.
Awarie, przepełnienia, „zbieranie śmieci” — te czynniki również nie mają już wpływu na wydajność systemu pamięci masowej dzięki specjalnym usprawnieniom kontrolerów.

A jeszcze blokowe magazyny danych przygotowują się na spotkanie . Przypomnijmy, że klasyczny schemat organizacji dostępu do danych działał w ten sposób: procesor zwracał się do kontrolera RAID przez magistralę PCI Express. Ten z kolei wchodził w interakcję z mechanicznymi dyskami przez SCSI lub SAS. Zastosowanie NVMe w backendzie znacznie przyspieszyło cały proces, jednak niosło ze sobą jeden minus: nośniki musiały mieć bezpośrednie połączenie z procesorem, aby zapewnić mu bezpośredni dostęp do pamięci.
Następną fazą rozwoju technologii, którą obserwujemy obecnie, jest zastosowanie NVMe-oF (NVMe over Fabrics). Jeśli chodzi o technologie blokowe Huawei, już teraz wspierają FC-NVMe (NVMe over Fibre Channel), a NVMe over RoCE (RDMA over Converged Ethernet) jest na horyzoncie. Modele testowe są w pełni funkcjonalne, a do ich oficjalnej prezentacji pozostało kilka miesięcy. Zauważmy, że wszystko to pojawi się także w rozproszonych systemach, gdzie "Ethernet bez strat" będzie bardzo pożądany.

Dodatkowym sposobem optymalizacji pracy szczególnie rozproszonych magazynów stał się całkowity brak lustrzenia danych. Rozwiązania Huaweia nie wykorzystują już n kopii, jak w tradycyjnym RAID 1, i w pełni przechodzą na mechanizm (kodowanie zera). Specjalny pakiet matematyczny z określoną częstotliwością oblicza bloki kontrolne, które pozwalają na przywrócenie danych pośrednich w przypadku ich utraty.
Mechanizmy deduplikacji i kompresji stają się obowiązkowe. Jeśli w klasycznych SŁD jesteśmy ograniczeni liczbą zainstalowanych w kontrolerach procesorów, to w rozproszonych systemach pamięci masowej o horyzontalnej skalowalności każdy węzeł zawiera wszystko, co potrzebne: dyski, pamięć, procesory i interkonekt. Tych zasobów wystarcza, aby deduplikacja i kompresja miały minimalny wpływ na wydajność.
I o sprzętowych metodach optymalizacji. Tutaj obciążenie centralnych procesorów udało się zmniejszyć za pomocą dodatkowych dedykowanych układów scalonych (lub dedykowanych bloków w samym procesorze), pełniących rolę (TCP/IP Offload Engine) lub biorących na siebie zadania matematyczne EC, deduplikacji i kompresji.

Nowe podejścia do przechowywania danych zrealizowały się w dzezagregerowanej (rozproszonej) architekturze. W systemach centralizowanego przechowywania znajduje się fabryka serwerów, podłączona przez Fibre Channel do z dużą liczbą macierzy. Wadami tego podejścia są trudności ze skalowaniem i zapewnieniem gwarantowanego poziomu usług (pod względem wydajności lub opóźnień). Systemy hiperłączne wykorzystują te same hosty — zarówno do przechowywania, jak i do przetwarzania informacji. Daje to praktycznie nieograniczone możliwości skalowania, ale wiąże się z wysokimi kosztami utrzymania integralności danych.
W przeciwieństwie do obu powyższych, dzezagregerowana architektura zakłada podział systemu na fabrykę obliczeniową i poziomą system przechowywania. Zapewnia to zalety obu architektur i pozwala praktycznie nieograniczenie skalować tylko ten element, którego wydajność jest niewystarczająca.

Od integracji do konwergencji
Klasycznym problemem, którego aktualność rosła przez ostatnie 15 lat, jest potrzeba jednoczesnego zapewnienia blokowego przechowywania, dostępu plikowego, dostępu do obiektów, pracy farmy dla dużych danych itd. Kropką nad 'i' może być na przykład system backupowy na taśmę magnetyczną.
Na pierwszym etapie udało się ujednolicić tylko zarządzanie tymi usługami. Różnorodne systemy przechowywania danych zamykały się na jakieś specjalistyczne oprogramowanie, za pomocą którego administrator rozdzielał zasoby z dostępnych pul. Ale ponieważ sprzętowo te pule były różne, migracja obciążenia między nimi była niemożliwa. Na wyższym poziomie integracji połączenie następowało na poziomie bramy. W przypadku istnienia ogólnego dostępu do plików można było go udostępniać przez różne protokoły.
Najdoskonalsza z dostępnych nam obecnie metod konwergencji przewiduje stworzenie uniwersalnego systemu hybrydowego. Taki, jakim powinien stać się nasz . Uniwersalny dostęp wykorzystuje te same zasoby sprzętowe, logicznie podzielone na różne pule, ale dopuszczające migrację obciążenia. Wszystko to można zrealizować za pomocą jednego panelu sterowania. W ten sposób udało nam się zrealizować koncepcję „jedno centrum danych — jedna macierz dyskowa”.

Koszt przechowywania informacji obecnie określa wiele rozwiązań architektonicznych. I choć można go śmiało postawić w centrum uwagi, dzisiaj dyskutujemy o „żywym” przechowywaniu z aktywnym dostępem, dlatego też wydajność również musi być brana pod uwagę. Kolejną ważną cechą przyszłych rozproszonych systemów jest unifikacja. Nikt nie chce mieć kilku odrębnych systemów, zarządzanych z różnych konsoli. Wszystkie te cechy znalazły odzwierciedlenie w nowej serii produktów Huawei. .
Masowa macierz dyskowa nowej generacji
OceanStor Pacific spełnia wymagania dotyczące niezawodności na poziomie „sześć dziewiątek” (99,9999%) i może być wykorzystywany do tworzenia centrów danych klasy HyperMetro. Przy odległości między dwoma centrum danych do 100 km systemy wykazują dodatkowe opóźnienie na poziomie 2 ms, co pozwala na budowanie na ich podstawie dowolnych rozwiązań odpornych na katastrofy, w tym z serwerami quorum.

Produkty nowej serii wykazują uniwersalność pod kątem protokołów. OceanStor 100D już teraz obsługuje dostęp blokowy, dostęp obiektowy oraz dostęp Hadoop. W najbliższym czasie zostanie również wdrożony dostęp plikowy. Nie ma potrzeby przechowywania kilku kopii danych, jeśli można je udostępniać przez różne protokoły.

Może się wydawać, jakie znaczenie ma koncepcja „sieci bez utraty” dla macierzy dyskowych? Chodzi o to, że rozproszone systemy przechowywania danych są budowane w oparciu o szybką sieć, wspierającą odpowiednie algorytmy i mechanizm RoCE. Dodatkowo zwiększenie prędkości sieci i zmniejszenie opóźnień wspomaga wspierany przez nasze przełączniki system sztucznej inteligencji. . Zysk wydajności macierzy dyskowej przy aktywacji AI Fabric może osiągać 20%.

Czym zatem jest nowy węzeł rozproszonej macierzy dyskowej OceanStor Pacific? Rozwiązanie w formacie 5U obejmuje 120 nośników i może zastąpić trzy klasyczne węzły, co daje ponad dwukrotną oszczędność miejsca w szafie. Dzięki rezygnacji z przechowywania kopii, wydajność nośników znacznie wzrasta (do +92%).
Przyzwyczailiśmy się, że programowo definiowany system przechowywania danych (SDS) to specjalne oprogramowanie instalowane na klasycznym serwerze. Teraz jednak, aby osiągnąć optymalne parametry, to architektoniczne rozwiązanie wymaga również specjalnych węzłów. W jego skład wchodzą dwa serwery oparte na procesorach ARM, które zarządzają macierzą dysków twardych o średnicy trzech cali.

Te serwery są mało odpowiednie dla rozwiązań hiperkonwergentnych. Po pierwsze, dostępnych jest zbyt mało aplikacji dla ARM, a po drugie, trudno jest utrzymać równowagę obciążenia. Proponujemy przejście do oddzielnego przechowywania: klaster obliczeniowy, reprezentowany przez klasyczne lub rack-serwery, działa osobno, ale łączy się z węzłami przechowywania OceanStor Pacific, które również realizują swoje bezpośrednie zadania. I to się sprawdza.
Dla przykładu weźmy klasyczne rozwiązanie do przechowywania danych wielkiej skali z systemem hiperkonwergentnym, zajmujące 15 szaf serwerowych. Jeśli rozłożymy obciążenie między oddzielnymi serwerami obliczeniowymi a węzłami SDS OceanStor Pacific, oddzielając je od siebie, liczba potrzebnych szaf zmniejszy się o połowę! To obniża koszty eksploatacji centrum danych i zmniejsza całkowity koszt posiadania. W świecie, w którym objętość przechowywanych informacji rośnie o 30% rocznie, takich korzyści się nie marnuje.
***
Więcej informacji o rozwiązaniach Huawei i scenariuszach ich zastosowania można uzyskać na naszej lub kontaktując się bezpośrednio z przedstawicielami firmy.
Źródło: habr.com
