rzip

from Wikipedia, the free encyclopedia
rzip
Basic data

developer Andrew Tridgell
Current  version 2.1
operating system Linux
programming language C.
category Packing program
License GNU GPL , version 2
German speaking No
rzip.samba.org (English)

The free software rzip is a program for data compression , which is noticeable by an extreme window size, namely 900 MiB. It was programmed by Andrew Tridgell as part of his dissertation. With lrzip , the basic principle of rzip was even massively expanded, and typical Linux application options such as pipelining were added.

background

The well-known gzip, for example, works with windows of 32 KiB. This is still very suitable for pure text files. Other software like bzip2 work with blocks of 100 to 900 KiB, and thus achieve significantly better compression rates. rzip improves this situation by several orders of magnitude.

rzip searches for data sequences that occur multiple times within 900 MiB windows and compresses them using a dictionary method . These prepared data are then processed with bzip2, with the conventional block size of 900 KiB:

  1. Burrows-Wheeler Transformation
  2. Move-to-front algorithm
  3. Huffman coding

Despite this linking of rzip and bzip2, the compression is much faster - the slower bzip2, whose first and second step does not perform any compression anyway, hardly has to process redundant data.

One advantage of rzip is that it can, for example, compress PDF files much better. If there are several identical inserted images in a PDF file, software such as gzip will not be able to compress them due to its relatively small window size, as they are too far apart. One disadvantage is that rzip requires a lot of RAM and, for example, cannot be used as versatile without pipelining.

Application example

For example, the compression of a file is done with

rzip -k -v -P -9 <Dateiname>

carried out. "-k" keeps the uncompressed file, "-v" provides additional information, "-P" shows the percentage of progress, and "-9" provides the best, but slowest compression. Any options can also be left out.

Extracting the compressed file takes place with

runzip <Dateiname>

instead of.

Further developments

lrzip

lrzip
Basic data

developer Con Kolivas
Current  version 0.621
(March 10, 2015)
operating system Linux
programming language C.
category Packing program
License GNU GPL , version 2
German speaking No
rzip.samba.org

lrzip is a further development of rzip, programmed by Con Kolivas using the rzip program code. It offers more compression methods, optional data encryption, pipelining and a dictionary size that is not even limited by the available memory - lrzip can therefore always keep pace with the use of ever larger memory. However, the file format of lrzip is not compatible with rzip.

First of all, lrzip uses the same procedure as rzip - namely the reduction of redundant data with a dictionary method. This cleaned data is then not further compressed with Bzip2, but with LZMA .

Application example

lrzip -b -U -e <Dateiname>

-b applies compression with Bzip2, -U removes any dictionary size limitation, and -e encrypts the file. Instead of '-b', the options

  • -g for gzip or -l for LZO (fast, but poor compression)
  • -z for ZPAQ (slow, but high compression)
  • -n for no further compression

be applied. If no compression method is specified, LZMA is used. Any options can also be left out. With an unlimited dictionary size, the compression rate can be improved for very large files (especially files that are larger than the available memory), but at the same time this can lead to a significant slowdown. The encryption takes place with AES-128 and cipher block chaining .

Decompression takes place with

lrunzip <Dateiname>

rzip64

rzip64 uses several processor cores at the same time, and the data compression can be interrupted at any time. Compressed data is not lost even if the computer is switched off and restarted. This makes it easier to compress massive amounts of data, as the computer can be used for more important work at any time.

Web links

Individual evidence

  1. http://ck.kolivas.org/apps/lrzip/
  2. kolivas.org: lrzip README