按排序键顺序加载数据 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

按排序键顺序加载数据

如果您使用 COPY 命令按排序键顺序加载数据,可能会减少甚至消除对 vacuum 的需求。

当满足以下所有条件时,COPY 会向表的有序区域自动添加新行:

  • 表使用了只有一个排序列的复合排序键。

  • 排序列 NOT NULL。

  • 表 100% 有序或为空。

  • 所有新行的排序顺序均优先于现有行,包括标记为要删除的行。在此实例中,Amazon Redshift 使用排序键的前八个字节来确定排序顺序。

例如,假设您有一个使用客户 ID 和时间记录客户事件的表。如果按客户 ID 进行排序,则增量加载添加的新行的排序键范围可能会与现有范围重叠(如上一个示例中所示),从而导致昂贵的 vacuum 操作。

如果您将排序键设置为时间戳列,新行将按排序顺序追加到表的结尾(如下图所示),从而减少甚至消除对 vacuum 的需求。