Zum Hauptinhalt Zur Navigation

Kompressionsbibliotheken: Google veröffentlicht Snappy

Google hat seine Kompressionsbibliothek Snappy unter der Apache-Lizenz veröffentlicht. Sie soll durch das Überspringen der Entropiecodierung weniger Prozessorlast erzeugen und schnell komprimieren. Snappy kommt bei Google unter anderem im Mapreduce-Framework zum Einsatz.
/ Jörg Thoma
Kommentare News folgen (öffnet im neuen Fenster)

Die Kompressions- und Dekrompessionsbibliothek Snappy(öffnet im neuen Fenster) ist von Google unter die Apache-Lizenz gestellt und veröffentlicht worden. Snappy soll Daten im Schnitt mit 250 MByte pro Sekunde(öffnet im neuen Fenster) komprimieren. Dabei enthält die Kompressionsbibliothek keinerlei Assembler-Code, sondern ist ausschließlich in C++ geschrieben. Google-Entwickler Steinar H. Gunderson schreibt in seinem Blog von einem Vergleich mit ähnlichen Komprimierungsprogrammen der LZ-Familie.

Um die Geschwindigkeit der Kompressionsbibliothek zu erhöhen und die Prozessorlast zu reduzieren, haben die Entwickler auf die Entropiecodierung verzichtet. Zudem wurde Snappy in erster Linie für 64-Bit-Systeme optimiert. Snappy soll schneller komprimieren als vergleichbare Anwendungen wie Zlib oder LZO. Inhalte können mit etwa 500 MByte pro Sekunde dekomprimiert werden. Die Benchmarks wurden auf einem Core i7 mit 2,26 GHz gemessen.

Google gibt die Kompressionsraten für HTML-Dateien mit zwei- bis vierfach an, während einfacher Text 1,5- bis 1,7fach komprimiert wird. Im Vergleich zu Zlib sei der Komprimierungsgrad geringer, allerdings werde die CPU weniger belastet, schreibt Gunderson. Wer Speicherplatz sparen und lediglich einmal komprimieren will und danach öfter dekomprimieren möchte, solle weiter auf Zlib oder Bzip setzen.


Relevante Themen