首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hdfs计数命令

Hdfs计数命令
EN

Stack Overflow用户
提问于 2020-07-29 22:56:35
回答 2查看 118关注 0票数 0

我使用下面的命令来赋值,但是由于某些原因,hdfs -count被禁用。有没有其他方法可以通过调整代码来获得

代码语言:javascript
复制
var=hdfs dfs -ls /hdfs_path/ | grep col=2020_03 | awk -F' ' '{system("hdfs dfs -count "$8)}' | awk -F' ' '{if ($3 != 0) print $4}' | awk -F'=' '{print $2}'|sort -nr | uniq | head -1

基本上我需要找到在hdfs目录中保存数据的最新月值。例如

代码语言:javascript
复制
hdfs_path/col=2020_03_21/data.part - this has no data
    hdfs_path/col=2020_03_20/data.part - this has data
    hdfs_path/col=2020_03_19/data.part - this has data

因此,输出应为val = 2020_03_20

EN

回答 2

Stack Overflow用户

发布于 2020-07-30 20:14:44

创建包含2列(data、date)和date作为分区列的配置单元外部表。运行配置单元查询以获取包含数据的日期。

从表group by date order by count(*) >1中选择最大(日期)

票数 0
EN

Stack Overflow用户

发布于 2020-07-31 04:49:03

您没有提到您正在使用的Hadoop的版本,所以我认为它是最新的3.x版本,而不是-count命令。要检查目录是否包含非空文件,可以使用du Hadoop命令。您通常的ls和grep然后打印|awk -F‘{ -> (“hdfs dfs -du -s "$8)}’| awk -F‘{if ($2 != 0) -du $3}’

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63156487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档