2012-10-29 34 views
2

我不明白Ozzie中输出事件的用途是什么。 Ozzie文档声明“协调员操作可以生成一个或多个数据集实例作为输出”,但它没有给出任何实际的细节或示例。生成一个数据集实例作为输出是什么意思?这是否意味着Ozzie将通过数据集的URI模板创建一个文件夹输出?我真的不明白为什么我应该使用输出伊芙...Oozie输出事件

谢谢!

回答

1

如果您在谈论Oozie,输出文件将用于连接不同的协调器作业。考虑一个协调员工作的大DAG,有些工作可能会将其他工作的输出作为其输入。所以数据集是DAG中的边缘。

例如,在Oozie配置文件中,如果指定协调器A的输出为DS1,协调器B的输出为DS2,协调器C的输入为DS1,DS2,则Oozie会保证您在协调器C中的相应操作在DS1和DS2准备就绪之前不会执行。

+0

感谢您的回答。但是我仍然不明白协调器XML中节点的实际用途是什么。在你的例子中,你实际上是在描述输入事件的需要。您的示例中需要输出事件?因为即使我不会分别在协调器A和B的中指定DS1和DS2,协调器C仍然依赖于DS1和DS2,因为它们可能在其输入事件中声明。那么输出事件节点的实际用途是什么,而不仅仅是名义上的用途?谢谢 :) – gipouf

1

至少有一个使用您的协调指定<output-event> S的。当重新运行某个日期范围的协调器时(使用oozie job -rerun命令),指定为<output-event>的所有相应路径将被删除。

有时是除去由协调器的情况下产生的所有输出是有用的。例如,当您想要启动另一个具有这些路径的协调器时,您需要确保它将处理重新运行的数据而不是旧数据。