Hadoop Oozie Coordinator中数据集的延迟

Hadoop Oozie Coordinator中数据集的延迟,hadoop,hdfs,bigdata,oozie,Hadoop,Hdfs,Bigdata,Oozie,希望有一个基于配置单元分区中的数据集的可用性运行的作业。我已经让这个工作,但现在我希望它运行,使我所有的饲料运行在名义上的时间,但一个将始终运行在一天延迟。因此,如果今天是5-19,所有的饲料需要有5-19除了一个,我们将需要5-18 这就是我目前拥有的: <dataset name="mvHost" frequency="${coord:days(1)}" initial-instance="${jobStart}" timezone="America/New_York">

希望有一个基于配置单元分区中的数据集的可用性运行的作业。我已经让这个工作,但现在我希望它运行,使我所有的饲料运行在名义上的时间,但一个将始终运行在一天延迟。因此,如果今天是5-19,所有的饲料需要有5-19除了一个,我们将需要5-18

这就是我目前拥有的:

    <dataset name="mvHost" frequency="${coord:days(1)}" initial-instance="${jobStart}" timezone="America/New_York">
        <uri-template>${nameNode}/apps/hive/warehouse/uat_db.db/mv_host/create_date=${YEAR}${MONTH}${DAY}</uri-template>
        <done-flag></done-flag>
    </dataset>
    <!-- ensure MV_INTERFACE exists on partition date, need to delay by ONE day -->
    <dataset name="mvInterface" frequency="${coord:days(1)}" initial-instance="${jobStart}" timezone="America/New_York">
        <uri-template>${nameNode}/apps/hive/warehouse/uat_db.db/mv_interface/create_date=${YEAR}${MONTH}${DAY}</uri-template>
        <done-flag></done-flag>
    </dataset>

</datasets>
<input-events>
    <data-in name="input1" dataset="mvHost">
        <instance>${coord:current(0)}</instance>
    </data-in>
    <data-in name="input2" dataset="mvInterface">
        <instance>${coord:current(0)}</instance>
    </data-in>
</input-events>
灌输延迟的最佳方式是什么?我尝试将实例编辑为${coord:current-24},但失败了。此外,我还尝试在MV_接口的初始实例上使用coord:dateOffset,但协调器永远不会构建

有什么建议吗?

我想你需要这里。 它可以在任何使用${coord:currentn}的地方使用,但允许您在数据集具体化时指定正时间偏移量和负时间偏移量。 以你为例:

   <datasets>
    <dataset name="mvHost" frequency="${coord:days(1)}" initial-instance="${jobStart}" timezone="America/New_York">
        <uri-template>${nameNode}/apps/hive/warehouse/uat_db.db/mv_host/create_date=${YEAR}${MONTH}${DAY}</uri-template>
        <done-flag></done-flag>
    </dataset>
    <!-- ensure MV_INTERFACE exists on partition date, need to delay by ONE day -->
    <dataset name="mvInterface" frequency="${coord:days(1)}" initial-instance="${jobStart}" timezone="America/New_York">
        <uri-template>${nameNode}/apps/hive/warehouse/uat_db.db/mv_interface/create_date=${YEAR}${MONTH}${DAY}</uri-template>
        <done-flag></done-flag>
    </dataset>
</datasets>

<input-events>
    <data-in name="input1" dataset="mvHost">
        <instance>${coord:current(0)}</instance>
    </data-in>
    <data-in name="input2" dataset="mvInterface">
        <instance>${coord:offset(-1, "DAY")}</instance>
    </data-in>
</input-events>
如果2016-01-01T00:00是协调器物化时间,则 数据集mvHost物化时间将与2016-01-01T00:00相同, 数据集接口将为2015-12-31T00:00