聚合操作_多维聚合_需求介绍 | 学习笔记

简介: 快速学习聚合操作_多维聚合_需求介绍

开发者学堂课程【大数据 Spark 2020版(知识精讲与实战演练)第三阶段:聚合操作_多维聚合_需求介绍】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/690/detail/12088


聚合操作_多维聚合_需求介绍

 

多维聚合

Rollup 和 cube 是多维度聚合,而 groupBy 是单维聚合。

多维聚合:比如在打游戏时,有大招数和小招数之分,多维聚合就可以认为是大招数,而单维聚合就是小招数。多维聚合比较少见,因为其适用的场景较少。

本节课内容是介绍多维聚合是什么、怎样使用普通的 SparkSQL 代码完成多维聚合。介绍多维聚合是什么,首先要读取数据集。

image.png

针对数据进行多维的聚合,也就是一次性统计小计,总计等,一般的思路如下:

Step1:读取数据集

将名称为 pm_final.csv 的文件拷贝到 saprkdataset 目录下

image.png

创建方法 multiAgg():ynit = {

@Test

def multiAgg() : unit = {

val schemaFinal = StructType(

List(

注:比之前代码多了 StructField( "source" , StringType)一列

StructField( "source" , StringType) ,

structField ( " year" , IntegerType) ,

structField ( " month" , IntegerType) ,

StructField ( "day" , IntegerType) ,

structField ( "hour" , IntegerType) ,

StructField ( "season" , IntegerType) ,

StructField ( "pm” , DoubleType)

val pmFinal = spark.read

.schema ( schemaFinal)

.option ( "header" , value = true)

.csvtcataset/pm_final.csv")

数据集读取之后打印数据集

pmFinal.show()

}

运行并查看结果:

image.png

数据集当中多出 source 一列,是用于统计 PM 值的来源,数据集当中可能存在一个时间统计的 PM 值有两个来源。

下面根据数据集提出如下需求:

需求 1:不同来源 PM 的统计

需求 2:在同一个月,不同来源的 PM 值的平均值是多少

需求 3:同一年,不同来源的 PM 值平均是多少

需求 4:整体上来看,不同来源的 PM 值是多少

多维操作就是在一个结果集中,包含小计,总计,一层层进行聚合就是多维聚合。

相关文章
|
5月前
|
存储 缓存 自然语言处理
elasticsearch 聚合 : 指标聚合、桶聚合、管道聚合解析使用总结
elasticsearch 聚合 : 指标聚合、桶聚合、管道聚合解析使用总结
|
6月前
|
数据挖掘 索引
使用 DataFrame 进行数据聚合与透视:洞察数据深层结构
【5月更文挑战第19天】DataFrame 提供了聚合和透视功能,便于数据分析。通过`groupby`和`agg`计算类别统计信息,如`sum`和`mean`,揭示数据模式。使用`pivot_table`重新排列数据,展示清晰结构。多维度透视和按时间聚合进一步增强分析能力。这些工具帮助我们理解复杂数据,挖掘隐藏规律,为决策提供依据。利用DataFrame进行数据深层分析,解锁数据价值,开启数据探索之旅。
75 2
|
6月前
|
数据可视化 Python
如何在Pandas中对数据集进行多级分组并进行聚合计算?
在Pandas中进行多级分组与聚合计算的步骤包括导入库(如pandas和matplotlib),准备数据集,使用`groupby()`方法分组,应用聚合函数(如`sum()`、`mean()`)及可视化结果。
73 11
|
6月前
|
SQL 搜索推荐 数据库
8. 聚合查询
8. 聚合查询
|
分布式计算 算法 大数据
白话Elasticsearch45-深入聚合数据分析之易并行聚合算法,三角选择原则,近似聚合算法
白话Elasticsearch45-深入聚合数据分析之易并行聚合算法,三角选择原则,近似聚合算法
99 0
|
存储
ES聚合查询详解(四):管道聚合
ES聚合查询详解(四):管道聚合
541 0
ES聚合查询详解(四):管道聚合
|
SQL 分布式计算 大数据
聚合操作_多维聚合_cubeSQL | 学习笔记
快速学习聚合操作_多维聚合_cubeSQL
119 0
聚合操作_多维聚合_cubeSQL | 学习笔记
|
SQL 大数据 开发者
聚合操作_多维聚合_GroupedDataset | 学习笔记
快速学习聚合操作_多维聚合_GroupedDataset
256 0
聚合操作_多维聚合_GroupedDataset | 学习笔记
|
大数据 开发者
聚合操作_多维聚合_cube | 学习笔记
快速学习聚合操作_多维聚合_cube
聚合操作_多维聚合_cube | 学习笔记
|
大数据 开发者
聚合操作_多维聚合_rollup | 学习笔记
快速学习聚合操作_多维聚合_rollup
聚合操作_多维聚合_rollup | 学习笔记