INSERT OVERWRITE TABLE ods.cookie_user_signin PARTITION (data_date = '${data_date}')
SELECT t.* FROM ( SELECT userid, cookieid, from_unixtime(eventtime,'yyyyMMdd') as signdate
FROM ods.page_event_log -- 埋点表 WHERE data_date = '${data_date}'
UNION ALL SELECT userid, cookieid,
from_unixtime(viewtime,'yyyyMMdd') as signdate
FROM ods.page_view_log -- 访问日志表
WHERE data_date = '${data_date}' ) t
缓慢变化维是在维表设计中常见的一种方式,维度并不是不变的,随时间也会发生缓慢变化。如用户的手机号、邮箱等信息可能会随用户的状态变化而改变,再如商品的价格也会随时间变化而调整上 架的价格。因此在设计用户、商品等维表时会考虑用缓慢变化维来开发。同样,在设计ID-Mapping表时,由于一个用户可以在多个设备上 登录,一个设备也能被多个用户登录,所以考虑用缓慢变化维表来记录这种不同时间点的状态变化(图3-9)。
对于该拉链表,可查看某日(如20190801)的快照数据。
select *
from dw.cookie_user_zippertable
where start_date<='20190801' and end_date>='20190801'
https://zhuanlan.zhihu.com/p/592199793