【问题标题】:Oozie - Dealing w/ 4-4-4 CalendarOozie - 使用 4-4-4 日历进行交易
【发布时间】:2017-10-05 13:48:27
【问题描述】:

我们有一个基于 4-4-4 日历(也就是每 4 周)安排的数据源。

我们希望使用协调器和触发器文件来通知数据到达。我想根据 yyyy/period_id 组织文件夹结构(一年有 13 个期间)。我们每个周期有 3 个数据馈送,每个数据馈送将在 3-4 天内交错到达......所以使用 mmdd 并不理想。

例如,日历如下所示。

开始日期 1 月 16 日

结束日期 12 月 18 日

  • 1 月 16 日实例 1 路径:2017/1/*
  • 2 月 13 日实例 2
  • 3 月 13 日实例 3
  • 4 月 10 日实例 4
  • 5 月 8 日实例 5
  • 6 月 5 日实例 6
  • 7 月 3 日实例 7
  • 7 月 31 日实例 8
  • 8 月 28 日实例 9
  • 9 月 25 日实例 10
  • 10 月 23 日实例 11
  • 11 月 20 日实例 12
  • 12 月 18 日实例 13 路径:2017/13/*

OOzie 语言中是否有一个函数可以为 oozie 协调器返回增量实例化 #?

即,7 月的第一个作业执行将返回 7,而 7 月的第二个作业执行将返回 8

我看错了吗?另一种选择是让脚本在表格中查找日期范围的值并返回期间 ID,这会有点复杂

谢谢

【问题讨论】:

    标签: hadoop oozie oozie-coordinator


    【解决方案1】:

    关于是否存在返回协调器实例的实例编号的 Oozie EL 函数的问题的简短回答是:不,据我所知。

    您可以编写一个自定义 EL 函数来进行日期计算(请参阅 answer here),该函数会根据一年中的当前日期返回一个期间编号。

    但是,我发现触发 Oozie 协调器的选项有些有限,因此,如果您发现自己花费更多时间试图找出解决 Oozie 限制的方法,您可能需要问自己是否适合工作的工具。

    【讨论】:

      猜你喜欢
      • 2018-08-28
      • 2020-11-16
      • 1970-01-01
      • 1970-01-01
      • 2021-04-20
      • 2021-01-02
      • 1970-01-01
      • 2020-12-22
      • 2018-09-02
      相关资源
      最近更新 更多