计算HIVE统计阿帕奇星火(Compute HIVE statistics in Apache Sp

2019-09-29 08:37发布

我试图从Apache的星火计算HIVE表统计:

`sqlCtx.sql('ANALYZE TABLE t1 COMPUTE STATISTICS')`

我也执行语句来看看收集的内容:

sqlCtx.sql('DESC FORMATTED t1')

我可以看到采集我的统计。 然而,当我在HIVE客户端(Ambari)执行相同staement - 没有显示的统计信息。 它是仅当它是由星火收集火花? 火花是否存储在别的地方?

另一个问题。

我也计算在该表中的所有列统计:

sqlCtx.sql('ANALYZE TABLE t1 COMPUTE STATISTICS FOR COLUMNS c1,c2')

但是,当我想看到的火花这一统计数据,它失败,不支持的SQL语句的异常:

sqlCtx.sql('DESC FORMATTED t1 c1')

根据文档它是有效的蜂巢查询。 有什么不对呢?

感谢帮助。

Answer 1:

阿帕奇星火店的统计数据“表参数”。 为了能够获取这些统计数据,我们需要连接到HIVE metastore和。 执行查询像以下

select param_key, param_value 
from table_params tp, tbls t 
where tp.tbl_id=t.tbl_id and tbl_name = '<table_name>' 
and param_key like 'spark.sql.stat%';


Answer 2:

只是大写表的名称都会好的。

select param_key, param_value 
from TABLE_PARAMS tp, TBLS t 
where tp.tbl_id=t.tbl_id and tbl_name = '<table_name>' 
and param_key like 'spark.sql.stat%';


文章来源: Compute HIVE statistics in Apache Spark