对于一张数据表,如下图所示

对上述表实现分组统计查询: select pageid,age,count(1) from pv_users group by pageid,age;
将上述的SQL查询语句改写成Spark的代码,如下:
package com.company.sparkcore
import org.apache.spark.{SparkConf, SparkContext}
object CountPVByGroup {
def main(args: Array[String]): Unit = {
val conf = new SparkConf()
.setAppName(CountPVByGroup.getClass.getSimpleName)
.setMaster("local")
// Logger.getLogger("org.apache.spark").setLevel(Level.OFF)
// Logger.getLogger("org.apache.hadoop").setLevel(Level.OFF)
val sc = new SparkContext(conf)
val lines = sc.textFile("file:///e:/pv_users.txt")
//拼接成(1_25,1)的形式
val newKeyValue = lines.map(_.split(",")).map(pvdata => ((pvdata(0)+ "_" + pvdata(1)),1))
//对上述KV进行统计
val pvcount = newKeyValue.reduceByKey(_ + _)
//

本文介绍了如何使用Spark Core来改写SQL分组统计查询。以一个数据表为例,展示了将SQL语句`select pageid,age,count(1) from pv_users group by pageid,age;`转换为Spark代码的过程。"
76689477,6926607,快速排序算法详解及实现,"['排序算法', '算法', '递归']
最低0.47元/天 解锁文章
1291

被折叠的 条评论
为什么被折叠?



