Brotli: open source compression from Google

google_compIt’s not the first time Google is experimenting with compression algorithms. Around 2 years ago they announced Zopfli which got incorporated into compression solutions like PNG optimizers and web content preprocessing. Google also came up with SPDY which uses gzip and deflate compressed headers, though SPDY didn’t get such wide acceptance and is superseded by HTTP2.

Brotli (meaning small bread in Swiss German) is the new compression algorithm from Google with a goal to reduce data transfer time and optimize more recent requirements like web fonts compression. The compression statistics are interesting.

Brotli implements a completely new specification and delivers 20–26% higher compression ratio than Zopfli. The speed is comparable to zlib’s deflate algorithm and compression is denser than existing formats like LZMA and bzip2. The higher data density comes from a 2nd order context modeling, re-use of entropy codes, larger memory window of past data and joint distribution codes. It also implements a LZ77 algorithm variant and Huffman coding. Brotli is lossless.

As we mentioned earlier, the smaller compressed size will result in faster data transfer (like page loading) and need less storage space. Some immediate effects would be lower bandwidth usage (and hence lesser charges) and longer battery life.

Brotli is released as open source under the Apache License 2.0. You can browse the code on GitHub.

Also check out Tone, another innovation from Google.

Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s