当我尝试在另一个pig脚本中加载pig脚本的输出时,加载数据的顺序正在改变
我在pig script-1的输出中有5个部分文件
part-r-00000
part-r-00001
part-r-00002
part-r-00003
part-r-00004
我想在另一个脚本中按部分文件名的顺序加载这个部分文件,当我在pig script-2中加载pig script-1的输出时,加载的数据不是按部分文件的顺序加载的,我加载这个输出如下
SET default_parallel 5;
A = LOAD 'Output' USING PigStorage(‘,’) AS (f1:int, f2:int, f3:int);
Dump A;
DATA in part-r-00000
DATA in part-r-00001
DATA in part-r-00004
DATA in part-r-00003
DATA in part-r-00002
每次加载数据的顺序都在改变
有没有按零件文件名的顺序加载数据的解决方案?
我想不出有什么办法,但任何帮助我都会感激的。
1条答案
按热度按时间ffx8fchx1#
可以使用加载所有零件文件
xyz = LOAD 'output_path/part-*' using PigStorage() AS (f1:int, f2:int, f3:int);
但这并不能保证它会按顺序加载所有零件文件,这里我们只是指定加载所有零件文件。