For å løse dette problemet utviklet utviklere komprimeringsalgoritmer og verktøy som var i stand til å komprimere data i sanntid, og reduserte størrelsen og behandlingskraften som kreves. Et av disse verktøyene er Zstandard, ofte kjent som ZSTD.
ZSTD er en gratis, open source, sanntids komprimeringsalgoritme utviklet av Yann Collect, en ansatt på Facebook. ZSTD er veldig rask og tilbyr utestående kompresjonsforhold. Det er en tapsfri kompresjonsalgoritme skrevet i C, men har API -implementeringer på andre populære programmeringsspråk som Python, Java, C#, JavaScript og mange flere. Det gir også komprimerings- og dekompresjonsfunksjoner i minnet.
For å sjekke om ZSTD støtter ønsket språk, sjekk ressursen som er gitt nedenfor:
https: // facebook.github.IO/ZSTD/
Hvis du ønsker å se på benchmarking informasjon om ZSTD, bruk lenken nedenfor:
https: // github.com/facebook/zstd
Denne opplæringen vil vise deg hvordan du kan kompilere og installere ZSTD -verktøyet i Linux, og deretter bruke det til å utføre datakomprimering og dekompresjon.
Hvordan installere ZSTD
For å bruke ZSTD, må vi installere den ved å samle fra kildene. Avhengig av systemet du kjører og konfigurasjonen, kan det hende du må installere avhengigheter og verktøy for å utføre samlingen vellykket.
Begynn med å oppdatere systemet ditt og installere GNU Make ved hjelp av kommandoen:
sudo apt-get oppdatering
sudo apt-get oppgradering
sudo apt-get -y installer build-essensiell wget tjære
Når vi har installert alle verktøyene, kan vi laste ned kildefilene og samle dem. Begynn med å navigere hvor du har lest, skriv og utfør tillatelser. ~/Desktop
CD ~/Desktop
Bruk deretter WGET for å laste ned filene i katalogen.
wget https: // github.com/facebook/zstd/utgivelser/nedlasting/v1.4.9/ZSTD-1.4.9.tjære.gz
Unarkive nå nedlastingsfilen og naviger inn i katalogen ved å bruke kommandoene som:
TAR XVF ZSTD-1.4.9.tjære.gz
CD ZSTD-1.4.9
De siste trinnene er å installere ZSTD ved å bruke Make og lage installasjon i ZSTD -katalogen.
sudo make
sudo lage installasjon
Når samlingen og installasjonen er fullført, kan du begynne å bruke ZSTD på systemet ditt for å komprimere og dekomprimere filer.
Hvordan bruke ZSTD
ZSTD utsetter ikke populær komprimerings- og dekompresjonsmetoder i det hele tatt. Selv om den underliggende teknologien og implementeringen er forskjellig fra andre verktøy, er komprimering av en fil med ZSTD lik TAR- og GZIP -syntaks.
Hvordan komprimere en fil
For å komprimere en fil, ring ZSTD -kommandoen etterfulgt av -z -flagget, som ber ZSTD om å gjøre komprimeringen, og til slutt navnet på filen for å komprimere.
For eksempel komprimerer kommandoen nedenfor system-backup-filen til en .ZST -fil.
$ sudo zstd -z system -backup
Kommandoutgangen som vist nedenfor:
System-backup: 100.00% (1821109 => 1821164 byte, systembackup.zst)
$ LS System-backup
Du bør se en fil med .ZST -forlengelse som:
System-backup.zst
Når kommandoen er utført, blir filen komprimert og oppretter et filnavn .ZST -fil som du kan dekomprimere.
Komprimere og fjerne kildefilen
Som du ser fra kommandoen ovenfor, blir ikke kildefilen fjernet som standard ved komprimering. Du kan spesifisere for å fjerne kildefilene ved å bruke -RM -flagget:
$ sudo zstd -z - -rm system -backup
System-backup: 100.00% (1821109 => 1821164 byte, system-backup.zst)
$ ls
System-backup.zst
Å spesifisere -RM -flagget fjerner automatisk kildefilen.
Få filinfo
For å vise relatert informasjon om ZSTD -komprimert fil, kan du bruke -L -flagget etterfulgt av filnavnet. Den viste informasjonen inkluderer filstørrelse, komprimeringsforhold og filkontrollsum
$ zstd -lv system -backup.zst
*** ZSTD Kommandolinje grensesnitt 64-bits v1.4.9, av Yann Collet ***
System-backup.zst # zstandard rammer: 1
Vindusstørrelse: 1.74 MB (1821109 b)
Komprimert størrelse: 1.74 MB (1821164 b)
Dekomprimert størrelse: 1.74 MB (1821109 b)
Forhold: 1.0000
Sjekk: XXH64
Spesifiser kompresjonsnivået
For eksplisitt å spesifisere kompresjonsnivået, bruk - der nivået er en verdi fra 1 - 19. Standard komprimeringsnivå er 3. Du kan også låse opp høyere kompresjonsnivåer, i.e., Nivå 20 - 22.
MERK: Jo høyere kompresjonsnivå, jo høyere minnebruk.
For å komprimere en fil med et komprimeringsnivå på 10, bruk for eksempel kommandoen: for eksempel:
ZSTD -z -10 - -RM System -backup
Spesifiser kompresjonshastighet.
ZSTD lar deg også angi kompresjonshastigheten fra 1 - til. Kompresjonshastigheten er omvendt proporsjonal med kompresjonsforholdet. Standard komprimeringshastighet er 1, og jo høyere verdi, jo raskere kompresjonshastigheten.
For å bruke maksimal komprimeringshastighet, bruk for eksempel kommandoen:
sudo zstd -z - -rask = 10 system -backup
Spesifiser komprimeringsformat
Du kan også spesifisere komprimeringsformatet som skal brukes hvis du ikke liker standard ZST -komprimering. Formater inkluderer ZSTD, GZIP, XZ, LZMA og LZ4.
Bruk -format -flagget og spesifiser formatet som:
ZSTD -Z --FORMAT = GZIP SYSTEM -BACKUP
Komprimere fillisten
Anta at du har en liste over filer du vil komprimere på en gang. ZSTD lar deg passere en fil som inneholder en liste over filer og komprimerer dem rekursivt.
For eksempel en filliste.TXT som inneholder filene
/hjemme/bruker/mysql-backup
/sikkerhetskopier/konfigurasjon
/Hjem/Desktop/Media
/synkroniser/2021/brukere
Når du har lagret filen, kan du sende listen til ZSTD med alle andre alternativer å utføre på filene.
sudo zstd -z -v - -rm --filelist liste.tekst
Denne kommandoen vil komprimere alle filene som er spesifisert i tekstfilen og fjerne dem etter fullføring.
Dekomprimere en fil
For å dekomprimere en fil, kan du bruke -D -flagget med ZSTD -kommandoen eller bare bruke UNZSTD -kommandoen til å dekomprimere.
For eksempel:
sudo unzstd system-backup.zst
sudo zstd -d system -backup.zst
Bekreft filintegritet
For å teste integriteten til en ZST -komprimert fil, bruk -T -flagget som vist i kommandoen nedenfor:
sudo zstd -t system -backup.zst
Konklusjon
Som vi ser av eksemplene, er ZSTD en kraftig kompresjonsalgoritme med mange brukssaker. For å lære mer om hvordan det fungerer og implementeringen, sjekk mannens side og eksperiment.
Takk for at du leste.