![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hive
卷曲的葡萄藤
这个作者很懒,什么都没留下…
展开
-
Hive窗口函数 row_number over()和sum() over()的使用详解
row_number over()的使用:假如我们有这样一组数据,我们需要求出不同性别的年龄top2的人的信息。这个时候怎么做?可能我们会首先想到分组,但是分组只能值top1,怎么样能求出top2,top3呢?这时候我们想如果分组后能够按照年龄排序然后标出来序号就好了!id age name sex1,18,xiaoli,male2,19,wang,male3,22,l...原创 2019-05-27 22:10:34 · 27524 阅读 · 0 评论 -
Hive函数 explore() 和lateral view的使用
假如有这么一组类型的数据:id,name,course1,xiaoming,数学:语文:生物:化学2,lilei,化学:地理:物理:语文3,hanmeimei,数据结构:操作系统:计组我们要把他放到hive表中做相应的操作,course显然需要array<string>类型即:create table t_xuanxiu(uid string,name st...原创 2019-05-28 11:59:53 · 5291 阅读 · 0 评论 -
HiveSQL行转列lateral view explore()以及连接concat_ws()和列转行collect_list()&collect_set()区别的使用案例
行转列:在我们使用hive进行数据统计分析时可能有这么一个场景:一行数据中,一个字段中有很多和数据项,我们需要对每个数据项进行一个统计分析。例如:一个人有很多人生的重要阶段,我们有一批人,求在某个阶段的人的总数uid,stage1,jiehun:shengzi:maiche2,maiche:maifang3,maifang:jiehun4,dushu:maiche5,d...原创 2019-05-29 10:53:51 · 6482 阅读 · 0 评论 -
Hive维度表设计之--缓慢变化维、维度层次、维度一致性
维度表设计维度表在维度建模中相当重要,在维度表设计中的一些问题直接关系到维度建模的好坏。1、维度变化维度表通常来自于业务系统,比如商品维度可能来自超时pos系统的商品表,但是商品会变化的,比如类目,标签价格,描述等,这些变化可能是之前错误需要订正,也可能是本身业务的变化。这种缓慢变化的维度,称为缓慢变化维度,那么源头数据的变化在维度表中如何表示呢 ??1.1、重写纬度值新维度值...原创 2019-06-09 13:35:24 · 7623 阅读 · 0 评论 -
Hive分析窗口函数的使用
一:基本的窗口函数使用,SUM,MIN,AVG,MAX用于实现分组所有统计和连续累计的统计。准备数据能更好的理解对函数的使用,假设以下数据,页面、时间、访问次数。page time pvhttps://baidu.com/,2019-06-01,2https://baidu.com/,2019-06-02...原创 2019-06-09 15:13:33 · 493 阅读 · 0 评论 -
Hive自定义函数UDF的简单应用。
本实例简单的对json字符串使用自定义函数进行解析,方便hive的使用。首先数据长这样:很多几十万条:{"movie":"2081","rate":"5","timeStamp":"977536266","uid":"106"}{"movie":"1357","rate":"3","timeStamp":"977536364","uid":"106"}{"movie":"902"...原创 2019-06-09 17:37:40 · 825 阅读 · 0 评论 -
Hive--hive一种通用的上亿级别的去重方法
前些阵子在公司做项目遇到了一个问题,就是需要都行业中的所有品牌的uid进行去重的然后计数的操作。数据量去完重复大概2个亿,去之前大概将近三个亿。做法一:最原始的做法使用的是count(distingct uid)这个需要大概跑3个小时的任务。做法二:使用group by去重,效果依然不好。做法三:使用row_number() over(partition by uid order ...原创 2019-09-07 09:39:00 · 3549 阅读 · 3 评论