繁体   English   中英

如何在Hive数据库中查找空表

[英]How to find empty tables in hive database

我有一个包含50个表的配置单元数据库记录;

我想检查是否有任何表为空。

数据库名称是employee。

我不想手动执行此操作,即对每个表分别执行select *查询。

谁能解释

Hive无法跟踪表中存在的记录数。 仅在查询执行期间,才读取和处理属于特定表的文件。 因此,如果不单独查询每个表,就没有其他方法可以知道每个表中存在的记录数。

或者,您可以在HDFS的数据库目录上运行磁盘使用命令

hdfs dfs -du -s -h <hive.warehouse.dir>/employee/*

带有0B的表文件夹显然是空的。

这是可能的,因为Hive将表文件存储在表创建时或hive-site.xml中为hive.warehouse.dir属性提到的路径中指定的HDFS LOCATION 默认值为/user/hive/warehouse

如果这些表是managed表,则对于数据库employee所有表的记录将存储在<hive.warehouse.dir>/employee/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM