Oozie自定义EL函数在哪里执行

时间:2015-12-09 17:35:26

标签: oozie

我正在编写一个自定义EL函数,该函数将用于oozie工作流程。

这个自定义函数只是普通的java代码,它不包含任何hadoop代码。

我的问题是,在工作流程运行时,EL函数将在何处执行?

它会在Oozie节点上执行我的EL功能吗?或者它会将我的自定义java代码推送到其中一个数据节点并在那里执行吗?

2 个答案:

答案 0 :(得分:0)

Oozie是一个工作流程调度程序系统,用于自行管理Hadoop集群中的作业,它与Hadoop堆栈的其余部分集成,支持开箱即用的几种类型的Hadoop作业(例如Java map-reduce,Streaming map-reduce, Pig,Hive,Sqoop和Distcp)以及系统特定的作业(例如Java程序和shell脚本)。 Source

这意味着如果您在Oozie中提交作业,它将自行运行在任何可用的DataNode中,即使您的Oozie服务在Datanode中配置,那么它也可以在那里运行。

为了检查作业正在处理哪个节点,你必须从Hadoop1中的JobTracker或Hadoop2中的Yarn检查相同的内容,它将进程状态重定向到正在处理作业的TaskTracker节点

答案 1 :(得分:0)

根据ITARF,第177页,它指出:

  

强烈建议新的EL功能简单,快速且   强大的。这很关键,因为Oozie会在   Oozie服务器

因此它将在您的Oozie节点本身上执行。