Apache pig apache pig如何在filenames.txt中加载文件

Apache pig apache pig如何在filenames.txt中加载文件,apache-pig,Apache Pig,我有一个文件名列表存储在filenames.txt中。是否可以使用单个加载命令将它们全部加载到一起 它们不在同一目录中,也不具有类似的格式,因此不像使用/201308从20130801.gz加载到20130831.gz 此外,列表中的文件太多,使我无法执行以下操作: shell:pig-f script.pig-param input=/user/training/test/{20100810..20100812} pig:temp=使用SomeLoader()作为(…)加载“$input” 提

我有一个文件名列表存储在filenames.txt中。是否可以使用单个加载命令将它们全部加载到一起

它们不在同一目录中,也不具有类似的格式,因此不像使用/201308从20130801.gz加载到20130831.gz

此外,列表中的文件太多,使我无法执行以下操作:

shell:pig-f script.pig-param input=/user/training/test/{20100810..20100812}

pig:temp=使用SomeLoader()作为(…)加载“$input”


提前感谢您的见解

如果文件数量相当少(例如:在命令行中,您可以放入ARG_MAX),您可以尝试将文件中的行压缩为一个字符串:

pig -param input=`cat filenames.txt | tr "\n" ","` -f script.pig

script.pig:
A = LOAD '$input' ....

如果您可以选择列出目录而不是单个文件,可能会更好。

filenames.txt中有多少文件?对$input参数的值长度是否有系统或PIG限制?它可以工作。我提交了一个包含184个文件名的txt文件,总大小为13KB,它通过了。@alexeipab您可能有linux命令行参数的内存限制。(getconf ARG_MAX)