我有以下文件夹结构,其中包含符合相同架构的内容 -
/project/20160101/part-v121
/project/20160105/part-v121
/project/20160102/part-v121
/project/20170104/part-v121
我已经实现了一个使用JSONLoader加载的猪脚本。处理单个文件。但是,我需要使它通用,以读取日期文件夹下的所有文件。
现在我已设法使用以下内容提取文件路径 -
hdfs -ls hdfs://local:8080/project/20* > /tmp/ei.txt
cat /tmp/ei.txt | awk '{print $NF}' | grep part > /tmp/res.txt
现在我需要知道如何将此列表传递给pig脚本,以便我的程序在所有文件上运行。
答案 0 :(得分:0)
我们可以在 LOAD 语句中使用正则表达式路径。
在您的情况下,以下声明应该有所帮助,如果您遇到任何问题,请与我们联系。
A = LOAD 'hdfs://local:8080/project/20160102/*' USING JsonLoader();
假设输入目录中有.pig_schema(由JsonStorage生成)。
参考:Authentication and authorization for API Apps in Azure App Service