ZSTD - Algorytm szybkiego kompresji danych używany przez Facebook

ZSTD - Algorytm szybkiego kompresji danych używany przez Facebook

Zstandard (znany również jako Zstd) to bezpłatny program kompresji danych w czasie rzeczywistym z lepszymi współczynnikami kompresji, opracowanymi przez Facebook. Jest to bezstronny algorytm kompresji napisany C (Jest ponownie wdrażanie Jawa) - Zatem jest to natywny program Linux.

Przeczytaj także: 10 7zip (Data Comperssion) Przykłady poleceń w Linux

W razie potrzeby może handlować prędkością kompresji dla silniejszych współczynników kompresji (prędkość kompresji vs współczynnik kompresji może być skonfigurowany przez małe przyrosty), odwrotnie. Ma specjalny tryb kompresji małych danych, znany jako kompresja słownika, i może budować słowniki z dowolnego dostarczonego zestawu próbek. Jest wyposażony w narzędzie wiersza poleceń do tworzenia i dekodowania .Zst, .GZ, .xz I .LZ4 akta.

Co ważne, Zstandard Ma bogatą kolekcję interfejsów API, obsługuje prawie wszystkie popularne języki programowania, w tym Python, Java, JavaScript, Nodejs, Perl, Ruby, C#, Go, Rust, Php, Switft i dużo więcej.

Jest aktywnie stosowany do kompresji dużych objętości danych w wielu formatach i przypadkach użycia w Facebook; Usługi takie jak Amazon Redshift magazyn danych; bazy danych, takie jak Hadoop i Redis; Tor Network i wiele innych aplikacji, w tym gry.

Poniższe wyniki są uzyskiwane, wykonując kilka testów szybkich algorytmów kompresji na serwerze z Linux Debian za pomocą LZBENCH, narzędzia Benchmark na pamięci typu open source.

Testowanie kompresji z Standard

Jak zainstalować narzędzie kompresyjne Zstandard w Linux

Żeby zainstalować Zstandard W dystrybucji Linux musisz skompilować go ze źródeł, ale przed tym najpierw musisz zainstalować niezbędne narzędzia programistyczne w systemie za pomocą menedżera pakietów dystrybucyjnych, jak pokazano.

$ sudo appt aktualizacja && sudo apt instaluj kompilację #ubuntu/debian #grupa mniam instalacja „Narzędzia programistyczne” #centos/rehl #dnf grupa+ 

Po zainstalowaniu wszystkich potrzebnych narzędzi programistycznych możesz teraz pobrać pakiet źródłowy, przejść do lokalnego katalogu repozytor.

$ cd ~/pobrań $ git klon https: // github.com/Facebook/ZSTD.git $ cd zstd $ Make $ sudo instaluj instalację 

Raz Zstandard zainstalowane, teraz możemy iść dalej, aby nauczyć się podstawowego użycia Zstd Przykłady poleceń w poniższej sekcji.

Naucz się 10 przykładów użycia polecenia ZSTD w Linux

Składnia wiersza poleceń ZSTD jest ogólnie podobna do składania gzip I xz narzędzia z kilkoma różnicami.

1. Stworzyć .Zst plik kompresji, po prostu podaj nazwę pliku do kompresji lub użycia -z Flaga oznacza również kompresję, która jest akcją domyślną.

$ ZSTD Etcher-1.3.1-x86_64.Appimage lub $ ZSTD -z Etcher -1.3.1-x86_64.Appimage 

2. Do dekompresji a .Zst plik kompresyjny, użyj -D flaga lub Rozprząść użyteczność, jak pokazano.

$ zstd -d Etcher -1.3.1-x86_64.Appimage.ZST lub $ Unzstd Etcher-1.3.1-x86_64.Appimage.Zst 

3. Aby usunąć plik źródłowy po operacji, domyślnie plik źródłowy nie jest usuwany po pomyślnej kompresji lub dekompresji, aby go usunąć, użyj --Rm opcja.

$ LS Etcher-1.3.1-x86_64.Appimage $ ZSTD-RM ETCHER-1.3.1-x86_64.Appimage $ LS Etcher-1.3.1-x86_64.Appimage 

4. Aby ustawić poziom kompresji, ZSTD ma wiele modyfikatorów operacji, na przykład możesz określić poziom kompresji jako -6(numer 1-19, domyślnie to 3) Jak pokazano.

$ ZSTD -6 - -RM ETCHER -1.3.1-x86_64.Appimage 

5. Aby ustawić prędkość kompresji, ZSTD ma współczynnik prędkości kompresji 1-10, Domyślna prędkość kompresji to 1. Możesz handlować współczynnikiem kompresji dla prędkości kompresji z --szybko Im wyższa liczba, tym szybsza prędkość kompresji.

$ ZSTD-FAST = 10 Etcher-1.3.1-x86_64.Appimage 

6. Aby wyświetlić informacje o skompresowanym pliku, użyj -L na przykład flaga, która służy do wyświetlania informacji o skompresowanym pliku.

$ zstd -l Etcher -1.3.1-x86_64.Appimage.Zst 

7. Aby przetestować integralność kompresowanych plików, użyj -T flaga jak pokazano.

$ zstd -t Etcher -1.3.1-x86_64.Appimage.Zst 

8. Aby włączyć tryb werbowy, użyj -v opcja.

$ zstd -v -5 Etcher -1.3.1-x86_64.Appimage 

9. Aby użyć innych formatów kompresji lub dekompresji plików, takich jak GZIP, XZ, LZMA i LZ4, za pomocą --format = format jak pokazano.

$ ZSTD -V -FORMAT = GZIP Etcher -1 -1.3.1-x86_64.AppImage $ zstd -v -format = xz Etcher -1 -1.3.1-x86_64.Appimage 

10. Aby ustawić priorytet procesu ZSTD w czasie rzeczywistym, możesz użyć opcji -Priorytet = Rt jak pokazano.

$ ZSTD --priority = RT Etcher-1.3.1-x86_64.Appimage 

-R Flaga instruuje ZSTD, aby działał rekurencyjnie na słownikach. Można znaleźć wiele przydatnych i zaawansowanych opcji, jak czytać lub tworzyć słowniki, konsultując się ze stroną ZSTD Man.

$ man zstd 

Standard Github Repozytorium: https: // github.com/Facebook/ZSTD

Zstandard jest szybkim algorytmem kompresji danych w czasie rzeczywistym i narzędziem kompresji, które oferuje wysokie współczynniki kompresji. Wypróbuj i podziel się swoimi przemyśleniami na ten temat lub zadaj pytania za pośrednictwem poniższego formularza opinii.