Hive 统计信息简析

简介:

Hive统计信息是在0.7引入的(https://issues.apache.org/jira/browse/HIVE-33),对于Insert/Load/MergeDDL操作时在Task后加入一个StatsTask进行统计信息收集,并订阅前置OperatorFileSink/TableScan)的feed.不过现在这个stats并没有使用起来.

线上虽然开启了hive.stats.autogather=true想搜集一些信息,但是ETL Job经常报:[Warning] could notupdate stats,查看日志发现:

ERRORjdbc.JDBCStatsPublisher (JDBCStatsPublisher.java:init(281)) - Error during JDBCinitialization.

java.sql.SQLException:The connection property 'createDatabaseIfNotExist' only accepts values of theform: 'true', 'false', 'yes' or 'no'. The value 'true;user=xxx;password=xxx' isnot in this set.

原来是连接字符串的配置问题,在xml&需要写成&才可以,修改后生效,可以更新:[num_partitions: xxx, num_files: xxx,num_rows: 0, total_size: xxx, raw_data_size: 0]XXX的几个变量,但是发现num_rows/raw_data_size这两个值无论如何都无法更新,analyze命令也不管用,看下issuehttps://issues.apache.org/jira/browse/HIVE-3324确实有这么个bug,不过并没有很合理的解释,anyway,在hive0.13后使用hadoop counter来做stat publish了,就没这个问题了.

其实如果用来做smallfile分析有这些信息也够了:P



本文转自MIKE老毕 51CTO博客,原文链接:http://blog.51cto.com/boylook/1334532,如需转载请自行联系原作者

相关文章
|
3月前
|
SQL Java 关系型数据库
Hive常见的报错信息
文章列举了Hive常见的几种报错信息,并提供了错误复现、原因分析以及相应的解决方案。
249 1
|
7月前
|
SQL BI HIVE
【Hive SQL 每日一题】统计用户留存率
用户留存率是衡量产品成功的关键指标,表示用户在特定时间内持续使用产品的比例。计算公式为留存用户数除以初始用户数。例如,游戏发行后第一天有10000玩家,第七天剩5000人,第一周留存率为50%。提供的SQL代码展示了如何根据用户活动数据统计每天的留存率。需求包括计算系统上线后的每日留存率,以及从第一天开始的累计N日留存率。通过窗口函数`LAG`和`COUNT(DISTINCT user_id)`,可以有效地分析用户留存趋势。
470 1
|
7月前
|
SQL HIVE
【Hive SQL 每日一题】统计用户连续下单的日期区间
该SQL代码用于统计用户连续下单的日期区间。首先按`user_id`和`order_date`分组并去除重复,然后使用`row_number()`标记行号,并通过`date_sub`与行号计算潜在的连续日期。接着按用户ID和计算后的日期分组,排除连续订单数少于2的情况,最后提取连续下单的起始和结束日期。输出结果展示了用户连续下单的日期范围。
243 0
|
7月前
|
SQL 关系型数据库 HIVE
【Hive SQL 每日一题】统计最近1天/7天/30天商品的销量
这段内容是关于SQL查询的示例,目标是统计`sales`表中最近1天、7天和30天的商品销量和销售次数。表结构包含`id`、`product_id`、`quantity`和`sale_date`字段。初始查询方法通过三个独立的子查询完成,但效率较低。优化后的查询使用了`lateral view explode`将数据炸裂,通过一次查询同时获取所有所需时间段的数据,提高了效率。示例中展示了优化前后的SQL代码及结果对比。
318 0
|
7月前
|
SQL HIVE
【Hive SQL 每日一题】统计最近7天内连续下单3日的用户量
创建了一个名为`sales`的测试表,包含`user_id`、`product_id`、`quantity`和`sale_date`字段,插入了多条销售数据。需求是找出最近7天内连续下单3天的用户数量。SQL查询通过分组和窗口函数`row_number()`检查日期连续性,最终计算满足条件的唯一用户数。示例结果显示有3名用户符合条件。
234 0
|
SQL HIVE
hive留存率的统计
hive留存率的统计
|
SQL HIVE
58 Hive案例(访问时长统计)
58 Hive案例(访问时长统计)
92 0
|
SQL 存储 分布式计算
Hive 2.1.1 MetaException(在metastore中找不到消息:版本信息)
Hive 2.1.1 MetaException(在metastore中找不到消息:版本信息)
452 0
|
SQL 存储 Shell
hive统计每日的活跃用户和新用户sql开发(附shell脚本)
hive统计每日的活跃用户和新用户sql开发(附shell脚本)
hive统计每日的活跃用户和新用户sql开发(附shell脚本)
|
SQL HIVE
Hive去重统计
Hive去重统计