A Useful Data-Compression Option

Edit: Have you run this tool?

Originally posted November 3, 2014 on AIXchange

Perhaps you’re interested in compressing data on your IBM storage devices. But do you have any idea how much of your data is actually compressible?

The Comprestimator utility is designed to tell you how much actual compression you’ll achieve without actually compressing your data. Download version 1.5.1.1 here. From the same link, here’s a detailed description of the tool: 

“Comprestimator is a command line host-based utility that can be used to estimate an expected compression rate for block devices.

The Comprestimator utility uses advanced mathematical and statistical algorithms to perform the sampling and analysis process in a very short and efficient way. The utility also displays its accuracy level by showing the maximum error range of the results achieved based on the formulas it uses. The utility runs on a host that has access to the devices that will be analyzed, and performs only read operations so it has no effect whatsoever on the data stored on the device. The following section provides useful information on installing Comprestimator on a host and using it to analyze devices on that host. Depending on the environment configuration, in many cases Comprestimator will be used on more than one host, in order to analyze additional data types.

In order to reduce the impact of block device and file system behavior mentioned above it is highly recommended to use Comprestimator to analyze volumes that contain as much active data as possible rather than volumes that are mostly empty of data. This increases accuracy level and reduces the risk of analyzing old data that is already deleted but may still have traces on the device.

Comprestimator version 1.5 adds support for analyzing expected compression savings in accordance with Storwize V7000, SAN Volume Controller (SVC) and FlashSystem V840 storage systems running software version 7.3. Among other enhancements in the software, version 7.3 adds support for the 2014 hardware models Storwize V7000 Gen2, SVC DH8 and FlashSystem V840 AC1.

Comprestimator is supported and can be used on the following client operating system versions:

  • Windows 2003 Server, Windows 7, Windows 2008 Server, Windows 8, Windows 2012
  • ESXi 4, 5
  • AIX 6.1, 7
  • Red Hat Enterprise Linux Version 5.x, 6.x
  • HP-UX 11.31
  • Sun Solaris 10, 11
  • SUSE SLES 11
  • Ubuntu 12
  • CentOS 5.x

Comprestimator is designed to scan any block device that is readable by the OS itself. This typically includes devices managed by logical volume managers (LVMs) or partitioned by the OS. However, for practical reasons, since compression is applied to physical volumes, it is recommended to estimate compression by running Comprestimator on the same block device/physical volume that will be compressed, and not on a logical volume, which may be spanning on those volumes. It is thereby highly recommended to always analyze the native block-device when using Comprestimator.

Some volume managers “reserve” some of the LUN capacity for internal use. Since Comprestimator reads directly from the block device, some of these IOs may fail. The tool will tolerate up to 1% failed IOs and a scan will be aborted if this threshold is reached.”

Rather than guess what you might save on disk space when you turn on compression, try this tool and learn some real-world numbers based on your actual environment.