猪加载多个顺序文件
Pig load multiple sequential files
假设一个目录下有多个文件,如果将目录传给Pig Load
A = LOAD '/SomeDir/'
它将一次加载所有文件(我想以任何顺序..我不确定)。但是考虑文件名是否是动态的并且也是按顺序排列的,例如根据日期,如何按该顺序调用 Pig 加载?或者可以使用unix list directory 命令ls
?
/SomeDir$ls
20150101.csv
20150102.csv
20150104.csv
.......
#Pig load files at once while keeping the order
Pig LOAD 语句用于从指定位置读取输入数据。
假设你的猪命令是:
A = load '/data/examples/file.txt';
表示你指定从file.txt读取数据,在/data/examples/
[=39=位置可用]
假设你的 pig 命令是:
A = load '/data/examples/';
目录中有多个文件,比如
20150101.csv
20150102.csv
20150104.csv
表示您指定从以下目录读取数据:/data/examples/
在这种情况下,Pig 将在您指定的目录下找到所有文件,并将它们用作该加载语句的输入,读取将从第一个文件开始按顺序进行。
如果您指定的目录有其他目录,这些目录中的文件也将被包括在内。
下面的 link 将有助于深入理解 LOAD
函数。
http://pig.apache.org/docs/r0.8.1/udf.html#Load+Functions
http://chimera.labs.oreilly.com/books/1234000001811/ch05.html#pl_load
假设一个目录下有多个文件,如果将目录传给Pig Load
A = LOAD '/SomeDir/'
它将一次加载所有文件(我想以任何顺序..我不确定)。但是考虑文件名是否是动态的并且也是按顺序排列的,例如根据日期,如何按该顺序调用 Pig 加载?或者可以使用unix list directory 命令ls
?
/SomeDir$ls
20150101.csv
20150102.csv
20150104.csv
.......
#Pig load files at once while keeping the order
Pig LOAD 语句用于从指定位置读取输入数据。 假设你的猪命令是:
A = load '/data/examples/file.txt';
表示你指定从file.txt读取数据,在/data/examples/
[=39=位置可用]
假设你的 pig 命令是:
A = load '/data/examples/';
目录中有多个文件,比如
20150101.csv
20150102.csv
20150104.csv
表示您指定从以下目录读取数据:/data/examples/
在这种情况下,Pig 将在您指定的目录下找到所有文件,并将它们用作该加载语句的输入,读取将从第一个文件开始按顺序进行。
如果您指定的目录有其他目录,这些目录中的文件也将被包括在内。
下面的 link 将有助于深入理解 LOAD
函数。
http://pig.apache.org/docs/r0.8.1/udf.html#Load+Functions
http://chimera.labs.oreilly.com/books/1234000001811/ch05.html#pl_load