如何在配置单元中查找在数据库中创建的表的数量?

How to find the number of tables created in a database in hive?

我需要找出每个模式中创建的表的数量,并找出每个模式占用的大小。

可以使用 shell 脚本

  1. 计算命令输出中的行hive -S -e "set hive.cli.print.header=false; use $schema; show tables;" | wc -l $schema 是您的架构名称

  2. 模式的大小有点棘手。模式中的每个 table 都可以在 HDFS 中拥有与模式默认位置不同的位置。您需要遍历架构 tables(参见前面的命令)、describe formatted each table、解析 table 位置、获取位置大小并对 HDFS 中的所有 table 位置大小求和。 要获取 table 位置大小,请使用此命令: hdfs hadoop fs -du [table location]