hive通过元数据库查询分区和非分区的数据量及存储占用
非分区表:
SELECT
a.TBL_ID,
d.`NAME` dbName,
a.TBL_NAME,
b.PARAM_VALUE numRows,
c.PARAM_VALUE totalSize
FROM
TBLS AS a
left JOIN TABLE_PARAMS AS b
on a.TBL_ID = b.TBL_ID
left JOIN TABLE_PARAMS AS c
on a.TBL_ID = c.TBL_ID
left JOIN DBS as d
on d.DB_ID = a.DB_ID
where
b.PARAM_KEY = "numRows"
and
c.PARAM_KEY = "totalSize"
分区表:
SELECT
main.dbName,
main.TBL_NAME,
SUM(b.numRows) AS totalNumRows,
SUM(b.totalSize) AS totalSize
FROM (
SELECT
main.TBL_ID,
d.`NAME` AS dbName,
main