【发布时间】:2016-09-08 19:56:56
【问题描述】:
在我的 Hive 表中,我有以下列:
date, SessionID, url, time_spent
20160901 119 www.hello.com/hehe 10
20160901 121 www.abc.com/xyz 5
20160901 119 www.google.com 12
我需要找到所有日期每个 sessionid 的 url 数量。 我尝试了一些
Select sessionid, count(url), sum(time_spent) from my_table where date between '20160901' and '20160905' group by sessionid
...确实可以在很短的时间内使用,但每天有数百万个 sessionid,我需要获取一年的数据,所以这种方法行不通。
我认为计数的平均表示会起作用,所以我尝试了这个:
select count(sessionid), average(count(url)), avg(sum(time_spent)) from my_table where date between '20160901' and '20160905' group by sessionid;
但这失败了
尚不支持 UDAF 'count' 的位置
有没有办法在这里获得计数的平均值?
【问题讨论】: