GMV 今天提交订单的金额总和,不管是否支付
全站PV 页面浏览量大砍一次就是一个pv再刷新一次又是一个pv
全站UV 去重的访客总和
set mapreduce.framework.name=local;本地
set mapreduce.framework.name=yarn; yarn
set hive.vectorized.execution.enabled=true ; //开启
set hive.vectorized.execution.enabled=false ; //关闭
set mapreduce.framework.name=local;
set hive.vectorized.execution.enabled=false ;
--相当于给这个表起个别名
with temp as
(
select
guid,
--用户新会话 超过30分钟的哪个
newsessionid as session_id,
--起始时间
`timestamp` as ts,
--新老访客标记
isnew as isnew,
--事件id
eventid as eventid,
--first_value取每个分区中的第一个数据
--根据guid和和newsessionid开测窗口取事件(是一个集合)的最小的(第一个),但是null会排在前面所以null就匹配了个最大排最后就取不到
first_value(properties['pageId']) over(partition by guid,newsessionid order by if(eventid='pageView', `timestamp`, 20000000000000)) as start_page,
--这也是一样就desc倒序取第一个相当于取最大的