Oozie:oozie 是否生成输出事件?

Oozie: Does oozie generate output-events?

在 oozie 中,input-events 非常简单,如果指定的 file/folder 不存在,协调器作业将保持在 WAITING 状态。但我无法理解 output-events 的作用。

据我了解,在 output-events 标签中指定的 files/folders 应该由 oozie 创建,以防所有指定的操作都成功。但那不会发生。我也找不到任何相关日志。文档也不清楚这一点。

所以,问题是,Oozie 是否真的创建了 output-events 中指定的 files/folders?或者它只是提到这些特定的 files/folders 是在工作流程中创建的,创建的责任在工作上,而不是在 Oozie 上?

相关代码见https://gist.github.com/venkateshshukla/de0dc395797a7ffba153

总是动作产生数据,这些设置只是为了控制。 您会找到一些示例 here

Oozie Coordinator 的官方 Oozie 文档对 output-events 元素的确切用途不是很清楚。但是,"Apache Oozie: The Workflow Scheduler for Hadoop" 书中提到了以下内容:

During reprocessing of a coordinator, Oozie tries to help the retry attempt by cleaning up the output directories by default. For this, it uses the <output-events> specification in the coordinator XML to remove the old output before running the new attempt. Users can override this default behavior using the –noCleanup option.

所以,总结一下:

  • 不,Oozie 不会自动创建 output-events 中指定的文件,您需要在 Oozie 工作流操作中创建这些文件。
  • output-events 配置用于向 Oozie 提供关于哪些文件 由您的 Oozie 工作流程操作创建的信息,Oozie 将在 [=29] 时使用这些文件来清理文件=] 协调员。