Snappy - Port of Snappy to Java

  •        39

This is a rewrite (port) of Snappy writen in pure Java. This compression code produces a byte-for-byte exact copy of the output created by the original C++ code, and extremely fast.

The Snappy micro-benchmark has been ported, and can be used to measure the performance of this code against the excellent Snappy JNI wrapper from xerial. As you can see in the results below, the pure Java port is 20-30% faster for block compress, 0-10% slower for block uncompress, and 0-5% slower for round-trip block compression. These results were run with Java 7 on a Core i7, 64-bit Mac.



Related Projects

Snappy Java - Snappy compressor/decompressor for Java

  •    Java

snappy-java is a Java port of the snappy, a fast C++ compresser/decompresser developed by Google. It does fast compression/decompression around 200~400MB/sec, Less memory usage. SnappyOutputStream uses only 32KB+ in default, Compression/decompression of Java primitive arrays (float[], double[], int[], short[], long[], etc.) and lot more.

7-Zip - File archiver with a high compression ratio

  •    C

7-Zip is a file archiver with the high compression ratio. The program supports 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM, ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z.

LZF Compressor- High-performance, streaming/chunking Java LZF codec, compatible with standard C LZF package

  •    Java

LZF-compress is a Java library for encoding and decoding data in LZF format, written by Tatu Saloranta. LZF alfgorithm itself is optimized for speed, with somewhat more modest compression. Compared to the standard Deflate (algorithm gzip uses) LZF can be 5-6 times as fast to compress, and twice as fast to decompress. Compression rate is lower since no Huffman-encoding is used after lempel-ziv substring elimintation.

Snappy for .NET


.NET P/Invoke wrapper for Snappy, fast compression library

snappy - The Snappy compression format in the Go programming language.

  •    Go

The Snappy compression format in the Go programming language.

PeaZip - Cross-platform file and archive manager

  •    Pascal

PeaZip is a free file archiver utility and rar extractor for Windows and Linux, work with 150+ archive types and variants (7z, ace, arc, bz2, cab, gz, iso, paq, pea, rar, tar, wim, zip, zipx...), handle spanned archives and support multiple archive encryption standards. The project aims to provide a cross-platform, portable, GUI frontend for multiple Open Source technologies (7-Zip, FreeArc, PAQ, PEA, UPX) focused on file and archive management, and security

python-snappy - Python bindings for the snappy google library

  •    Python

Python library for the snappy compression library from Google. This library is distributed under the New BSD License (

7-Zip-zstd - 7-Zip with support for Brotli, Fast-LZMA2, Lizard, LZ4, LZ5 and Zstandard

  •    C

Zstandard v1.3.7 is a real-time compression algorithm, providing high compression ratios. It offers a very wide range of compression / speed trade-off, while being backed by a very fast decoder. Brotli v.1.0.7 is a generic-purpose lossless compression algorithm that compresses data using a combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd order context modeling, with a compression ratio comparable to the best currently available general-purpose compression methods. It is similar in speed with deflate but offers more dense compression.

node-snappy - Nodejs bindings to Google's Snappy compression library

  •    Javascript

Compress input, which can be a Buffer or a String. The callback function will be called with a single error if the operation failed for any reason. If successful the first argument will be null and the second argument will be the value as a ``Buffer`.

laravel-snappy - Laravel Snappy PDF

  •    PHP

This package is a ServiceProvider for Snappy: Choose one of the following options to install wkhtmltopdf/wkhtmltoimage.

lzfse - LZFSE compression library and command line tool

  •    C

This is a reference C implementation of the LZFSE compressor introduced in the Compression library with OS X 10.11 and iOS 9. LZFSE is a Lempel-Ziv style data compression algorithm using Finite State Entropy coding. It targets similar compression rates at higher compression and decompression speed compared to deflate using zlib.

FastPFor - The FastPFOR C++ library: Fast integer compression

  •    C++

A research library with integer compression schemes. It is broadly applicable to the compression of arrays of 32-bit integers where most integers are small. The library seeks to exploit SIMD instructions (SSE) whenever possible.This library can decode at least 4 billions of compressed integers per second on most desktop or laptop processors. That is, it can decompress data at a rate of 15 GB/s. This is significantly faster than generic codecs like gzip, LZO, Snappy or LZ4.

lz4-java - LZ4 compression for Java

  •    C

LZ4 compression for Java, based on Yann Collet's work available at This library provides access to two compression methods that both generate a valid LZ4 stream fast scan (LZ4) and high compression (LZ4 HC). The streams produced by those 2 compression algorithms use the same compression format, are very fast to decompress and can be decompressed by the same decompressor instance.

Info ZIP - Compressor Archiver Utilities

  •    C

Info-ZIP's purpose is to provide free, portable, high-quality versions of the Zip and UnZip compressor-archiver utilities that are compatible with the DOS-based PKZIP.

Zstandard - Fast real-time compression algorithm

  •    C

Zstandard is a real-time compression algorithm, providing high compression ratios. It offers a very wide range of compression / speed trade-off, while being backed by a very fast decoder. It also offers a special mode for small data, called dictionary compression, and can create dictionaries from any sample set.

HU01 Decompression


Hotmail's DeltaSync protocol uses custom compression scheme known as hm-compression or HU01. It is very similar to DEFLATE encoding, which is standardized as RFC 1951, but the bit stream format is different. Earlier work on decompressing these streams was published by Daniel P...

SHARC - Fastest lossless compression algorithm

  •    C

SHARC is an extremely fast lossless dictionary-based compression algorithm. It is capable of an unprecedented compression speed of more than 500 MB/s per core on modern Intel CPUs ! It is scalable on multi core/multi CPU, developed in pure C99, and easily portable on many platforms.

compress - Optimized compression packages

  •    Go

This package is based on an optimized Deflate function, which is used by gzip/zip/zlib packages. It offers slightly better compression at lower compression settings, and up to 3x faster encoding at highest compression level.

ZipStorer - A Pure C# Class to Store Files in Zip

  •    DotNet

Small C# class to store and extract uncompressed and deflated files in new or existing Zip files, without any external library. Works with .net 2.0 and up, and Compact Framework.

ZipStream-PHP - Fork of pablotron's zip streaming library.

  •    PHP

You can also add comments, modify file timestamps, and customize (or disable) the HTTP headers. It is also possible to specify the storage method when adding files, the current default storage method is 'deflate' i.e files are stored with Compression mode 0x08. See the class file for details. Please take a look at the File.