Python 如何使用Ruby CLI客户端在Amazon Elastic MapReduce上基于JSON作业流描述启动作业流
我已经为hadoop编写了一个mapreduce应用程序,并在一台机器上的命令行上对其进行了测试。我的应用程序使用两个步骤Map1->Reduce1->Map2->Reduce2 要在aws mapreduce上运行此作业,我将遵循以下链接。但我不清楚如何使用amazon提供的Ruby CLI客户端来完成所描述的所有工作。请导游Python 如何使用Ruby CLI客户端在Amazon Elastic MapReduce上基于JSON作业流描述启动作业流,python,ruby,amazon-web-services,hadoop,mapreduce,Python,Ruby,Amazon Web Services,Hadoop,Mapreduce,我已经为hadoop编写了一个mapreduce应用程序,并在一台机器上的命令行上对其进行了测试。我的应用程序使用两个步骤Map1->Reduce1->Map2->Reduce2 要在aws mapreduce上运行此作业,我将遵循以下链接。但我不清楚如何使用amazon提供的Ruby CLI客户端来完成所描述的所有工作。请导游 谢谢。首先创建运行wordcount示例的默认流式作业流。此时,您可以使用jobflow ID添加其他步骤。在我的示例中,第一个mapreduce作业将其结果存储在S3
谢谢。首先创建运行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
这个问题的描述与题目不完全相符。我试图回答所描述的问题。也许您想扩展JSON部分?