首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >亚马逊红移优化器(?)和分布方式

亚马逊红移优化器(?)和分布方式
EN

Stack Overflow用户
提问于 2017-11-19 13:28:25
回答 1查看 164关注 0票数 0

我正在使用Sybex官方学习指南学习,在第173页有几个短语:

您可以配置表的分发样式,以便向Amazon提示如何对数据进行分区,以更好地满足您的查询模式。运行查询时,优化器根据需要将行转移到计算节点,以执行任何联接和聚合。

带我去问几个问题?

1)“优化器”的作用是什么?数据是否在计算节点间重新排列以提高每个新查询的性能?

2)如果1)是真的,并且执行完全不同的新查询:计算节点中的旧数据会发生什么变化?

( 3)你能更好地解释我的3种发行风格(偶数,键,全部),特别是关键风格。

额外问题:

1)领导节点是否有记录?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-19 22:07:31

为了澄清以下几点:

  • 分发键不是一个提示--数据实际上是根据密钥分发的。
  • 当运行查询时,数据不会被“移动”--相反,数据的副本可能会被发送到其他节点,这样数据就可以连接到特定的节点上,但是数据就不会驻留在目标节点上。
  • 优化器实际上并不“做”任何事情--它只计算节点将遵循的进程(Redshift显然会编写发送到每个节点的C程序)。

了解优化器唯一真正需要的是:

查询优化器 Amazon查询执行引擎结合了一个查询优化器,它是MPP感知的,并且还利用了面向列的数据存储。Amazon查询优化器为处理复杂的分析查询(通常包括多表联接、子查询和聚合)实现了重要的增强和扩展。

来自数据仓库系统体系结构

领袖节点 领导节点管理与客户端程序的通信,以及与计算节点的所有通信。它分析和制定执行计划来执行数据库操作,特别是为复杂查询获得结果所需的一系列步骤。根据执行计划,领导节点编译代码,将编译后的代码分发给计算节点,并将数据的一部分分配给每个计算节点。 只有当查询引用存储在计算节点上的表时,领导节点才会将SQL语句分发给计算节点。所有其他查询都只在领导节点上运行。Amazon被设计为只在领导节点上实现某些SQL函数。使用任何这些函数的查询如果引用驻留在计算节点上的表,将返回一个错误。

领导者节点不包含任何数据(除非您启动了一个单节点集群,在这种情况下,相同的服务器被用作领导人节点和计算节点)。

有关分发样式的信息,请参阅:分布样式

如果您真的想了解红移,那么请阅读红移数据库开发人员指南。如果您只是在学习解决方案架构师考试,上述链接将足以达到Redshift知识的水平。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47377391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档