首页 > 解决方案 > AWS Redshift 添加节点并从单节点更改为多节点以增加磁盘大小

问题描述

由于我是 Redshift 的新手,我有以下问题。

添加新节点以增加磁盘空间时,我需要选择哪种“分发方式”?

由于我的目的是增加磁盘空间,我是否需要考虑“分发样式”或已编写查询的任何更改(查询在单个节点中工作而没有任何问题)?

标签: amazon-web-servicesamazon-redshift

解决方案


随着越来越多的节点存在,分布变得重要。

每个节点将至少有 2 个切片,具体取决于您的数据在这些切片中的分布方式,执行查询时您的性能可能会受到影响。

您可以通过以下方式分发:

  • EVEN- 数据集在切片之间均匀分布,而如果您必须从其他切片执行此数据的连接,这将在所有节点上均匀分布存储,您可能会发现性能受到影响。它将极大地受益于没有连接的非规范化数据,因为它将在每个节点上获得 CPU 来执行计算。
  • KEYS- 数据集根据它们与其他数据的关系分布到切片中,这在表中使用连接时非常有用,但请注意数据可以不均匀地分布在切片中。
  • ALL- 每个切片获取整个数据集,对于小型数据集(小于 10GB 的表)或具有不经常更改的数据的数据集使用此选项。
  • AUTO- Redshift 负责分配样式并尝试为数据集选择正确的,您无法控制它所做的决策。

在做出决定之前,您应该考虑如何使用数据,因为它会影响您获得的存储和性能输出。


推荐阅读