返回顶部
首页 > 资讯 > 精选 >Oozie的coordinator怎么配置
  • 914
分享到

Oozie的coordinator怎么配置

2023-06-04 00:06:10 914人浏览 独家记忆
摘要

这篇文章主要介绍“Oozie的coordinator怎么配置”,在日常操作中,相信很多人在Oozie的coordinator怎么配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Oozie的coordinat

这篇文章主要介绍“Oozie的coordinator怎么配置”,在日常操作中,相信很多人在Oozie的coordinator怎么配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Oozie的coordinator怎么配置”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

coordinator是workflow的定时提交器,基于时间条件与数据生成触发(based on time and data triggers)。简单点说,coordinator按所定义的时间周期进行轮询,若数据生成条件满足,则触发workflow任务;否则,则等待数据生成或跳过(调度策略由设置的超时时间决定)。

coordinator-app

coordinator-app name="coord-demo" frequency="${coord:days(1)}" start="${start_time}" end="${end_time}"timezone="Asia/Shanghai" xmlns="uri:oozie:coordinator:0.1"

文件头定义了coordinator任务的名称,执行频率(frequency),开始与起止时间(start、end)。${coord:days(1)}为coordinator内置的EL function (Expression Language),表示为执行周期为一天。frequency的时间单位为分钟,则${coord:days(1)}=1440,${coord:hours(3)}=180. 一般地,在job.properties定义如:start_time=2016-06-07T00:00Z,应以UTC时区为准。

Control information

<controls>    <!--超时时间,若为0,一旦数据生成超时则coordinator action被丢弃;    若为-1,则一直等待数据生成;    若 > 0,即为超时时间(单位:分钟)-->    <timeout>-1</timeout>    <!--并发action数-->    <concurrency>1</concurrency>    <!--同时被触发的多个coordinator job的执行次序-->    <execution>${execution_order}</execution></controls>

datasets

<datasets>    <!--数据生成目录-->    <dataset name="data" frequency="${coord:hours(1)}" initial-instance="${start_time}" timezone="${timezone}">      <uri-template>${namenode}/path/to/${YEAR}-${MONTH}-${DAY}/${HOUR}/</uri-template>      <done-flag></done-flag>    </dataset></datasets>

相关参数:

  • initial-instance,对应初始时间的数据目录,作为时间周期偏移的基准目录

  • uri-template,文件目录hdfs目录,${YEAR}、${MONTH}等为EL Time Constants,具体数值由 传入,也可通过job.properties传入自定义的参数。

  • done-flag,数据目录生成的文件标识,若未指定,则默认为 _SUCCESS 文件;若指定为空,则表示文件夹本身。

  • input-events

    <input-events>    <data-in name="dataReady" dataset="data">      <instance>${coord:current(-1)}</instance>    </data-in></input-events>

    定义了数据触发条件,${coord:current(-1)}表示对于当前时间的偏移,其中偏移量=数值* dataset frequency。有些时候,我们要判断多个目录是否生成,比如,判断一天的24个小时目录,这时应这样写:

    <data-in name="dataReady2" dataset="data">  <start-instance>${coord:current(-24)}</start-instance>  <end-instance>${coord:current(-1)}</end-instance></data-in>

    action

    <action>    <workflow>      <app-path>${wf_app_path}</app-path>      <configuration>        <property>          <name>dayTime</name>          <value>${coord:fORMatTime(coord:dateOffset(coord:nominalTime(), -1, 'DAY'), 'yyyy-MM-dd')}</value>        </property>      </configuration>    </workflow></action>

    定义coordinator要触发的workflow,

  • app-path,workflow所在的HDFS目录;

  • property,定义传给workflow的参数

  • coordinator提供了一些用于时间计算的函数,比如:

  • coord:nominalTime(),返回coordinator的每一执行周期的当前时间;

  • coord:dateOffset(String baseDate, int instance, String timeUnit),计算偏移后的时间,newDate = baseDate + instance * timeUnit;

  • coord:formatTime(String ts, String format),定义格式化的时间,其中format应遵循Java's SimpleDateFormat。

  • 返回多个时间:

    <value>${coord:formatTime(coord:dateOffset(coord:dateOffset(coord:nominalTime(), -12, 'HOUR'), -6, 'DAY'), 'yyyy-MM-dd')},${coord:formatTime(coord:dateOffset(coord:dateOffset(coord:nominalTime(), -12, 'HOUR'), -5, 'DAY')</value>

到此,关于“Oozie的coordinator怎么配置”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Oozie的coordinator怎么配置

本文链接: https://lsjlt.com/news/236028.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Oozie的coordinator怎么配置
    这篇文章主要介绍“Oozie的coordinator怎么配置”,在日常操作中,相信很多人在Oozie的coordinator怎么配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Oozie的coordinat...
    99+
    2023-06-04
  • 如何安装和配置Apache Oozie
    Apache Oozie是一个用于协调和调度Hadoop作业的工作流引擎。下面是安装和配置Apache Oozie的基本步骤: ...
    99+
    2024-04-02
  • 怎么编译Oozie
    本篇内容介绍了“怎么编译Oozie”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、什么是工作流?工作流(WorkFlow)就是工作流程的计...
    99+
    2023-06-02
  • oozie创建工作流,手动配置和使用H
    工作流的执行命令参考博客:https://www.jianshu.com/p/6cb3a4b78556,也可以键入oozie help查看帮助 手动配置oozie的workflow job.properties文件,存放workflow...
    99+
    2023-01-31
    工作流 oozie
  • Oozie与Hadoop的关系是什么
    Oozie是一个用于管理和执行Hadoop作业的工作流引擎。它与Hadoop的关系是,Oozie允许用户定义复杂的工作流程,包括Ha...
    99+
    2024-04-02
  • Oozie的安全性和权限管理如何设置
    Oozie提供了一种基于ACL(Access Control List)的权限管理机制,可以通过配置文件和命令行工具来设置Oozie...
    99+
    2024-04-02
  • Hadoop中Oozie组件的作用是什么
    Oozie是Hadoop生态系统中的一个工作流调度系统,用于协调和管理复杂的数据处理工作流。它提供了一个基于XML的工作流描述语言,...
    99+
    2024-03-12
    Hadoop
  • jsp的extremecomponents怎么配置
    要配置jsp的extremecomponents,您可以按照以下步骤进行操作:1. 首先,将extremecomponents的ja...
    99+
    2023-09-29
    jsp
  • python的flask怎么配置
    这篇文章主要讲解了“python的flask怎么配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python的flask怎么配置”吧!  配置flask的一些问题  首先给上相关配置代码 ...
    99+
    2023-06-02
  • 怎么配置eclipse的jdk
    要配置Eclipse的JDK,您可以按照以下步骤进行操作:1. 确保您已经安装了JDK(Java Development Kit)并...
    99+
    2023-08-23
    eclipse jdk
  • 阿里云配置web服务器配置怎么设置的
    简介 在阿里云上搭建Web服务器是一项常见的需求,但具体的配置步骤可能会让人感到困惑。本文将详细介绍如何在阿里云上配置Web服务器,包括域名解析、SSL证书申请和网站目录设置等。1. 域名解析要将域名与阿里云服务器关联起来,首先需要进行域名...
    99+
    2024-01-17
    阿里 服务器配置 web
  • java怎么配置
    window系统安装java下载JDK首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击如下下载按钮...
    99+
    2020-12-17
    java
  • 怎么配置phpmyadmin
    小编给大家分享一下怎么配置phpmyadmin,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!下载phpMyAdmin并解压,打开...
    99+
    2024-04-02
  • phpmyadmin怎么配置
    小编给大家分享一下phpmyadmin怎么配置,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 开启记录history的参数是以下这个,当设置为true后就能将...
    99+
    2024-04-02
  • package.json怎么配置
    这篇文章主要介绍“package.json怎么配置”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“package.json怎么配置”文章能帮助大家解决问题。 默认值...
    99+
    2024-04-02
  • PHP怎么配置
    这篇文章将为大家详细讲解有关PHP怎么配置,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Apache 2可采取2种方式来运行PHP程序:通过一个CGI接口来运行(外部调用Php.exe),或者使用PHP的...
    99+
    2023-06-17
  • Hibernate.cfg.xml怎么配置
    这篇文章主要讲解了“Hibernate.cfg.xml怎么配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Hibernate.cfg.xml怎么配置”吧!Hibernate的描述文件可以是...
    99+
    2023-06-17
  • 怎么配置SELinux
    今天小编给大家分享一下怎么配置SELinux的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。SELinux是针对特定的进程与指...
    99+
    2023-06-27
  • 怎么配置Tasks
    这篇文章主要介绍“怎么配置Tasks”,在日常操作中,相信很多人在怎么配置Tasks问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么配置Tasks”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!配置Tas...
    99+
    2023-06-27
  • Controller怎么配置
    本篇内容介绍了“Controller怎么配置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Controller是MVC中的控制部分,主要的功...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作