基于埋点日志数据的网络流量统计(网站独立访客数(UV)的统计)
在实际应用中,我们往往还会关注,到底有多少不同的用户访问了网站,所以另外一个统计流量的重要指标是网站的独立访客数(Unique Visitor,UV)
1.假设我们已经采集到数据UserBehavior,并将数据放在工程目录input下面,截图如下:
文件格式如下:
自己可以随便写一个csv文件就行,用excel打开就是每个填充一个,用notepad++打开就是以,分开
2.创建bean:
package com.mischen.it.entity;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;/*** @ClassName UserBehavior* @Description DOTO* @Author mischen* @Date 2021/6/30 0030 7:50* @Version 1.0**/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserBehavior {private Long userId;private Long itemId;private Integer categoryId;private String behavior;private Long timestamp;
}
3.书写main方法,代码如下:
package com.mischen.it;import com.mischen.it.entity.UserBehavior;
import org.apache.flink.api.common.typeinfo.Types;
import org.apache.flink.api.java.tuple.Tuple2;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.KeyedProcessFunction;
import org.apache.flink.util.Collector;import java.util.HashSet;/*** @ClassName Flink02_Project_UV* @Description DOTO* @Author mischen* @Date 2021/6/30 0030 8:23* @Version 1.0**/
public class Flink02_Project_UV {public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.readTextFile("input/UserBehavior.csv").flatMap((String line, Collector<Tuple2<String, Long>> out) -> {String[] split = line.split(",");UserBehavior behavior = new UserBehavior(Long.valueOf(split[0]),Long.valueOf(split[1]),Integer.valueOf(split[2]),split[3],Long.valueOf(split[4]));if ("pv".equals(behavior.getBehavior())) {out.collect(Tuple2.of("uv", behavior.getUserId()));}}).returns(Types.TUPLE(Types.STRING, Types.LONG)).keyBy(t -> t.f0).process(new KeyedProcessFunction<String, Tuple2<String, Long>, Integer>() {HashSet<Long> userIds = new HashSet<>();@Overridepublic void processElement(Tuple2<String, Long> value, Context ctx, Collector<Integer> out) throws Exception {userIds.add(value.f1);out.collect(userIds.size());}}).print("uv");env.execute();}
}
4.运行结果如下:
基于埋点日志数据的网络流量统计(网站独立访客数(UV)的统计)相关推荐
- 基于埋点日志数据的网络流量统计(网站总浏览量(PV)的统计)
衡量网站流量一个最简单的指标,就是网站的页面浏览量(Page View,PV).用户每次打开一个页面便记录1次PV,多次打开同一页面则浏览量累计. 一般来说,PV与来访者的数量成正比,但是PV并不直接 ...
- 数据中心网络流量精细运维
从IDC运营商和云服务商的角度来说,做好网络运维是企业的根本.国内对互联网带宽需求的快速增长,催生出很多大型的IDC服务商,他们在全省.全国,甚至全世界布局数据中心.快速布局的同时如何对数据中心流量精 ...
- 论文阅读四:基于流分类的数据中心网络负载均衡机制
名词解释: Utilization-aware Load-balancing based on Flow Classification, ULFC:基于流分类的数据中心网络负载均衡机制 Equal-C ...
- 基于 短信认证 通过 华为、H3C 结合 OpenPortal认证计费系统 实现 网络准入 短信验证码 访客实名认证
基于 短信认证 通过 华为.H3C 结合 OpenPortal认证计费系统 实现 网络准入 短信验证码 访客实名认证 在企业园区网络中,需要结合短信认证实现网络安全准入,访客短信验证码实名认证.方案中 ...
- 会心自选:为什么流量会增而访客却减少?
商家如果想让店铺健康并且长久的发展下去,就要对店铺的数据进行分析,随时去查看店铺的流量.访客.流失率等等. 为什么流量会增而访客却减少? 有一个买家点击了店铺一个宝贝,进入主页面之后又看到了关联宝贝, ...
- 流量/访客数/曝光量/浏览量/pv/uv
流量:指的是进来店铺的,相当于门市的人流量一个意思 访客数:进来访问的人次数,同一个ip多次访问算一个人 曝光量:就是展现量,店铺和产品在阿里巴巴上被看到的次数,这个是可以重复计算的 浏览量:就是买家 ...
- 基于小波神经网络的短期网络流量数据预测
目录 1.算法仿真效果 2.MATLAB核心程序 3.算法涉及理论知识概要 4.完整MATLAB 1.算法仿真效果 matlab2022a仿真结果如下: 2.MATLAB核心程序 .......... ...
- 日志,Agent,网络流量分析-性能监控的三大流派详解
性能监控主要通过数据采集-数据分析-数据展示-故障告警来实现,其中,数据采集是性能监控的第一步,也是最为关键的一步. 不同数据采集方式获得的数据类型和颗粒度是不同的,不同的数据源能够分析出的指标类型也 ...
- 运营商精准大数据获客 网站APP访客实时截流
企业想要获得精准客户线索的问题主要表现为两个方面,一是目标人群不够精准;二是轻视用户画像.因此,精准获客成败的前提是,是否有足够精确的"用户画像"来做支撑.因此企业解决精准获客这两 ...
- 大数据:2019年汽车4S店访客画像
以2018年Q4到访过全国汽车4S店的人群(剔除了汽车4S店工作人员)为研究对象,从全国汽车4S店访客画像.不同城市等级.不同档次和不同品牌汽车4S店访客画像等角度勾勒出国内4S店访客群像. 极光大数 ...
最新文章
- City of Angels
- Web GIS离线解决方案
- 重磅推荐:保姆级Java技术图谱!够学到元宵节了,赶紧收藏!
- keras终止训练后显存不释放_Keras实现Large-scale Bisample Learning on ID vs. Spot Face Recognition...
- 数论六之计算几何——An Easy Problem,Ancient Berland Circus,Open-air shopping malls
- 下载的oracle如何解压,深度概述Ubuntu oracle下载解压
- 别人家的防疫实时监控大屏是怎么做的?方法和技巧都在这里了
- 项目基于vue-uniapp,使用colorUi与uview框架,完美支持微信小程序
- cadence 16.6中Z-copy的用法
- 2019中国基金业金融科技发展白皮书
- 最新JAVA调用新浪微博API之发微博、发图片
- Echarts制作泊松分布图,并加临界线
- 报价单,要这样做才专业
- 优化机场值机体验之护照阅读器
- 第11期 Jenkins 社区 2020年 GSoC Phase1 分享
- ES2022(ES13)简介
- 超模脸、网红脸、萌娃脸...换头像不重样?我开源了5款人脸生成器
- 下载 php manager 安装包文件
- 踔厉奋发,笃行不怠 润和软件 HiHope 2021 OpenHarmony大事记
- CK-FR208-EC与汇川PLC配置走EtherCAT通讯指南