特定のHDFSの場所にファイルが存在するかどうかをチェックしたいと思います。OOZIEで正規表現を使用するには?
我々はFSの助けを借りて、与えられたHDFSの場所に存在するか、いないファイルを確認することができます:ファイル名は、我々は、日付の値がパラメータtoday
のようにすなわち得ることができコーディネートジョブの助けを借りてtest_25082016
である場合、すなわち
存在します私たちの例。
job.prop
path=/user/cloudera/file/input/test_
workflow.xmlで
<decision name="CheckFile">
<switch>
<case to="nextOozieTask">
${fs:exists(concat(concat(nameNode, path),today))}
</case>
<case to="nextOozieTask1">
${fs:exists(concat(concat(nameNode, path),yesterday))}
</case>
<default to="MailActionFileMissing" />
</switch> </decision>
期待通りに働いています。
私の場合、私のHDFSの場所にファイル名があります。
例:test_25082016_08.10.06.681.csv ,test_24082016_08.13.16.681.csv
等... _08.13.16.681.csv
、すなわち日付値、すなわち_08.10.06.681.csv
後にファイル名をこの種類を確認する方法。
は、それがこれらの値をチェックするために、oozieワークフローで正規表現を使用することが可能です。この場合、ファイルに検証する方法_08.10.06.681.csv
をすなわちoozieて存在しないかではないでしょうか?
私はこの前もってお手伝いをしてください。この場合