某公司网站每日访问量达到10亿级别的访问量,每次访问记录一条数据,数据包含如下字段:用户ID,访问时间(毫秒级),访问页面。
要求使用hive求出所有在5分钟内访问次数达到100次的用户(求出用户ID即可)
思路:利用窗口函数Lag 详细思路:
1.选出当天访问次数达到100次的用户(即当天有100及以上条数据的用户):根据用户ID分组,count
2.在每个 用户ID小组内(步骤1已进行分组)按 访问时间进行升序排序 3.计算time-lag(time,100),若time-lag(time,100)<=5601000(毫秒),即为满足条件的用户,筛选出。