网站流量日志分析--统计分析--新老访客需求剖析|学习笔记

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习网站流量日志分析--统计分析--新老访客需求剖析

开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第四阶段) 网站流量日志分析--统计分析--新老访客需求剖析】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/696/detail/12239


网站流量日志分析--统计分析--新老访客需求剖析


需求:将每天的新访客统计出来。

实现思路:创建一个去重访客累积表,然后将每日访客对比累积表。

1、每天新老访客的统计新访客老访客从业务上很好理解只要来过一次再来都是老访客如果一次没有过就是新访客从业务上梳理该如何通过每天集的数据进行比较判断识别出当天是新访客还是老访客

2、为了更好理解进行画图比如每天都会收集采集到当天的数据网站的标识收到今天的网站访问数据

image.png

3、根据今天的网站访问数据能够得到在数据有访客的识别以 ip 表示因此可以根据当天收集到的访问数据得到当天的访客有哪些所以第一步去重统计 ip来了一次来了多次只算一去重ip统计得到今天的访客比如今天有 ip1,有ip2,ip4,ip5,ip6 等。

image.png

4、五个访客判断哪些是新访客哪些是老访客需要有判断比较的依据所以应该设计一个表用来保存历史上是否有来是否有访问过比如记录只要历史上过一次都会在这里记录进行判断因此为业务的持久进行至少还需要历史累计访因为是不断累加的过程

image.png

5、比如表有一种特殊的情况今天是公司开业的第一天今天来的所有的人都是新访客有 ip1,ip3,ip5,ip7。

image.png

6、两份数据进行判断比较口述很简单在历史访如果今天访存在就是老访客,明他如果不存在就是新访客,问题在于口头描述都比较好理解如何转化成 sql 呢今天和历史就是两个表两个表之间进行数据的操作应该会涉及表之间 join表之间的关联关联 join 涉及到内外左右以今天的数据为准所以在左边join 在 sql 层面是 left join

image.png

left join on 的表达式能进行关联的条件就是 ip今天的 ip 等于历史的 ip

image.png

关联以左表为准左边的数据全部显示出来右边与之关联关联上的显示关联不上的显示为 nullip1 显示为 ip1,ip2 没有显示为 nullip4 也没有显示为 nullip5 显示为 ip5,ip6 没有显示为 null有了结果之后左边是今天 ip右边是历史 ip

image.png

写 where 条件如果:where 历史. ip is null 没有关联上关联上证明在历史表中没有所以是新访客where 历史. ip is not null 关联上证明在历史表中有所以是老访客需求转化为 sql 就是两个ip是否能关联上今天的新访客永远是明天的老访客今天来过之后不管什么时候再来都是老访客因此最后需要把今天的新访客追加到历史累积访客表中作为后续的新老访客判断识别的依据这样更贴近于实战把业务变得更加完整

image.png

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
7月前
|
Linux 应用服务中间件 PHP
性能工具之linux常见日志统计分析命令
通过本文的介绍,我相信同学们一定会发现 linux三剑客强大之处。在命令行中,它还能够接受,和执行外部的 AWK 程序文件,可以对文本信息进行非常复杂的处理,可以说“只有想不到的,没有它做不到的。
198 1
|
2月前
|
PyTorch 算法框架/工具
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
本文介绍了PyTorch中的F.softmax()和F.log_softmax()函数的语法、参数和使用示例,解释了它们在进行归一化处理时的作用和区别。
506 1
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
|
4月前
|
jenkins 持续交付
jenkins学习笔记之三:使用jenkins共享库实现日志格式化输出
jenkins学习笔记之三:使用jenkins共享库实现日志格式化输出
jenkins学习笔记之三:使用jenkins共享库实现日志格式化输出
|
2月前
|
数据可视化
Tensorboard可视化学习笔记(一):如何可视化通过网页查看log日志
关于如何使用TensorBoard进行数据可视化的教程,包括TensorBoard的安装、配置环境变量、将数据写入TensorBoard、启动TensorBoard以及如何通过网页查看日志文件。
278 0
|
2月前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
|
6月前
|
存储 Java 关系型数据库
基于JSP的九宫格日志网站
基于JSP的九宫格日志网站
|
6月前
|
JSON 中间件 数据格式
Gin框架学习笔记(六)——gin中的日志使用
Gin框架学习笔记(六)——gin中的日志使用
279 0
|
7月前
|
安全 Linux 调度
【后台开发】TinyWebser学习笔记(4)定时器、日志系统(单例模式)、封装互斥锁信号量
【后台开发】TinyWebser学习笔记(4)定时器、日志系统(单例模式)、封装互斥锁信号量
44 1
|
7月前
|
网络协议 应用服务中间件 Linux
centos7 Nginx Log日志统计分析 常用命令
centos7 Nginx Log日志统计分析 常用命令
286 2
|
7月前
|
C++ 索引
【Qt 学习笔记】如何在Qt中打印日志 | qDebug的使用 | Assistant的使用
【Qt 学习笔记】如何在Qt中打印日志 | qDebug的使用 | Assistant的使用
635 0