如何确定Hive数据库大小?

时间:2017-08-15 10:55:50

标签: bash hive hiveql

如何从BashHive CLI确定Hive的数据库大小?

hdfs中也可以使用

hadoopBash命令。

3 个答案:

答案 0 :(得分:2)

hive中的数据库是元数据存储 - 意味着它包含有关表的信息并具有默认位置。如果在创建表时指定hdfs,则数据库中的表也可以存储在location中的任何位置。

您可以使用show tables中的Hive CLI命令查看数据库中的所有表。

然后,对于每个表格,您可以使用hdfsdescribe formatted <table name>中找到其位置(再次在Hive CLI中)。

最后,对于每个表格,您可以使用hdfs dfs -du -s -h /table/location/

找到其大小

我认为没有一个命令来衡量数据库所有表的大小总和。但是,编写一个自动执行上述步骤的脚本应该相当容易。也可以使用bash CLI

hive -e '<hive command>'调用Hive

答案 1 :(得分:0)

在HDFS上显示Hive数据库

sudo hadoop fs -ls /apps/hive/warehouse

显示Hive数据库大小

sudo hadoop fs -du -s -h  /apps/hive/warehouse/{db_name}

答案 2 :(得分:0)

如果您希望完整数据库的大小在“仓库”

上运行
hdfs dfs -du -h /apps/hive/warehouse

这将为您提供仓库中每个数据库的大小

如果您想要特定数据库中的表大小:

hdfs dfs -du -h /apps/hive/warehouse/<db_name>

在hive-site.xml上运行“grep仓库”以查找仓库路径