Impala table/column统计分析

介绍

        impala可以通过访问数据的统计信息对复杂和多表的查询做更好的优化,impala使用这些信息帮助一个work进行并行和分布式查询。

        Impala查询计划器可以使用有关整个表和分区的统计信息。 此信息包括物理特性,例如行数,数据文件数,数据文件的总大小和文件格式。 对于分区表,每个分区计算数字,并计为整个表的总计。 此元数据存储在Metastore数据库中,并且可以由Impala或Hive进行更新。 如果数字不可用,则值-1用作占位符。 一些数字,例如数据文件的数量和总大小,总是保持最新的,因为它们可以被计算得便宜,作为收集HDFS块元数据的一部分。

Table Statistics

SHOW TABLE STATS table_name;

        ps:示例显示了未分区的Parquet表的表统计信息。 文件的数量和大小的值始终可用。 最初,行数是未知的,因为它需要对整个表进行潜在的昂贵扫描,因此该值显示为-1。 COMPUTE STATS语句填充任何未知的表统计信息值。

COMPUTE STATS table_name;

    再次查看

 

    当元数据在元数据库数据库中可用时,Impala查询计划器可以使用有关各个列的统计信息。此方法对于在连接查询中跨表比较的列最有价值,以帮助估计查询将从每个表中检索多少行。这些统计信息对于使用EXISTS()或IN()运算符的关联子查询也很重要,这些运算符在内部以连接查询的方式处理

Column Statistics

show column stats table_name;
COMPUTE STATS table_name;

    示例显示了未分区的Parquet表的列统计信息。某些类型的最大和平均大小的值总是可用的,因为这些数字对于数字和其他固定大小类型是常数。最初,不同值的数量是未知的,因为它需要对整个表进行潜在的昂贵扫描,因此该值显示为-1。这同样适用于可变大小类型的最大和平均大小,例如STRING。 COMPUTE STATS语句填充大多数未知列统计信息值。 (它不记录NULL值的数量,因为当前Impala不会使用该数字进行查询优化。)

Show集合

SHOW DATABASES [[LIKE] 'pattern']
SHOW SCHEMAS [[LIKE] 'pattern'] - an alias for SHOW DATABASES
SHOW TABLES [IN database_name] [[LIKE] 'pattern']
SHOW [AGGREGATE | ANALYTIC] FUNCTIONS [IN database_name] [[LIKE] 'pattern']
SHOW CREATE TABLE [database_name].table_name
SHOW TABLE STATS [database_name.]table_name
SHOW COLUMN STATS [database_name.]table_name
SHOW PARTITIONS [database_name.]table_name
SHOW ROLES
SHOW CURRENT ROLES
SHOW ROLE GRANT GROUP group_name
SHOW GRANT ROLE role_name

刷新元数据

invalidate metadata;

 

转载于:https://my.oschina.net/guol/blog/856539

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值