如何加速亚马逊EMR bootstrap?

时间:2012-05-23 02:55:07

标签: amazon-emr

我正在使用亚马逊EMR进行一些密集型计算,但是,开始计算大约需要7分钟,是否有一些聪明的方法让我的计算立即启动?计算是一个从面向用户的网站开始的python流,所以我无法承受长期的创业。

我可能只是错过了亚马逊AWS的海洋选项。我只是想简单地启动工作(这就是我使用的EMR),可扩展性,并且只为我使用的东西付费(并且启动时间没用)。

3 个答案:

答案 0 :(得分:6)

我知道这是一个老问题,但我会向下一位搜索者添加一些见解,他们发现这个帖子希望加快Amazon EMR上的自举时间。

有一段时间我想知道为什么我的星团开始这么长时间,通常是大约15分钟。对于通常在1小时内完成的工作,这需要相当大的时间。有时它推动工作超过1小时,但我认为AWS不会为完整的启动时间充电。

过去几天我注意到我的启动时间有所改善。您可以看到现货市场在4月和5月的第一周变得非常不稳定。通常情况下,我完全使用spot实例启动我的集群,因为失败是一种选择,并且在我的情况下节省成本是合理的。然而,在等待14个小时开始集群之后,我不得不切换到OnDemand,我只有这么大的耐心,过夜通常会超过它。 OnDemand集群在大约5分钟后开始。由于疯狂似乎已经减弱,现在已经转回现场,我回到了15分钟的集群。

因此,如果您在Core或Master节点上使用Spot实例,则需要更长的启动时间。我将尝试在核心中使用一小组OnDemand,并使用大量现场实例进行扩充,以查看它是否有助于启动并更好地处理现货市场波动。

答案 1 :(得分:2)

这很正常,你几乎无能为力。我正在开始100多个节点集群,我看到它们需要15分钟才能开始处理。考虑到后台正在进行的工作量,我非常乐意让他们在15分钟左右的时间内完成群集配置并读取可能需要的任何数据。我害怕野兽的本性。

答案 2 :(得分:1)

您的数据源托管在哪里?

如果在S3(可能)上,如果你有很多小文件,那就是花费时间的每个连接(每个文件)的延迟。

如果这是唯一的原因,那么你的7分钟启动时间将从S3时间转换为约5分钟的读数=> S3上的~1GB输入文件