1

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

4

1 回答 1

2

这可以使用 shell 脚本来完成

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

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

于 2016-01-06T11:41:58.023 回答