发布于: Oct 8, 2019

AZ64 现已推出,这是一种专有的压缩编码,旨在实现高压缩率并改善查询性能。AZ64 算法的创新有效地压缩了小型数据值组合,并利用 SIMD 指令进行数据并行处理。与 LZO 和 ZSTD 编码相比,这种编码在大多数情况下可节省大量存储空间,并为 Amazon Redshift 中存储的数字和日期/时间数据提供最佳的解压缩性能。

AZ64 编码的性能和压缩率始终高于 LZO 的。它具有与 ZSTD 相当的压缩率,但其性能大大提高了。根据测试的工作负载,我们观察到以下结果。建议您评估工作负载的优势。

  • 与 RAW 编码相比,AZ64 占用的存储空间减少了 60–70%,压缩速度提高了 25–30%。
  • 与 LZO 编码相比,AZ64 占用的存储空间减少了 35%,压缩速度提高了 40%。
  • 与 ZSTD 编码相比,AZ64 占用的存储空间减少了 5–10%,压缩速度提高了 70%。

请注意,以上数值是针对全部工作负载进行测试的情况,在您运行单个查询时,性能提升幅度可能会更大。

使用 CREATE TABLE 和 ALTER TABLE 语句,您可以对具有以下数据类型的列启用 AZ64 编码。

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

有关 AZ64 编码的更多详细信息,请参阅《Amazon Redshift 数据库开发人员指南》中的压缩编码

现在,Redshift 集群 1.0.10013 或更高版本提供 AZ64 编码。请参阅“AWS 区域表”,了解 Amazon Redshift 的可用情况。