文章目录

  • 1.pv 和 uv
    • 1.1 什么是 PV 值?
    • 1.2 什么是 UV 值?
  • 2. 代码实战

  • JavaSpark | 算子
  • JavaSpark | RDD实战:WordCount
  • JavaSpark | RDD实战:统计网站 pv 和 uv
  • JavaSpark | RDD实战:二次排序
  • JavaSpark | RDD实战:分组top n
  • JavaSpark | SparkSQL | 创建DataSet | UDF与UDAF | 开窗函数

1.pv 和 uv

  PV 是网站分析的一个术语,用以衡量网站用户访问的网页的数量。对于广告主,PV 值可预期它可以带来多少广告收入。一般来说,PV 与来访者的数量成正比,但是 PV 并不直接决定页面的真实来访者数量,如同一个来访者通过不断的刷新页面,也可以制造出非常高的 PV

1.1 什么是 PV 值?

  PV(page view)即页面浏览量或点击量,是衡量一个网站或网页用户访问量。具体的说,PV 值就是所有访问者在 24 小时(0 点到 24 点)内看了某个网站多少个页面或某个网页多少次。PV 是指页面刷新的次数,每一次页面刷新,就算做一次 PV 流量。
  度量方法就是从浏览器发出一个对网络服务器的请求(Request),网络服务器接到这个请求后,会将该请求对应的一个网页(Page)发送给浏览器,从而产生了一个 PV。那么在这里只要是这个请求发送给了浏览器,无论这个页面是否完全打开(下载完成),那么都是应当计为 1 个 PV。

1.2 什么是 UV 值?

  UV(unique visitor)即独立访客数,指访问某个站点或点击某个网页的不同 IP 地址的人数。在同一天内,UV 只记录第一次进入网站的具有独立IP 的访问者,在同一天内再次访问该网站则不计数。UV 提供了一定时间内不同观众数量的统计指标,而没有反应出网站的全面活动。

2. 代码实战

package com.shsxt.java_Test.core.demo;import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.Function2;
import org.apache.spark.api.java.function.PairFunction;
import scala.Tuple2;import java.util.Map;public class PVUV {public static void main(String[] args) {//1.构建SparkConext执行环境入口对象SparkConf conf = new SparkConf();conf.setAppName("PUUV").setMaster("local[*]");JavaSparkContext jsc = new JavaSparkContext(conf);//2.读取数据//146.1.30.98   河南  2017-10-10  1512012307078   5263761960810313758 www.jd.com  RegistJavaRDD<String> lineRDD = jsc.textFile("data/pvuvdata");//3.统计每个页面 PVlineRDD.mapToPair(new PairFunction<String, String, Integer>() {@Overridepublic Tuple2<String, Integer> call(String s) throws Exception {String page = s.split("\t")[5];return new Tuple2<>(page,1);}}).reduceByKey(new Function2<Integer, Integer, Integer>() {@Overridepublic Integer call(Integer v1, Integer v2) throws Exception {return v1 + v2;}}).foreach(x->{System.out.println(x);});//4.统计每个页面与IP的UVJavaPairRDD<String, String> url_ip_RDD = lineRDD.mapToPair(new PairFunction<String, String, String>() {@Overridepublic Tuple2<String, String> call(String s) throws Exception {String[] words = s.split("\t");String url = words[5];String ip = words[0];return new Tuple2<>(url, ip);}});//去重,并针对url进行countMap<String, Long> map = url_ip_RDD.distinct().countByKey();//遍历结果for (Map.Entry<String,Long> entry:map.entrySet()) {System.out.println(entry.getKey());System.out.println(entry.getValue());}jsc.stop();}
}
(www.suning.com,18412)
(www.jd.com,18609)
(www.dangdang.com,18693)
(www.taobao.com,18736)
(www.gome.com.cn,18443)
(www.mi.com,18482)
(www.baidu.com,18557)www.suning.com
15607
www.jd.com
15612
www.baidu.com
15634
www.gome.com.cn
15550
www.dangdang.com
15679
www.taobao.com
15708
www.mi.com
15552

JavaSpark | RDD实战:统计网站 pv 和 uv相关推荐

  1. 用户行为分析大数据系统(实时统计每个分类被点击的次数,实时计算商品销售额,统计网站PV、UV )

    Spark Streaming实战对论坛网站动态行为pv,uv,注册人数,跳出率的多维度分析_小强签名设计 的博客-CSDN博客_spark streaming uv 实时统计每天pv,uv的spar ...

  2. Flume+Kafka+Storm+Redis构建大数据实时处理系统:实时统计网站PV、UV+展示

    http://blog.51cto.com/xpleaf/2104160?cid=704690 1 大数据处理的常用方法 前面在我的另一篇文章中<大数据采集.清洗.处理:使用MapReduce进 ...

  3. 大数据离线分析系统:统计网站PV、UV

    目录 一.业务需求 二.业务实现方案 1.技术栈 2.业务实现流程 3.离线分析系统架构图 三.技术实现 1.Hadoop CDH集群管理平台 2.Flume采集服务器日志数据到HDFS 3.Spar ...

  4. JavaSpark | RDD实战:WordCount

    JavaSpark | 算子 JavaSpark | RDD实战:WordCount JavaSpark | RDD实战:统计网站 pv 和 uv JavaSpark | RDD实战:二次排序 Jav ...

  5. 网站pv和uv比例多少合适?

    网站pv和uv比例多少合适?今天有一个人问我这个问题,SEO优化顶尖大师认为,UV越多越好,PV更多好.但是其实不同行业又是不能相比的,针对大部分的站点而言,PV是UV至少三倍以上就不错了.两倍则在大 ...

  6. 网站pv和uv比例多少合适

    网站pv和uv比例多少合适?今天有一个人问我这个问题,SEO优化顶尖大师认为,UV越多越好,PV更多好.但是其实不同行业又是不能相比的,针对大部分的站点而言,PV是UV至少三倍以上就不错了.两倍则在大 ...

  7. java利用友盟 计算pv uv_通过nginx日志利用shell统计日pv和uv

    通过nginx日志利用shell统计日pv和uv 网上记录nginx日志统计访问量的脚本的文档很多,但是看来看去实际都是一个东西,如下: 1.根据访问IP统计UV awk '{print $1}'  ...

  8. 网站流量统计之PV和UV

    转自:http://blog.csdn.net/webdesman/article/details/4062069 如果您是一个站长,或是一个SEO,您一定对于网站统计系统不会陌生,对于SEO新手来说 ...

  9. 网站PV、UV以及查看方法(转载)

    一.名词解释 PV:PV 是Page Views的缩写,即页面浏览量,用户每一次对网站中的每个网页访问均被记录一次.注意,访客每刷新一次页面,pv就增加一次. UV:UV是Unique Visitor ...

最新文章

  1. JSP错误页面的处理和exception对象
  2. 人工智能,机器学习,深度学习入门好文,强烈推荐
  3. kettle同步数据中文乱码问题解决
  4. 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)...
  5. Android笔记 actionbar学习
  6. stauml工具怎么导入文件_小伙教大家怎么剪辑短视频,1小时就学会添加字幕,值得收藏哦...
  7. 离线下载Express 2015 for Windows 10
  8. segnet运行记录
  9. 微信小程序操作数据库
  10. Golang学习(十四)数组
  11. Java中IDEA报错 “cannot access xxx“的解决办法
  12. 飞机的各参数指标matlab,通达信飞机起飞及选股指标公式
  13. leetcode小坑 ‘int’ object has no attribute ‘val‘
  14. 【SAP Abap】记录一次增强开发之销售交货开票VF04增强
  15. 三网融合可借鉴欧盟视听新媒体内容规制
  16. WINCE系统防火墙设置
  17. 数据集(casia,msu,replay,oulu)的详细信息
  18. 总结自己的2020,展望2021
  19. 顶级管理思维-金字塔顶端的俯视
  20. 浙江义乌航空口岸进入全货机时代

热门文章

  1. Kontakt加载音源弹出File not found
  2. VS2015 下载地址
  3. 【1】python-opencv3教程:图像数字化(图像灰度化,彩色图像通道的提取等)
  4. 超链接target属性的取值和作用
  5. 掌握企业核心:工商详细信息API 60多项全维度信息解读
  6. html表格不平均分割,averageifs函数计算不出来
  7. 如何查看Xshell记住的密码?
  8. Winform动态增加ComboBox后SelectedValue无效的问题
  9. matlab 风速模型 小波滤波
  10. C#.Net窗体应用程序之实现飞行棋(两人对弈)