将多个目录中的多个文件加载到Pig中

时间:2016-09-09 07:29:23

标签: hadoop apache-pig

您好我有一个目录,其子目录类似于此a1,a2,..a8.,并且每个目录都有多个文件,如

  bat-a1-0-0
  bat-a1-0-1
  bat-a1-1-0
  bat-a1-1-1
  ...
  bat-a1-31-0
  bat-a1-31-1

和子目录a2类似

bat-a2-0-0
bat-a2-0-1
bat-a2-1-0
bat-a2-1-1
...
bat-a2-31-0
bat-a2-31-1

为了不使事情复杂化,我决定做的是使用多个LOAD语句来加载每个目录并找到UNION获取所有目录的方法。但我不知道如何使用Apache Pig version 0.10.0-cdh4.2.1加载每个目录中的文件,因为它们似乎不遵循简单的模式。需要帮助谢谢。

1 个答案:

答案 0 :(得分:1)

事实上,这可能比你想象的要简单。如果你加载猪的文件,你可以简单地指向一个目录,猪将递归加载所有文件。甚至那些可能深深嵌套的那些。

所以解决方案是:确保所有数据都在1(或几个)目录下,并加载它们。