Spark 分析网站排名热度

简介:

需求:

/ 解决是一个各个子模块内的热度排名--》 排名得用sortBy ---》 (可能就是简单的排序,或者是二次排序) ---》

// 前面有一个wordCount---》 算出次数出来  --》 考虑什么作为key


//算的一个网站下面,每个子模块下面的网页热度前2名 :

// 算的一个网站下面,每个子模块下面的网页热度前2名 --》 每个子模块下面的网页的次数的前2名


// 在实际开发中,真正代码时间可能只占20-30% ,其他时间都在理解需求,想思路

import java.net.URL
import org.apache.spark.{SparkConf, SparkContext}
object Data_anlysis {
  def main(args: Array[String]) {
    val conf = new SparkConf().setAppName("data-anysis").setMaster("local[2]")
    val sc = new SparkContext(conf)
    val linesRDD = sc.textFile("d://web_data.log")
    val rdd01 =linesRDD.map(line => {
      val lineSplited = line.split("\t")
      (lineSplited(1),1)
    })
    val rdd02 = rdd01.reduceByKey(_+_)
    val rdd03 = rdd02.map(tup => {
      val url = tup._1;
      val host = new URL(url).getHost
      (host,url,tup._2)
    })
    val rdd04 = rdd03.groupBy(_._1)
    val rdd05 = rdd04.mapValues(iter => {
      iter.toList.sortBy(_._3).reverse.take(2)
    })
    println(rdd05.collect().toBuffer)
    sc.stop()
  }
}

运行结果会把网站的日志数据按照某一模块的要求列出排名前2个结果展示出来。

本文转自  ChinaUnicom110  51CTO博客,原文链接:http://blog.51cto.com/xingyue2011/1950745

相关文章
|
4月前
|
机器学习/深度学习 SQL 分布式计算
Apache Spark 的基本概念和在大数据分析中的应用
介绍 Apache Spark 的基本概念和在大数据分析中的应用
161 0
|
4月前
|
机器学习/深度学习 SQL 分布式计算
介绍 Apache Spark 的基本概念和在大数据分析中的应用。
介绍 Apache Spark 的基本概念和在大数据分析中的应用。
|
5月前
|
SQL 分布式计算 HIVE
Spark数据倾斜问题分析和解决
Spark数据倾斜问题分析和解决
43 0
|
4天前
|
新零售 分布式计算 数据可视化
数据分享|基于Python、Hadoop零售交易数据的Spark数据处理与Echarts可视化分析
数据分享|基于Python、Hadoop零售交易数据的Spark数据处理与Echarts可视化分析
15 0
|
8月前
|
消息中间件 分布式计算 大数据
大数据Spark实时搜索日志实时分析
大数据Spark实时搜索日志实时分析
138 1
|
2月前
|
SQL 分布式计算 HIVE
Spark读取变更Hudi数据集Schema实现分析
Spark读取变更Hudi数据集Schema实现分析
39 0
|
8月前
|
SQL 机器学习/深度学习 分布式计算
Apache Spark 的基本概念和在大数据分析中的应用
Apache Spark 的基本概念和在大数据分析中的应用
|
3月前
|
分布式计算 大数据 Java
Spark 大数据实战:基于 RDD 的大数据处理分析
Spark 大数据实战:基于 RDD 的大数据处理分析
129 0
|
4月前
|
机器学习/深度学习 数据采集 分布式计算
Spark回归分析与特征工程
Spark回归分析与特征工程
|
5月前
|
分布式计算 BI 双11
StructredStreaming+Kafka+Mysql(Spark实时计算| 天猫双十一实时报表分析)
StructredStreaming+Kafka+Mysql(Spark实时计算| 天猫双十一实时报表分析)
39 0