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