估算并行计算的计算成本

时间:2013-06-19 19:46:48

标签: hadoop amazon-s3 amazon-ec2 mapreduce elastic-map-reduce

我对并行计算世界很陌生。我的团队使用Amazon EC2和S3来管理所有数据,这真的为我开启了一个新的世界。

我的问题是如何估算计算成本。假设我在Amazon S3上有n个带有k个文件的TB数据(例如,我有0.5个TB数据和7000个zip文件),我想遍历所有文件,并使用Pig Latin为每一行执行一个正则表达式匹配操作的文件。

我对估算这些费用非常感兴趣:

  1. 我应该选择多少个实例来执行此任务?是什么 实例的容量(主实例的大小和 map-reduce实例)?我可以扣除这些能力和成本吗? 基于n和k以及每个运营成本?
  2. 我设计了一个示例数据流:我使用了一个xlarge实例 我的主节点和10个媒体实例作为我的地图减少组。 这还够吗?
  3. 如何最大化每个实例的带宽以从S3获取数据?从我设计的数据流,看起来S3的读取速度大约是每分钟250,000,000字节。准确地将多少数据传输到ec2实例?这会成为我工作流程的瓶颈吗?

1 个答案:

答案 0 :(得分:1)

恕我直言,这完全取决于您的需求。您需要根据要执行的计算强度来选择它。显然,您可以根据数据集以及要对该数据执行的计算量来降低成本。

2-对于多少数据?什么样的操作?延迟/吞吐量?对于POC和小项目来说似乎已经足够了。

3-它实际上取决于几个方面,例如 - 您是否与S3端点位于同一区域,您在某个时间点遇到的特定S3节点等。您可能最好使用EBS例如,如果你需要更快的数据访问,恕我直言。您可以将EBS卷安装到EC2实例,并保留您经常需要的数据。否则,一些简单的解决方案是在服务器之间使用10千兆位连接,或者使用专用(昂贵)实例。但是,没有人能够保证数据传输是否会成为瓶颈。有时它可能。

我不知道这是否能完全解决您的问题,但他们的Monthly Calculator肯定会这样做。