Amazon Redshift
数据库开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用时间序列表

如果数据有固定保留期,可以将数据组织为时间序列表序列。在此类序列中,每个表都相同但包含不同时间范围的数据。

您只需在相应表上运行 DROP TABLE 命令即可轻松删除旧数据。此方法比运行大规模 DELETE 流程快得多,并使您不必运行后续 VACUUM 流程以回收空间。要隐藏数据存储在不同表中这一事实,您可以创建 UNION ALL 视图。删除旧数据时,只需优化您的 UNION ALL 视图将已删除的表移除。同样,向新表加载新时间段时,只需将新表添加到视图中。为了通知优化程序跳过对与查询筛选条件不匹配的表的扫描,您的视图定义将筛选与每个表对应的日期范围。

避免在 UNION ALL 视图中包含过多的表。每个附加表都会给查询增加一点处理时间。表不需要使用相同的时间范围。例如,您可能拥有不同时间段(如每日、每月、每年)的表。

如果使用时间序列表以时间戳列作为排序键,则可按排序键顺序高效加载数据。这样做将使 vacuum 不必对数据重新排序。有关更多信息,请参阅 按排序键顺序加载数据