如何使用Ruby CLI客户端在Amazon Elastic MapRedu上启动基于JSON JobFlow描述的JobFlow

2024-09-27 00:17:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我为hadoop编写了一个mapreduce应用程序,并在一台机器上的命令行进行了测试。我的应用程序使用两个步骤Map1->;Reduce1->;Map2->;Reduce2 要在awsmapreduce上运行此作业,我将遵循以下链接http://aws.amazon.com/articles/2294。但我不清楚如何使用amazon提供的Ruby CLI客户端来完成所描述的所有工作。请引导。在

谢谢。在


Tags: 命令行gthadoop机器应用程序amazon链接作业
1条回答
网友
1楼 · 发布于 2024-09-27 00:17:15

首先创建默认的流式作业流(运行wordcount示例)。此时,您可以使用jobflow ID添加其他步骤。在我的示例中,第一个mapreduce作业将其结果存储在S3存储桶中。然后,该结果将成为第二个作业的输入。如果进入AWS控制台,您将在步骤选项卡下看到这些。在

您可以用这种方式继续链接作业,因为alive标志确保集群在您手动终止之前不会关闭。只需记住在最后一步完成时(作业流将返回等待状态),否则将对空闲时间收费。在

$ elastic-mapreduce  create  alive  stream  num-instances=1  master-instance-type=m1.small

Created job flow j-NXXXJARJARSXXX
$ elastic-mapreduce -j j-NXXXJARJARSXXX  stream \
  input   s3n://mybucket.data/2011/01/01/* \
  output  s3n://mybucket.joblog/step1done-2011-01-01 \
  mapper  s3n://mybucket.code/map.rb \
  reducer s3n://mybucket.code/reduce.rb

Added jobflow steps
$ elastic-mapreduce -j j-NXXXJAJARSXXX  stream \
  input   s3n://mybucket.joblog/step1done-2011-01-01/part-*  \
  output  s3n://mybucket.joblog/job-results \
  mapper  s3n://mybucket.code/map.rb \
  reducer s3n://mybucket.code/reduce.rb

Added jobflow steps

相关问题 更多 >

    热门问题