如何计算hdfs文件的行数?

enxuqcxy  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(850)

这个问题在这里已经有答案了

如何使用hdfs命令计算文件中的行数(3个答案)
5年前关门了。
我在计算一个文件中的行数 hdfs / HIVE . 在某些情况下,我需要整个表的行数 HIVE ,在某些情况下,我只需要一个文件中的行数 HIVE .
我试过一些事情,比如 !hadoop fs -count /<path to file(s)/ ,但这只会 FILE COUNT ,那么 CONTENT_SIZE . 从这里开始
如何获得行数?

7z5jn7bk

7z5jn7bk1#

如果您想知道行的总数,可以检查“map input records”计数器。这将给出给定输入中的总行数(这是目录中的所有文件)。
如果您需要给定文件中的行数(我仍然不明白为什么需要这样做),则需要为已读取给定文件的Map程序获取相同的计数器。这可能有点棘手,但它是可行的。
如果您在yarn上使用hadoop,我建议您使用yarn的restapi,在m/r处理的某些部分上进行这种“快速查询”非常容易使用和方便。

798qvoo8

798qvoo82#

hive不允许您仅在一个文件上创建表。请记住,在配置单元中创建表时,是在文件夹顶部创建的(允许我们添加更多文件)
只有一种方法可以将一个文件读入配置单元中的表中。
将数据[local]inpath'/input\u folder/input\u file.txt'加载到表dest\u table中;
计算表中的行数
从dest\u表中选择count(*);
下面的链接提供了一些有用的信息:
如何将文本文件加载到存储为序列文件的配置单元表中

相关问题