Oozie是一个工作流引擎服务器,用于运行Hadoop Map/Reduce和Hive等任务工作流. 同时Oozie还是一个Java Web程序,运行在Java Servlet容器中,如Tomcat中。 Oozie以action为基本任务单位,可以将多个action构成一个DAG图(有向无环图Direct Acyclic Graph)的模式进行运行。 Oozie工作流通过HPDL(一种通过XML自定义处理的语言)来构造Oozie的工作流。 一个oozie服务器主要包括四个服务:Oozie Workflow、Oozie Coordinator、Oozie Bundle和Oozie SLA(oozie服务器等级协定)。
Oozie Workflow: 该组件用于定义和执行一个特定顺序的mapreduce、hive和pig作业。 Oozie Coordinator:该组件用于支持基于事件、系统资源存在性等条件的workflow的自动化执行。 Oozie Bundle:该引擎可以定义和执行"一束"应用,从而提供一个批量化的方法,将一组Coordinator应用程序一起进行管理。 Oozie服务器等级协定(Service Level Agreement, SLA):该组件支持workflow应用程序执行过程的记录跟踪。
Oozie使用tomcat等服务器作为web界面展示容器,使用关系型数据库存储oozie的工作流元数据,默认使用debry,由于debry的缺点,一般情况使用mysql作为oozie的元数据库,使用extjs来作为报表展示js框架。 安装步骤:
安装步骤:
安装步骤: