AWS EMR 自动缩放

Har*_*are 0 hive amazon-web-services amazon-emr autoscaling

我正在研究 AWS 上的 Hive(特别是 EMR)。他们提供了两种选择

  1. 生成 Ad-hoc 集群,其中在评估执行预先指定的 Hive 查询(在引导程序中)后,将拆除 EMR 集群。
  2. 以交互模式生成 Hive 集群,可以通过 SSH 连接到主服务器并使用hive命令行客户端提供 Hive 查询。

显然,在第二个选项中,集群将保持活动状态,直到明确要求终止为止。

我想修改保持活动配置单元集群中从属节点的数量。我在emr faq中读到它只支持添加和删除,task-nodes但仅支持添加(但不删除)core-nodes。核心节点有助于 HDFS 存储,但任务节点则不然。

我想向正在运行的集群添加更多核心节点,并在运行的查询数量较少时缩小它们的规模。有没有办法实现这一点(可能使用cloudwatch)?

Guy*_*Guy 5

查询数量的增加和减少与任务节点(Hadoop 的计算部分)的数量关系更大,而与核心节点(Hadoop 的数据存储部分)的数量关系较小,因为数据量没有变化。

当您想要扩大和缩小查询时,重新平衡和重新分配数据并不是一个好主意。它太慢、太复杂,无法带来任何真正的好处。

“按使用量付费”以及无需 EMR 配置的快速启动应该会鼓励您在不需要集群时终止集群,并在需要时启动新集群。您可以优化 EMR 上的 Hive,以在集群启动之间将表元数据存储在外部 MySQL 数据库中,以避免丢失或重复表定义。