让我问一些有关AWS Redshift上列压缩的问题。 现在,我们正在验证使用适当的diststyle,sortkey和列压缩可以使性能更好的地方。
如果我的理解正确,那么列压缩可以帮助降低IO成本。我尝试了“分析压缩表名”。并且大多数Redshift建议对我们的列使用'zstd'或'lzo'作为压缩方法。
总的来说,请问设置为DISTKEY / SORTKEY的列也应该像其他列一样压缩吗?
我是Redshift的新手,任何建议将不胜感激。
很高兴。
答案 0 :(得分:4)
DISTKEY
可以压缩,但 first SORTKEY
列应未压缩(ENCODE raw
)。如果您有多个排序键(复合),则可以压缩其他排序键列。
此外,通常建议使用通常过滤的日期/时间戳列(如果存在)作为复合排序键中的第一排序键列。
最后,如果要在非常大的表之间进行联接,请尝试在两个表上使用相同的dist和sort键,以便Redshift可以使用更快的合并联接。