我正在深入研究Redshift查询调优。我对这项技术很陌生。我有一些基本问题和一些松散形式的解释,我希望我的确认或反驳。
这就是......
- 分配与广播业务:
到目前为止,我还没有在手册中找到最终告诉我差异的任何内容。我从计划中注意到的是,如果我选择分配方式ALL,我仍然会看到BCAST操作正在发生。有人可以解释一下这些操作之间的区别吗?
- 节点与切片:
我注意到手册,在分发操作的上下文中,它一度指示数据分布在节点上,另一点指示数据分布在切片上。我正在开发环境中分析一个节点和两个切片的计划。这是我松散形成的解释:
优化器是节点不可知的;它关心切片。可以将数据分发到与该目标节点驻留的切片相邻的节点。有人可以确认或反驳这个吗?
- 高基数加入
我试图调整两个具有多个高基数连接操作(没有主/外键)的大型事务表。除了阅读几个关于调整的博客之外,还经历了几个涉及dist风格和sortkeys的杂色迭代
松散形成的解释:Redshift擅长作为星/雪花模式,其中连接通常是低基数(Dims和事实表),但与事务表斗争。有人可以确认或反驳这个吗?
醇>
感谢您的见解。
谢谢!