这个Apache文档说Apache操作是异步的。但是它也提到了检查动作状态的机制。
3.2.1.2动作是异步的 由操作节点触发的所有计算/处理任务都由Oozie异步执行。对于由工作流操作触发的大多数类型的计算/处理任务,工作流作业必须等到计算/处理任务完成后才能转换到工作流中的以下节点。 异常是作为同步操作处理的fs操作。 Oozie可以通过两种不同的方式检测计算/处理任务的完成,即回调和轮询。 当Oozie启动计算/处理任务时,Oozie为该任务提供一个唯一的回调URL,该任务应该调用给定的URL通知其完成。 对于任务因任何原因(即瞬态网络故障)未能调用回调URL或任务类型在完成时无法调用回调URL的情况,Oozie具有轮询计算/处理任务以完成任务的机制。
因此,在一个操作(例如MapReduce作业)被触发后,会发生什么,直到当前操作完成/失败或自动转移到下一个任务。但是下一个任务是根据当前任务状态来决定的。
<ok to="myNextAction"/>
<error to="errorCleanup"/>
那么,“动作是异步的”是什么意思呢?
发布于 2015-10-23 00:22:57
Oozie对工作流中的每个动作都有主要的MR作业(工作流作业)和MRs。工作流作业只负责处理工作流(启动任务并等待完成)。操作在单独的MR中执行,这意味着它们是异步的。
https://stackoverflow.com/questions/33297476
复制相似问题