Fir*_*ame 0 amazon-web-services amazon-redshift
我正在尝试为redshift中的某些表添加dist和sort键.
我注意到在添加表的大小之前是0.50,并且在添加之后它增加到0.51或0.52.这可能吗 ?具有dist和sort键的整个目的是减小表的大小并有助于提高读/写性能.
这不是拥有DISTKEY和的目的SORTKEY.
要减小表的存储大小,请使用压缩.
所述DISTKEY用于切片之间分发数据.通过在同一切片上共同定位信息,查询可以更快地运行.例如,如果您有这些表:
customer 表,DISTKEY = customer_idinvoices 表,DISTKEY = customer_id......然后这些表格将以相同的方式分发.两个表中给定给定的所有记录都customer_id将位于同一切片上,从而避免了在切片之间传输数据的需要.DISTKEY应该是主要用于JOINS的列.
该SORTKEY用于在磁盘上的数据进行排序,为受益区地图.磁盘上的每个存储块大小为1MB,并且只包含一个表中一列的数据.对该列的数据进行排序,然后存储在多个块中.与每个块关联的区域映射标识该块中存储的最小值和最大值.然后,当使用WHERE语句运行查询时,Amazon Redshift只需要读取包含所需数据范围的块.通过跳过WHERE子句中不包含数据的块,Redshift可以更快地运行查询.
以上都可以一起工作.例如,压缩数据需要更少的块,这也允许Redshift根据区域映射跳过更多数据.要从查询中获得最佳性能,请同时使用DISTKEY,SORTKEY和压缩.
(通常建议不要压缩SORTKEY列,因为它会导致从一个块加载太多行.)
| 归档时间: |
|
| 查看次数: |
699 次 |
| 最近记录: |