【问题标题】:How to run oozie for historic dates?如何为历史日期运行 oozie?
【发布时间】:2014-03-10 12:47:18
【问题描述】:

我正在尝试为历史日期运行 oozie 协调器,例如

start-date = 2013-02-01T00:00Z 
end-date = 2013-03-15T00:00Z
frequency = 1 day

Oozie 应该立即开始/实现这些天的所有行动

2013-02-01T00:00Z
2013-02-02T00:00Z
2013-02-03T00:00Z
2013-02-04T00:00Z
...
...
2013-03-15T00:00Z

但是 Oozie 不是每天生成/执行一个操作,我必须等待 43 天才能看到结果。 有什么方法可以立即执行这些操作?

【问题讨论】:

    标签: java hadoop oozie oozie-coordinator


    【解决方案1】:

    协调器中的显式超时控制 (-1) 解决了问题,并且每 5 分钟执行一次操作。 我们可以配置这个 5 分钟的间隔吗?

    <controls>
        <timeout>-1</timeout>
    </controls>
    

    【讨论】:

    • 是的,在您的 Oozie 服务器的 oozie-site.xml 文件中配置 oozie.service.CoordMaterializeTriggerService.lookup.interval(以秒为单位)。
    【解决方案2】:

    如果我明白你在问什么,那应该很容易做到。

    <coordinator-app name="${coordName}" frequency="${coord:endOfDays(1)}"
    start="${start}" end="${end}" timezone="UTC" xmlns="uri:oozie:coordinator:0.1">
    

    您可以将${start}设置为您想要的开始历史日期

    【讨论】:

    • 正如您在描述中看到的那样,我已经正确地制作了工作流/协调器但得到了意想不到的结果。现在我通过添加显式超时值解决了这个问题。您知道我们如何配置它最小实现值 5 分钟?谢谢。
    • 你能添加你的协调器xml文件和你用来运行oozie的属性文件吗?
    • 你可以使用-dryrun查看协调器输出
    猜你喜欢
    • 1970-01-01
    • 2020-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-04
    • 2016-10-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多