OneFS: Czym jest kompresja danych w ISILON
Summary: Wyjaśniono kompresję danych w klastrach zawierających pule węzłów F810. Dotyczy to OneFS 8.1.3 lub OneFS 8.2.1 i nowszych.
Instructions
Węzły Isilon F810 umożliwiają wykonywanie wbudowanej kompresji danych w klastrze Isilon. OneFS obsługuje wbudowaną kompresję danych tylko w pulach węzłów Isilon F810. Węzły F810 zawierają karty interfejsu sieciowego (NIC), które kompresują i dekompresują dane odbierane przez węzeł. Kompresja i dekompresja sprzętowa jest wykonywana równolegle na interfejsach Ethernet 40 Gb węzłów F810, gdy klienci odczytują i zapisują dane w klastrze. Ten rozproszony model interfejsu umożliwia liniowe skalowanie kompresji w puli węzłów F810 All-Flash w miarę rozrastania się klastra Isilon i dodawania kolejnych węzłów F810.
Wbudowaną kompresję danych można włączyć w klastrze, który ma następujące funkcje:
- Pula węzłów F810
- Sieć zaplecza Ethernet 40 Gb
- OneFS 8.1.3 lub OneFS 8.2.1 lub nowsze
Klastry
mieszaneW klastrze mieszanym zawierającym typy węzłów inne niż F810 pliki są przechowywane tylko w postaci skompresowanej w pulach węzłów F810. Dane zapisane lub warstwowe w pulach pamięci masowej innych typów węzłów są niekompresowane podczas przenoszenia między pulami.
Ogólnie rzecz biorąc, korzyści płynące z nowej funkcji kompresji Isilon obejmują:
- Prostota: Brak konfiguracji, domyślnie włączona kompresja ciągła eliminuje obciążenie związane z zarządzaniem.
- Sprawność: Dzięki zastosowaniu wbudowanego odciążania sprzętowego system Isilon minimalizuje wpływ na wydajność, jednocześnie maksymalizując efektywność pamięci masowej.
- Przezroczystość: Kompresja jest natywnie zintegrowana z systemem plików OneFS, dzięki czemu jest przezroczysta dla aplikacji i przepływów pracy.
- Harmonia: Współdziała z innymi narzędziami zwiększającymi wydajność pamięci masowej Isilon.
Kompresja liniowa OneFS wykorzystuje bezstratny algorytm, który zmniejsza fizyczny rozmiar danych zapisywanych na dysku. Skompresowane dane są dekompresowane podczas ich odczytu. Kompresja jest przezroczysta dla aplikacji, które znajdują się na wierzchu systemu plików, w tym usług opartych na protokole, takich jak Sieciowy system plików (NFS) i blok komunikatów serwera (SMB).
Głównym celem kompresji wbudowanej Isilon jest zmniejszenie wymagań dotyczących przechowywania danych. Kompresja liniowa zwykle wiąże się z mniejszym rozmiarem pamięci masowej, zmniejszonym zapotrzebowaniem na energię i chłodzenie oraz niższym ogólnym kosztem pamięci masowej w przeliczeniu na TB. Jednak kompresja pomaga również zmniejszyć całkowitą ilość danych zapisywanych na urządzeniach pamięci masowej. Jest to korzystne w przypadku dysków półprzewodnikowych (SSD) i innych nośników o ograniczonych limitach nadpisywania, ponieważ zmniejsza szybkość zużycia dysku.
Co więc kryje się pod maską?
Kompresja danych OneFS inline składa się z pięciu głównych elementów:
- Platforma kompresyjna
- Silnik kompresyjny
- Mapa fragmentów kompresji
- Struktura alertów i raportowania o kompresji
- Ścieżka kontroli kompresji
W tym artykule skupimy się na platformie i silniku kompresji.
Bezpośrednia kompresja danych jest obsługiwana wyłącznie na nowej platformie Isilon F810 All-Flash, w której każdy węzeł jest wyposażony w adapter odciążania kompresji. Karta ta zapewnia kompresję look-aside w celu odciążenia procesora sieciowego od niektórych zadań. Oznacza to, że kompresja i dekompresja są wykonywane w sposób transparentny przy użyciu dedykowanej programowalnej macierzy bramek (FPGA) z minimalnymi opóźnieniami, co zmniejsza zasoby procesora i pamięci.
Nowa obudowa F810 jest dostępna z następującymi opcjami pamięci masowej:
|
Typ dysku |
Nośnik pamięci masowej |
Szyfrowanie (SED) |
Pojemność obudowy (surowa) |
|
3,8 TB |
Dysk półprzewodnikowy (SSD) |
Nie |
228 TB |
|
7,7 TB |
Dysk półprzewodnikowy (SSD) |
Nie |
462 TB |
|
15,4 TB |
Dysk półprzewodnikowy (SSD) |
Nie |
924 TB |
|
Samoszyfrujący dysk o pojemności 15,4 TB |
Dysk półprzewodnikowy (SSD) |
Tak |
924 TB |
Oprócz dwuportowych interfejsów Ethernet 40 Gb, każdy adapter odciążania kompresji zawiera układ FPGA dedykowany do kompresji i dekompresji danych. Dwa porty Ethernet na każdej karcie adaptera w gnieździe PCI-e zaplecza węzłów są używane do nadmiarowej łączności sieciowej zaplecza.
Kompresja i dekompresja sprzętowa jest wykonywana równolegle przez interfejsy Ethernet 40 Gb/s węzłów F810, gdy klienci odczytują i zapisują dane w klastrze. Ten rozproszony model interfejsu umożliwia liniowe skalowanie kompresji w puli węzłów F810 w miarę rozrastania się klastra Isilon i dodawania kolejnych węzłów F810. OneFS w wersji 8.1.3 i nowszych obsługuje od 4 do 144 węzłów F810 lub 36 obudów na klaster. Zalecane najlepsze rozwiązanie to maksymalnie 40 węzłów F810 na klaster.
Węzły F810 wykorzystują sprzętowy silnik odciążania oparty na układach FPGA na wewnętrznej karcie sieciowej PCI-e do wykonywania kompresji i dekompresji danych w czasie rzeczywistym. Dzieje się tak, gdy pliki są zapisywane i odczytywane z węzła w klastrze przy użyciu połączonej sesji klienta.
Oprócz układu FPGA, sprzętowy silnik kompresji wykorzystuje zastrzeżoną implementację DEFLATE. Zapewnia to najwyższy poziom kompresji przy minimalnym lub zerowym spadku wydajności w przypadku zestawów danych o wysokiej kompresji.
Silnik sprężający składa się z trzech głównych elementów:
|
Podzespoły silnika |
Opis |
|
Moduł wyszukiwania |
Moduł wyszukiwania LZ77 analizuje wbudowane fragmenty danych plików pod kątem powtarzających się wzorców. |
|
Moduł kodowania |
Wykonuje kompresję danych (kodowanie Huffmana) na docelowych fragmentach. |
|
Moduł dekompresyjny |
Spowoduje to ponowne wygenerowanie oryginalnego pliku ze skompresowanych fragmentów. |
Ponieważ znajdują się one na tej samej karcie, silnik kompresji współdzieli przepustowość PCI-e z interfejsami Ethernet zaplecza węzła.
OneFS zapewnia również implementację oprogramowania jako rezerwę w przypadku awarii sprzętu do kompresji. W klastrze mieszanym implementacja oprogramowania jest używana w węzłach innych niż F810, które nie mają kompresji sprzętowej. Zarówno implementacje kompresji sprzętowej, jak i programowej są kompatybilne z DEFLATE.