tap hadoop作业中的输入指定多个文件夹

ltqd579y  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(290)

我正在使用cascalog api运行hadoop mapreduce作业。我想使用多个输入文件夹来处理map reduce作业。
我在hdfs roopath/folder\u1&rootpath/folder\u2中有两个文件夹,其中包含要在作业中处理的文件。
我通过pail-tap功能为作业提供输入文件夹:

new PailTap(rootPath + "Folder_1",
            JcascalogUtils.getPailTapOptions());

我可以给同一个作业多个文件夹吗。
我可以给一个regex fodler路径,比如rootpath+*/这样它就可以处理rootpath文件夹中的所有文件夹。
感谢您的帮助:)

xdnvmnnf

xdnvmnnf1#

您可以这样使用multisourcetap:

dataSource = new MultiSourceTap( 
              new PailTap(rootPath + "Folder_1",JcascalogUtils.getPailTapOptions()),
              new PailTap(rootPath + "Folder_2",JcascalogUtils.getPailTapOptions())
             );

或者使用globhfs

dataSource = new GlobHfs(new PailTap(rootPath,JcascalogUtils.getPailTapOptions()).getScheme() , rootPath + "*");

相关问题