• 数仓工具—Hive进阶之Statistics与Analyze Table命令(20)


    Hive Statistics与Analyze Table命令

    hive 使用基于成本的优化器,所以表的统计信息作为成本函数的输入信息,从而优化器可以判断不同执行计划之间的成本,进而选择最佳的执行计划。

    hive 使用统计信息例如表或者分区的行数生成一个最佳的执行计划,除了优化器,表的统计信息在hive 的其他很多地方也用到了,那hive是如何检查更新统计信息呢,就是我们今天介绍的ANALYZE TABLE 命令

    统计信息(表/分区)的用途

    使用到统计信息的地方有很多:

    1. Hive 基于成本的优化器使用统计信息生成最佳的执行计划
    2. 用户可以更快的获取某些统计的查询结果,这些查询结果存储在统计信息中的,而不是运行执行计划得到的
    3. 用户可以更好的获取数据的分布情况,例如卖的最好的10款产品,年龄的分布等。

    收集什么样的统计信息

    对于表和分区,目前支持收集下面的统计信息

    1. 行数
    2. 文件
    3. 大小(Bytes)
    4. 分区数(分区表)
    5. 列的统计信息
    6. 最后一次操作时间

    Hive ANALYZE TABLE 命令

    Hive 使用 ANALYZE TABLE 命令收集特定表的统计信息,这个命令收集到的统计信息存储在Hive 的 metastore 中。

    Hive ANALYZE TABLE 命令的语法

    下面是ANALYZE TABLE 命令的语法

  • 相关阅读:
    IntelliJ IDEA 插件推荐
    安卓代码简单读取摄像头YUV原始数据
    使用Kubesec检查YAML文件安全
    位运算 |(按位或) &(按位与) ^(按位异或)
    xss学习笔记(萌新版)
    SpringBoot集成monogoDB
    CSS实现鼠标悬停图片上升显示
    Java 基于微信小程序的考研咨询平台
    【三】ElasticSearch 索引操作
    使用Node.js连接和查询数据库
  • 原文地址:https://blog.csdn.net/king14bhhb/article/details/126370565