本文主要是介绍【硬刚Hive】Hive基础(11):元数据(二)分析Hive表和分区的统计信息(Statistics),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
类似于Oracle的分析表,Hive中也提供了分析表和分区的功能,通过自动和手动分析Hive表,将Hive表的一些统计信息存储到元数据中。
表和分区的统计信息主要包括:行数、文件数、原始数据大小、所占存储大小、最后一次操作时间等;
1 新表的统计信息
对于一个新创建的表,默认情况下,如果通过INSERT OVERWRITE的方式插入数据,那么Hive会自动将该表或分区的统计信息更新到元数据。
有一个参数来控制是否自动统计,hive.stats.autogather,默认为true.
举例来说:
先创建表lxw1234:
CREATE TABLE lxw1234 (
id STRING,
name STRING
) stored AS textfile;
在元数据表TABLE_PARAMS中,会有一条记录,记录了该表上次DDL的时间,
该表中的TBL_ID对应TBLS表中的TBL_ID.
关于Hive元数据结构的详细介绍,可参考Hive基础(十六)
SELECT * FROM TABLE_PARAMS WHERE tbl_id = 45857
TBL_ID | PARAM_KEY | PARAM |
这篇关于【硬刚Hive】Hive基础(11):元数据(二)分析Hive表和分区的统计信息(Statistics)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!