Hadoop oozie可以忽略丢失的输入文件吗?

Hadoop oozie可以忽略丢失的输入文件吗?,hadoop,oozie,Hadoop,Oozie,在我的oozie coordinator.xml文件中,我将以下内容定义为输入目录: <property> <name>countingHourlyInputDir</name> <value>${coord:dataIn('hourly-input')}/*Pattern1*,${coord:dataIn('hourly-input')}/*Pattern2*</value> </property> wo

在我的oozie coordinator.xml文件中,我将以下内容定义为输入目录:

<property>
    <name>countingHourlyInputDir</name>
    <value>${coord:dataIn('hourly-input')}/*Pattern1*,${coord:dataIn('hourly-input')}/*Pattern2*</value>
</property>
workflow.xml:

<property>
    <name>mapred.input.pathFilter.class</name>
    <value>com.company.project.hadoop.util.RegexPathFilter</value>
</property>
<property>
    <name>regexPathFilter.regex</name>
    <value>.*(Pattern1|Pattern2).*</value>
</property>

mapred.input.pathFilter.class
com.company.project.hadoop.util.RegexPathFilter
regexPathFilter.regex
.*(模式1 |模式2)*

这个问题背后的原因是

我也面临着同样的问题,并通过对模式和零代码进行轻微更改来解决它

替换

<property>
    <name>countingHourlyInputDir</name>
    <value>${coord:dataIn('hourly-input')}/*Pattern1*,${coord:dataIn('hourly-input')}/*Pattern2*</value>
</property>

countingHourlyInputDir
${coord:dataIn('hourly-input')}/*模式1*,${coord:dataIn('hourly-input')}/*模式2*


countingHourlyInputDir
{${coord:dataIn('hourly-input')}/{*Pattern1*,*Pattern2*}
在这个替换之后,hadoop只有在目录中包含既不匹配pattern1也不匹配pattern2的文件时才会抛出错误

<property>
    <name>countingHourlyInputDir</name>
    <value>${coord:dataIn('hourly-input')}/*Pattern1*,${coord:dataIn('hourly-input')}/*Pattern2*</value>
</property>
<property>
    <name>countingHourlyInputDir</name>
    <value>{${coord:dataIn('hourly-input')}}/{*Pattern1*,*Pattern2*}</value>
</property>