在oozie中,input-events非常简单,如果指定的文件/文件夹不存在,协调器作业将保持在WAITING状态。但我不明白output-events做了什么。
根据我的理解,在output-events标记中指定的文件/文件夹应该由oozie创建,以防所有指定的操作都成功。但这是不可能的。我也找不到任何相关的日志。这方面的文件也不清楚。
所以,问题是,Oozie真的创建了output-events中指定的文件/文件夹吗?还是仅仅提到这些特定的文件/文件夹是在工作流期间创建的,而创建的责任是在作业上,而不是在Oozie上?
相关代码可在https://gist.github.com/venkateshshukla/de0dc395797a7ffba153上找到
发布于 2016-01-29 16:35:44
这些操作总是生成数据,这些设置只是为了控制。你会发现一些例子,这里
发布于 2017-03-23 03:58:58
Oozie协调员的正式Oozie文档对于output-events元素的确切用途并不十分清楚。然而,"Apache Oozie: Workflow Scheduler for Hadoop“一书提到了以下内容:
在协调器的重新处理过程中,Oozie试图通过清除默认的输出目录来帮助重试尝试。为此,它在运行新尝试之前使用协调器XML中的
<output-events>规范删除旧输出。用户可以使用–noCleanup选项覆盖此默认行为。
因此,总括而言:
output-events中指定的文件不是由Oozie自动创建的,您需要在Oozie工作流操作中创建这些文件。output-events配置用于提供关于Oozie工作流操作将创建哪些文件的信息,在重新运行/重新处理协调器时,Oozie将使用这些操作来清理文件。https://stackoverflow.com/questions/33234195
复制相似问题