这可能是关于流处理的问题。但我无法使用awk找到一个优雅的解决方案。 我正在运行一个m / r工作,计划每天运行一次。但是可以有多个需要运行的HDFS目录。例如,当天将3个输入目录上传到HDFS,因此每个目录需要运行3个/月的作业。
所以我需要一个解决方案,我可以从结果中提取文件名:
hdfs dfs -ls /user/xxx/17-03-15*
然后迭代文件名,为每个文件启动一个m / r作业。
由于
答案 0 :(得分:0)
在该问题上浏览更多内容时,我发现Hadoop为此问题提供了配置设置。 Here是详细信息。
另外,我只是遇到了一些语法问题,而这个简单的awk命令就是我想要的:
files=`hdfs dfs -ls /user/hduser/17-03-15* | awk {'print $8'}`