如何进行clickhouse数据模型的session分析
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,如何进行clickhouse数据模型的session分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。什么是session,Sess
千家信息网最后更新 2025年01月24日如何进行clickhouse数据模型的session分析
如何进行clickhouse数据模型的session分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
什么是session,Session即会话,是指在指定的时间段内在您的网站/H5/小程序/APP上发生的一系列用户行为的集合。例如,一次会话可以包含多个页面浏览、交互事件等。
前言
Session 是具备时间属性的,根据不同的切割规则,可以生成不同长度的 Session; 可见,Session统计与上述智能路径检测的场景有相似之处,都需要寻找用户行为链的边界进行处理;session分析主要包含两部分:
session切割;例如,用户访问您的网站,打开了一个网页,有事离开了电脑。几个小时候回来后继续访问,用户的session访问次数应该算作几次? 又比如,用户在pc端添加了购物车,在手机端完成了支付,又应该算作几次。
session指标统计;session分析常见的分析指标有,session访问次数,访问深度、访问时长、跳出率等等。
模型
案例一
以30分钟为超时时间,按天统计所有用户的Session总数(跨天的Session也会被切割)
SELECT ts_date, sum(length(session_gaps)) AS session_cnt #计算会话次数FROM ( WITH arraySort(groupArray(toUnixTimestamp(time))) AS times, arrayDifference(times) AS times_diff #求解相邻事件的时间差 SELECT toDate(time) as ts_date, arrayFilter(x -> x > 1800, times_diff) AS session_gaps #设置切割点 FROM app.scene_tracker WHERE toDate(time) >= '2020-09-06' AND toDate(time) <= '2020-09-07' GROUP BY ts_date,user_id)GROUP BY ts_date
案例二
以30分钟或指定事件为【会员支付成功】做为切割点,统计每天session平均访问深度(相邻相同事件只计算一次)
SELECT ts_date, count(1) session_cnt, sum(length(event_chain)) AS event_cnt, round(event_cnt/session_cnt)FROM ( WITH arraySort(groupArray(( toUnixTimestamp(time), act ))) AS sorted_events, arrayEnumerate(sorted_events) AS event_idxs, arrayFilter( (x,y,z) -> y>1800 or z.2='会员支付成功', event_idxs, arrayDifference(sorted_events.1), sorted_events ) as gap_index , arrayMap(x->x+1, gap_index) as gap_index_ , arrayMap(x -> if(has(gap_index_, x), 1, 0), event_idxs) as gap_marks , arraySplit((x,y) -> y, sorted_events, gap_marks) as session_chain SELECT toDate(time) as ts_date, u_i as user_id, arrayJoin(session_chain) event_chain_, arrayCompact(x->x.2, event_chain_) event_chain FROM app.scene_tracker WHERE toDate(time) >= '2020-09-06' AND toDate(time) <= '2020-09-07' GROUP BY ts_date,user_id)GROUP BY ts_date
关于如何进行clickhouse数据模型的session分析问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
分析
用户
事件
时间
统计
模型
次数
问题
支付
数据
不同
成功
会员
指标
更多
案例
深度
网站
行为
帮助
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器内存条有没有电阻的区别
mongodb数据库优点
全国性的调查数据库
失落的方舟请重新尝试服务器
尼瑞克戒烟贴软件开发
移动通信网络技术发现
影子数据库是什么
服务器网盘
预约挂号取消预约服务器异常
内江网络安全平台下载
怎么绕开公司服务器
维护服务器工作怎么样
宏景世纪数据库配置
软件开发大局观
Jdbc数据库显示连接失败
编译服务器 版本管理
mysql数据库项目式教程
生物信息学GO数据库
地名经纬度数据库sql
软件开发时的基础版
最新的计算机网络技术话题
福建pdu服务器专用电源制造厂
58同城奥商网络技术有限公司
视频管理服务器的设置
广东幼儿园网络安全教育视频
南宁棋牌软件开发有限公司
和田网络技术销售价格
网络安全基础 试卷
数据库中 把重复的选出来
大学生推荐购买云服务器吗