Amazon Redshift introduces AZ64, a new compression encoding for optimized storage and high query performance

Posted on: Oct 8, 2019

AZ64, a proprietary compression encoding that is designed to achieve a high compression ratio and improved query performance, is now available. Innovations in the AZ64 algorithm efficiently compress small groups of data values and leverage SIMD instructions for data parallel processing. This encoding results in significant storage savings in most cases relative to LZO and ZSTD encodings and optimal de-compression performance for numeric and date/time data stored in Amazon Redshift.

AZ64 encoding has consistently better performance and compression than LZO. It has comparable compression with ZSTD but greatly better performance. With workloads we tested against, the following results were observed. We recommend that you evaluate the benefit for your workloads.

  • Compared to RAW encoding, AZ64 consumed 60–70% less storage, and was 25–30% faster.
  • Compared to LZO encoding, AZ64 consumed 35% less storage, and was 40% faster.
  • Compared to ZSTD encoding, AZ64 consumed 5–10% less storage, and was 70% faster.

Note that the above numbers are for a full workload and individual queries might get a much higher boost.

With your CREATE TABLE and ALTER TABLE statements, you can enable AZ64 encoding on columns with the following data types.

  • SMALLINT
  • INTEGER
  • BIGINT
  • DECIMAL
  • DATE
  • TIMESTAMP
  • TIMESTAMPTZ

For more details about AZ64 encoding, see Compression Encodings in the Amazon Redshift Database Developer Guide.

AZ64 encoding is now available with Redshift cluster versions 1.0.10013 or later. Refer to the AWS Region Table for Amazon Redshift availability.