蜂巢表是空的?

问题描述 投票:0回答:1

检查表是否在Hive中有任何记录的最快方法是什么?

到目前为止,我遇到过这些方法:

  1. 做一个SELECT count(*) FROM <table_name>,我觉得这很慢。
  2. 做一个show tblproperties <db.table_name>("numRows");,我发现这些给-1如果ANALYZE TABLE之前没有在桌子上运行。因此需要ANALYZE TABLE ..SHOW TBLPROPERTIES ..之前运行
  3. 做一个SELECT * FROM <table_name> limit 1。我发现这是最有效的方式。

有没有更好的方法来做到这一点? (我只想检查Hive表是否至少有一条记录)

select hive tbl-properties
1个回答
0
投票

据我所知,这是:

  • Hive表是分区的: 1)找到表的位置 desc formatted <tablename> 2)在hdfs中计算文件大小 hdfs dfs -du -h <location of table>
  • Hive未分区: 1)show tblproperties <db.table_name> 2)找到numRows
© www.soinside.com 2019 - 2024. All rights reserved.