16.10 - Block-Level Compression - Teradata Database

Teradata Database Design

Teradata Database
Release Number
Release Date
June 2017
Content Type
User Guide
Publication ID
English (United States)

A data block is a physical unit of I/O that defines how Teradata handles data. When you specify block-level compression (BLC), Teradata stores data blocks in compressed format to save storage space. BLC can be applied to these types of tables: primary data, fallback, journal, and even tables that do not survive restarts. BLC can also be applied to these types of subtables: BLOB, compressible LOB (JSON, XML, character LOB), join index, hash index, and reference index. Block-level compression is independent of any other type of compression applied to the same data.

The goals of block-level compression are to save storage space and to reduce disk I/O bandwidth. Block-level compression can use significantly more CPU to compress and decompress data dynamically, so whether query performance is enhanced with block-level compression depends on whether performance is more limited by disk I/O bandwidth or CPU usage.

Teradata Database offers software-based and hardware-based BLC. You select the BLC method when you specify the compression algorithm in the CompressionAlgorithm field in DBS Control. See Controlling BLC at the System Level Using the DBS Control Utility.

The following site provides guidelines for evaluating the impact of block-level compression on performance and on disk space: http://developer.teradata.com/extensibility/articles/block-level-compression-evaluation-with-the-blc-utility. The site also provides a link to download the Block Level Compression Evaluation utility.