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个结果展示出来。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站名称:Spark分析网站排名热度-创新互联
标题URL:http://www.jxjierui.cn/article/csedej.html


咨询
建站咨询
