首页 > 解决方案 > Redshift 查询计划器和视图

问题描述

我在一些非亚马逊资源中看到 Redshift 查询规划器在处理视图时遇到问题(这里是一个源,这里是另一个,这里是第三个)。我所说的视图是指标准 SQL 视图,而不是新可用的物化视图。但是,我在开发人员指南中找不到任何关于此的信息,而且上面列出的这些资源已经过时了几年。有谁知道 Redshift 查询计划器和视图的当前情况,如果有描述它的官方 Redshift 文档,它位于哪里?

标签: sqlamazon-web-servicesamazon-redshift

解决方案


正如您所说,博客的论点有点过时,因为它们作为观点的主要缺点之一是它们在撰写本文时无法具体化,现在情况已不再如此。

第一个链接只是说 Redshift 在优化涉及视图的查询方面遇到了麻烦,但没有显示任何基准/证明,也没有解释原因和方式。

第二个和第三个来源有更多的优点,因为它们实际上提供了替代方案,即创建一个实际的表或物化视图。

我的理解是 Redshift 中的视图本身并不会受到性能不佳的影响,而是考虑到它们的瞬态特性,它们没有利用 Redshift 的集群架构。此外,正如您链接的一些资源所提到的,构成视图的查询在您每次查询视图时都会执行,这绝对无助于性能。我肯定会建议您考虑在实际表中聚合您的数据或考虑具体化这些视图。

为了更好地理解规划器的工作方式,我将看看这个查询规划和执行工作流


推荐阅读