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

相关文章
|
8天前
|
移动开发 分布式计算 Spark
Spark的几种去重的原理分析
Spark的几种去重的原理分析
16 0
|
22天前
|
机器学习/深度学习 SQL 分布式计算
Apache Spark 的基本概念和在大数据分析中的应用
介绍 Apache Spark 的基本概念和在大数据分析中的应用
206 0
|
22天前
|
机器学习/深度学习 SQL 分布式计算
介绍 Apache Spark 的基本概念和在大数据分析中的应用。
介绍 Apache Spark 的基本概念和在大数据分析中的应用。
|
22天前
|
SQL 分布式计算 HIVE
Spark数据倾斜问题分析和解决
Spark数据倾斜问题分析和解决
51 0
|
11天前
|
SQL 分布式计算 关系型数据库
Spark 分析计算连续三周登录的用户数
本文介绍了如何使用窗口函数`range between`来查询`login_time`为2022-03-10的用户最近连续三周的登录数。首先在MySQL中创建`log_data`表并插入数据,接着定义需求为找出该日期前连续三周活跃的用户数。通过Spark SQL,分步骤实现:1)确定统计周期,2)筛选符合条件的数据,3)计算用户连续登录状态。在初始实现中出现错误,因未考虑日期在周中的位置,修正后正确计算出活跃用户数。
|
22天前
|
分布式计算 Java 关系型数据库
|
22天前
|
SQL 分布式计算 数据可视化
数据分享|Python、Spark SQL、MapReduce决策树、回归对车祸发生率影响因素可视化分析
数据分享|Python、Spark SQL、MapReduce决策树、回归对车祸发生率影响因素可视化分析
|
22天前
|
机器学习/深度学习 分布式计算 数据处理
Spark是一个基于内存的通用数据处理引擎,可以进行大规模数据处理和分析
【5月更文挑战第2天】Spark是一个基于内存的通用数据处理引擎,可以进行大规模数据处理和分析
31 3
|
9月前
|
消息中间件 分布式计算 大数据
大数据Spark实时搜索日志实时分析
大数据Spark实时搜索日志实时分析
141 1
|
22天前
|
新零售 分布式计算 数据可视化
数据分享|基于Python、Hadoop零售交易数据的Spark数据处理与Echarts可视化分析
数据分享|基于Python、Hadoop零售交易数据的Spark数据处理与Echarts可视化分析