hive
文章平均质量分 71
非本人文章
活到老,学到老
展开
-
hive—两例倾斜case优化
6-1:count(Distinct)所产生的倾斜优化前:588.23 seconds 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31原创 2022-03-27 23:55:08 · 1434 阅读 · 0 评论 -
hive-分析、窗口函数的使用
5-1:sum,avg,min,max窗口内聚合分析over (partition by col1 order by col2 rows between unbounded[n] preceding and current row[n following])PRECEDING:往前FOLLOWING:往后CURRENT ROW:当前行UNBOUNDED:起点,UNBOUNDED PRECEDING 表示从前面的起点,UNBOUNDED FOLLOWING:表示到后面的终点select原创 2022-03-20 22:03:43 · 2558 阅读 · 0 评论 -
hive-数据倾斜
关于数据倾斜在弄清什么是数据倾斜之前,我想让大家看看数据分布的概念:原理:简单的讲,数据倾斜就是我们在计算数据的时候,数据的分散度不够,导致大量的数据集中到了一台或者几台机器上计算,这些数据的计算速度远远低于平均计算速度,导致整个计算过程过慢。表现:任务进度长时间维持在 99%或者 100%的附近,查看任务监控页面,发现只有少量 reduce 子任务未完成数据倾斜的场景:4-1:大小表关联(小表为25M)解决方案:使用map join解决小表关联大表造成的数据倾斜问题。这个方原创 2022-03-13 23:14:13 · 1800 阅读 · 0 评论 -
hive的相关优化
1、列裁剪、分区裁剪在查询的过程中减少不必要的分区和列,例如:select * from shuidi_dwb.dwb_cf_case_info_full_d应改为:select case_id,ckr_id from shuidi_dwb.dwb_cf_case_info_full_d where dt='2019-08-28';2、尽早尽量过滤数据,减少每个阶段的数据量在多次关联的时候,尽量在每个自查询中(关联前)加上筛选(where)条件以减少下阶段job的数据量。优化前:原创 2022-02-27 22:40:19 · 1484 阅读 · 0 评论 -
hive-主要操作原理
运行过程(CSDN)了解后,再看一下主要操作的实现原理:join实现原理select u.name, o.orderid from order o join user u on o.uid = u.uid;在map的输出value中为不同表的数据打上tag标记,在reduce阶段根据tag判断数据来源。MapReduce的过程如下Group By的实现原理select rank, isonline, count(*) from city group by rank, isonline;将原创 2022-02-20 18:25:38 · 894 阅读 · 0 评论 -
hive的运行过程解析
数据的底层存储是文件hive的计算框架是mapreduce,所以我们先了解下mapreduce的原理图上是整个mapreduce的运行过程,在各自的分片中,都是把数据分割以后每个值都对应一个1得到<key,1>,再经过本地reduce(combine过程)把key一样的value=1相加,得到新的<key,values>,再经过shuffle过程,把所有分片中的<key,values>,key一致的values相加,又得到最终的...原创 2022-02-13 23:10:49 · 1729 阅读 · 1 评论