在pig中加载多个文件 - 扩展

时间:2013-12-17 10:59:39

标签: hadoop apache-pig

请帮帮我... 我花了很多时间在这上面。

我在文件夹中有文件,我希望根据文件名的顺序加载它们。

我甚至去编写Java代码以扩展文件名以匹配以下链接中的指南中的格式。

  1. Load multiple files in pig
  2. Pig Latin: Load multiple files from a date range (part of the directory structure)
  3. http://netezzaadmin.wordpress.com/2013/09/25/passing-parameters-to-pig-scripts/
  4. 我正在使用猪11.0

    在我的script.pig中,

        set io.sort.mb 10;
        REGISTER 'path_to/lib/pig/piggybank.jar';
    
        data_ = LOAD '$input' USING org.apache.pig.piggybank.storage.XMLLoader('Data') AS (data_:chararray);
        DUMP data_;
    

    在shell中

        [root@servername currentfolder]# pig -x local script.pig -param input=/20131217/{1..10}.xml
    

    返回错误:

        [main] ERROR.org.apache.pig.Main - ERROR 2999: Unexpected error. Undefined parameter : input
    

1 个答案:

答案 0 :(得分:0)

我不知道你为什么使用输入参数。

例如,为了加载文件夹MyFolder / CurrentDate /(YYYYMMDD格式)中的每个文件,我使用以下脚本:

%default DATE `date  +%Y%m%d`;
x_basic_table = LOAD '/MyFolder/$DATE';

美好的一天