我有一个执行三个任务的Amazon EMR作业流程,第一个任务的输出是随后两个任务的输入。第二个任务的输出由第三个任务DistributedCache使用。
我已经在EMR网站(控制台)上完全创建了工作流程,但是集群立即失败了,因为它找不到分布式缓存文件-因为尚未在步骤#1中创建它。
我唯一的选择是通过boostrap操作从CLI创建这些步骤并指定--wait-for-steps
选项吗?我无法执行一个任务的输入依赖于另一任务的输出的多步骤作业流程,这似乎很奇怪。
最后,我通过创建一个自举但没有步骤的Amazon EMR集群解决了这个问题。然后我通过SSH进入头部并在控制台上运行hadoop作业。
现在,我可以灵活地将它们添加到每个作业具有单独配置选项的脚本中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句