Amazon redshift Redshift新增:基本查询优化问题

Amazon redshift Redshift新增:基本查询优化问题,amazon-redshift,Amazon Redshift,我正在深入研究红移查询调优。我对这项技术是全新的。我有一些基本的问题和一些松散的解释,我希望有一些能证实或反驳我的观点 就这样 分发与广播操作: 到目前为止,我还没有在手册中找到任何能确切告诉我区别的东西。我从计划中注意到的是,如果我选择ALL分发样式,我仍然可以看到BCAST操作的发生。有人能解释一下这些操作之间的区别吗 节点与切片: 我注意到手册,在分发操作的上下文中,在一点上它表示数据跨节点分发,在另一点上它表示数据跨片分发。我正在用一个节点和两个片在开发环境中分析计划。以下是我的松散解释

我正在深入研究红移查询调优。我对这项技术是全新的。我有一些基本的问题和一些松散的解释,我希望有一些能证实或反驳我的观点

就这样

  • 分发与广播操作:
    到目前为止,我还没有在手册中找到任何能确切告诉我区别的东西。我从计划中注意到的是,如果我选择ALL分发样式,我仍然可以看到BCAST操作的发生。有人能解释一下这些操作之间的区别吗
  • 节点与切片:
    我注意到手册,在分发操作的上下文中,在一点上它表示数据跨节点分发,在另一点上它表示数据跨片分发。我正在用一个节点和两个片在开发环境中分析计划。以下是我的松散解释: 优化器是节点不可知的;它关心切片。可以将数据分发到作为目标节点的驻留切片附带的节点。有人能证实或反驳这一点吗
  • 高基数联接 我试图调优两个具有多个高基数联接操作(无主键/外键)的大型事务表。除了阅读几篇关于调优的博客外,还经历了几次涉及dist样式和排序键的各种迭代。
    松散形式的解释:红移优于星型/雪花型模式,在这种模式中,连接通常是低基数的(DIM和事实表),但难以处理事务表。有人能证实或反驳这一点吗
  • 我很欣赏你的见解


    谢谢

    这个主题可能太宽泛,无法在一次问答中解决

  • dist all的广播与其他广播不同-数据已经在每个节点上。分布意味着,为了完成连接,Redshiftre使用新的dist键在所有切片上分布数据
  • 节点被细分为片。大多数查询运算符在切片级别工作
  • Redshift可以比我使用过的任何其他系统(YMMV)更快地完成驻留在磁盘上的数据的巨大连接。为了获得最大的速度,应该在具有相同dist和sort键的表上执行大型联接—使用dist和sort键列 ,这些链接应提供您需要的解释:

    • 查询计划和执行工作流:
    • 查看查询计划步骤:
    • 将查询计划映射到查询摘要:
    • 用于查询优化的诊断查询: