自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何使用Facebook開發(fā)的這種快速數(shù)據(jù)壓縮算法Zstd

譯文
開源 Linux 算法
Zstandard(又叫Zstd)是一款免費(fèi)開源的快速實(shí)時數(shù)據(jù)壓縮程序,具有更高的壓縮比,由Facebook開發(fā)。它是用C語言編寫的無損壓縮算法,因此它是一個原生的Linux程序。

【51CTO.com快譯】Zstandard(又叫Zstd)是一款免費(fèi)開源的快速實(shí)時數(shù)據(jù)壓縮程序,具有更高的壓縮比,由Facebook開發(fā)。它是用C語言編寫的無損壓縮算法,因此它是一個原生的Linux程序。

需要的話,它可以犧牲壓縮速度,換取更高的壓縮比(壓縮速度與壓縮比這個組合可以逐級配置),反之亦然。它有一種用于小數(shù)據(jù)壓縮的特殊模式,名為字典壓縮,可以用提供的任何樣本集來構(gòu)建字典。它帶有一個命令行實(shí)用程序,用于創(chuàng)建和解碼.zst、.gz、.xz和.lz4等文件。

重要的是, Zstandard有一套豐富的API,支持幾乎所有流行的編程語言,包括Python、Java、JavaScript、Nodejs、Perl、Ruby、C#、Go、Rust、PHP和Swift等語言。

它在Facebook積極用于壓縮多種格式的大量數(shù)據(jù),支持多種使用場景,適用于亞馬遜Redshift數(shù)據(jù)倉庫等服務(wù)、Hadoop和Redis等數(shù)據(jù)庫、Tor網(wǎng)絡(luò)以及包括游戲在內(nèi)的其他許多應(yīng)用。

通過使用lzbench這種開源的內(nèi)存基準(zhǔn)測試工具,在一臺運(yùn)行Linux Debian的服務(wù)器上執(zhí)行幾項(xiàng)快速壓縮算法測試,獲得了以下結(jié)果: 

如何使用Facebook開發(fā)的這種快速數(shù)據(jù)壓縮算法Zstd

Zstandard壓縮測試

如何在Linux中安裝Zstandard壓縮工具?

想在Linux發(fā)行版上安裝Zstandard,你需要用源代碼來編譯,不過在此之前,需要使用發(fā)行版軟件包管理器在系統(tǒng)上安裝必要的開發(fā)工具,如下所示: 

  1. $ sudo apt update && sudo apt install build-essential       #Ubuntu/Debian  
  2. # yum group install "Development Tools"               #CentOS/REHL  
  3. # dnf groupinstall "C Development Tools and Libraries"  #Fedora 22+  

一旦安裝了所有需要的開發(fā)工具,可以下載源代碼軟件包,進(jìn)入到本地倉庫目錄,構(gòu)建二進(jìn)制文件并安裝,所下所示: 

  1. $ cd ~/Downloads  
  2. $ git clone https://github.com/facebook/zstd.git  
  3. $ cd zstd  
  4. $ make  
  5. $ sudo make install   

一旦Zstandard安裝完畢,現(xiàn)在我們可以進(jìn)一步學(xué)習(xí)下面部分中Zstd命令示例的一些基本用法。

學(xué)習(xí)Linux中10個Zstd命令使用示例

Zstd的命令行語法通常與gzip和xz工具類似,不過有幾個差異。

1.想創(chuàng)建.zst壓縮文件,只需提供一個壓縮文件名即可,或者使用-z標(biāo)志也意味著壓縮,這是默認(rèn)操作。 

  1. $ zstd etcher-1.3.1-x86_64.AppImage  

或者 

  1. $ zstd -z etcher-1.3.1-x86_64.AppImage  

2.想解壓縮.zst壓縮文件,使用-d標(biāo)志或unzstd實(shí)用程序,如下所示: 

  1. $ zstd -d etcher-1.3.1-x86_64.AppImage  

或者 

  1. $ unzstd etcher-1.3.1-x86_64.AppImage  

3.想在壓縮操作和后刪除源文件,默認(rèn)情況下,源文件在成功壓縮或解壓縮后不會被刪除;想刪除它,使用--rm選項(xiàng)。 

  1. $ ls etcher-1.3.1-x86_64.AppImage  
  2. $ zstd --rm  etcher-1.3.1-x86_64.AppImage  
  3. $ ls etcher-1.3.1-x86_64.AppImage  

4.想設(shè)置壓縮級別,Zstd有許多操作修改符,比如你可以指定壓縮級別為-6 (數(shù)值1-19,默認(rèn)值為3),如下所示: 

  1. $ zstd -6 --rm etcher-1.3.1-x86_64.AppImage 

5.想設(shè)置壓縮速度,Zstd的壓縮速度比為1-10,默認(rèn)壓縮速度為1??梢允褂?-fast選項(xiàng),犧牲壓縮比,換取更高的壓縮速度;數(shù)值越大,壓縮速度越快。 

  1. $ zstd --fast=10 etcher-1.3.1-x86_64.AppImage 

6.想顯示有關(guān)壓縮文件的信息,使用-l標(biāo)志,這可以用來顯示有關(guān)壓縮文件的信息。 

  1. $ zstd -l etcher-1.3.1-x86_64.AppImage.zst 

7.想測試壓縮文件的完整性,使用-t標(biāo)志,如下所示: 

  1. $ zstd -t etcher-1.3.1-x86_64.AppImage.zst 

8.想啟用詳細(xì)模式,使用-v選項(xiàng)。 

  1. $ zstd -v -5 etcher-1.3.1-x86_64.AppImage 

9.想使用其他文件壓縮或解壓縮格式,比如gzip、xz、lzma和lz4,使用--format=FORMAT,如下所示: 

  1. $ zstd -v --format=gzip etcher-1.3.1-x86_64.AppImage  
  2. $ zstd -v --format=xz  etcher-1.3.1-x86_64.AppImage  

10.想將Zstd進(jìn)程優(yōu)先級設(shè)置為實(shí)時,可以使用選項(xiàng)-priority = rt,如下所示: 

  1. $zstd --priority=rt etcher-1.3.1-x86_64.AppImage 

-r標(biāo)志指令Zstd對字典執(zhí)行遞歸操作。只要查閱Zstd參考手冊頁,你就可以找到許多實(shí)用的高級選項(xiàng),以及如何閱讀或創(chuàng)建字典。 

  1. $ man zstd  
  2. Zstandard Github倉庫:https://github.com/facebook/zstd  

Zstandard是一種快速的實(shí)時無損數(shù)據(jù)壓縮算法和壓縮工具,提供了高壓縮比。嘗試一下,分享你的想法,也可以通過下面的反饋表來提問。

原文標(biāo)題:zstd – A Fast Data Compression Algorithm Used By Facebook,作者:Aaron Kili 

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:龐桂玉 來源: 51CTO
相關(guān)推薦

2013-07-22 13:54:32

iOS開發(fā)ASIHTTPRequ

2017-06-12 18:24:25

數(shù)據(jù)庫壓縮技術(shù)

2021-09-15 11:48:02

FacebookAndroid AppSuperpack技術(shù)

2013-03-13 09:53:50

SQL Server

2023-11-09 09:48:16

數(shù)據(jù)壓縮微服務(wù)

2010-07-14 14:07:50

SQL Server

2018-05-28 21:51:25

Protocol bu數(shù)據(jù)存儲序列化

2011-03-29 13:56:12

SQL Server 數(shù)據(jù)壓縮

2009-07-08 00:24:00

數(shù)據(jù)壓縮Oracle 11g

2010-07-30 09:36:15

StorwizeIBM

2021-02-25 09:02:29

FacebookZstd應(yīng)用

2023-06-05 08:46:42

2010-03-05 09:27:07

SQL Server

2022-05-12 15:05:32

云計(jì)算數(shù)據(jù)壓縮

2021-10-13 10:32:37

算法Facebook技術(shù)

2021-07-06 18:19:03

Ubuntu 21.1zstd壓縮軟件包

2011-10-17 14:04:11

戴爾DX6000G數(shù)據(jù)壓縮

2021-09-26 10:08:33

TSDB時序數(shù)據(jù)庫壓縮解壓

2024-05-15 09:48:55

?Firefox瀏覽器版本更新
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號