Snappy(以前稱Zippy)是Google基於LZ77的思路用C++語言編寫的快速數據壓縮與解壓程式庫,並在2011年開源[1][2]它的目標並非最大壓縮率或與其他壓縮程式庫的相容性,而是非常高的速度和合理的壓縮率。使用一個執行在64位元模式下的酷睿i7處理器的單個核心,壓縮速度250 MB/s,解壓速度500 MB/s。壓縮率比gzip低20-100%。[3]

Snappy
原作者Jeff Dean、Sanjay Ghemawat、Steinar H. Gunderson
開發者Google
首次釋出2011年3月18日 (2011-03-18)
目前版本1.1.8(2020年1月14日,​4年前​(2020-01-14
原始碼庫 編輯維基數據連結
程式語言C++
作業系統跨平台
平台可移植
檔案大小2 MB
類型數據壓縮
特許條款Apache 2(截至1.0.1)/New BSD
網站google.github.io/snappy/

Snappy廣泛應用在Google的專案,例如BigTableMapReduce和Google內部RPC系統的壓縮數據。它可在開源專案中使用,例如CassandraCouchbase英語Couchbase ServerHadoopLevelDBMongoDBRocksDBLuceneSparkInfluxDB[4]解壓縮時會檢測壓縮流中是否存在錯誤。Snappy不使用行內組譯並且可移植。

介面

編輯

Snappy的分發包括C++和C繫結。第三方提供的繫結和移植包括:[5]

參考資料

編輯
  1. ^ Google Snappy–A Fast Compressing Library. InfoQ. [August 1, 2011]. (原始內容存檔於2016-03-04). 
  2. ^ Google open sources MapReduce compression.. [2016-07-09]. (原始內容存檔於2016-08-22). 
  3. ^ Snappy: A fast compressor/decompressor: Readme. Google Code. [August 1, 2011]. (原始內容存檔於2015年9月8日). 
  4. ^ snappy.. [2016-07-09]. (原始內容存檔於2016-12-18). 
  5. ^ 存档副本. [2016-07-09]. (原始內容存檔於2016-12-18). 
  6. ^ Xilinx. Xilinx. [2020-06-19]. (原始內容存檔於2022-03-01). 
  7. ^ InAccel. InAccel. 

外部連結

編輯