[英]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.