Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 循环通过hdfs目录_Hadoop - Fatal编程技术网

Hadoop 循环通过hdfs目录

Hadoop 循环通过hdfs目录,hadoop,Hadoop,我的HDFS目录结构如下所示 /用户/hive/warehouse/check.db/abcd/date=2015-02-02/xyz=hijk/000000\u 0 /用户/hive/warehouse/check.db/abcd/date=2015-02-02/xyz=pqrs/000000\u 0 我正在尝试遍历“/user/hive/warehouse/check.db/abcd”下的所有目录,并派生出2个字段,我使用下面的代码 INPUT='/user/hive/warehouse/c

我的HDFS目录结构如下所示

/用户/hive/warehouse/check.db/abcd/date=2015-02-02/xyz=hijk/000000\u 0 /用户/hive/warehouse/check.db/abcd/date=2015-02-02/xyz=pqrs/000000\u 0

我正在尝试遍历“/user/hive/warehouse/check.db/abcd”下的所有目录,并派生出2个字段,我使用下面的代码

INPUT='/user/hive/warehouse/check.db/abcd'

for dir in $(hadoop fs -ls $INPUT/*/ | grep -o -e "$INPUT/.*") ; do

    xyz=$(echo $dir | cut -d '=' -f 3)
    date=$(echo $dir | sed 's/.*date=\(.*\)\/xyz.*/\1/g')

done

这是最好的方法还是有更好的替代方法?

您也可以使用Java代码或python脚本,尽管这似乎已经足够好了