Amazon redshift 如何通过SVV_表信息中的skew_sortkey1估计sortkey?

Amazon redshift 如何通过SVV_表信息中的skew_sortkey1估计sortkey?,amazon-redshift,Amazon Redshift,根据下面的AWS参考资料,skew_sortkey1对于评估当前排序键的有效性非常有用,但我不能完全理解它 让我给你举个例子。下表具有相同的排序键、p_date Purche_date,但不同的skew_sortkey1值 那么我可以问一下,我是否可以说表a的排序键更有效,因为它比表b的值高 非常感谢您的反馈 example: select "table", encoded, diststyle, skew_sortkey1, skew_rows from svv_table_info orde

根据下面的AWS参考资料,skew_sortkey1对于评估当前排序键的有效性非常有用,但我不能完全理解它

让我给你举个例子。下表具有相同的排序键、p_date Purche_date,但不同的skew_sortkey1值

那么我可以问一下,我是否可以说表a的排序键更有效,因为它比表b的值高

非常感谢您的反馈

example: select "table", encoded, diststyle, skew_sortkey1, skew_rows from svv_table_info order by 1; table | encoded | diststyle | skew_sortkey1 | skew_rows ---------------+---------+-----------------+---------------+---------- table_a Y KEY(P_DATE) 67.73 1.16 table_b Y KEY(P_DATE) 3.52 1.86 多亏了您在这里的所有专家建议,我们在两个月前成功地迁移了红移,并且运行起来没有什么大问题。
虽然速度比我们预期的要快,但我认为是时候评估当前设置是否合适了。

关于这个问题的几个答案讨论了歪斜的基本原理:

基本上,此列的较大值不太理想,因为倾斜越大,需要扫描的数据块越多。在示例中的表_a中,对于扫描的排序键列的每一个块,红移必须扫描多达68个其他列块以检索数据

高倾斜值的一个原因是排序键列上的压缩:

资料来源:


因此,如果您已经压缩了这些表中的排序关键字列,考虑删除压缩并使它们不被压缩。

在这个问题的两个答案中讨论了SigWySoTrKEY1的原理:

基本上,此列的较大值不太理想,因为倾斜越大,需要扫描的数据块越多。在示例中的表_a中,对于扫描的排序键列的每一个块,红移必须扫描多达68个其他列块以检索数据

高倾斜值的一个原因是排序键列上的压缩:

资料来源:


这样,如果你压缩了这些表中的排序键列,考虑删除压缩并使它们不被压缩。

我再次非常感谢你的清晰而有用的解释——由于你的修正,现在我需要在Redshift上避免SigWySoToKe1的高值。首先,我们将根据您的建议尝试解压缩。非常感谢你!再次感谢您的清晰和有用的解释-感谢您的善意更正,现在我理解了在红移时应避免skew_sortkey1的高值。首先,我们将根据您的建议尝试解压缩。非常感谢你!