sparksql的SQL风格编程

我们前面的文章介绍了DSL风格的编程,现在介绍以下两种编程风格之一的sql风格编程。

sql风格编程简介

sql风格编程就是我们可以通过spark.sql来执行sql语句进行查询,这时的DataFrame就像是一张关系型数据表。返回的是DataFrame。

如果我们想用sql风格的编程,需要先将DataFrame注册成表,注册表的方式有以下3种:

go 复制代码
# 注册临时表
df.createTempView("score")
# 注册临时表,如果存在则替换
df.createOrReplaceTempView("score")
# 注册全局表
df.createGlobalTempview("score")

值得注意的是,全局表是可以跨sparksession对象使用的,在一个程序内,多个sparksession对象都可以使用,临时表只能在当前的sparksession中使用,全局表的查询需带上前缀global_temp.xxx

将dataframe注册成表之后就可以用sql语句来查询了

python 复制代码
spark.sql("SELECT subject, COUNT(*) AS cnt FROM score GROUP BY subject").show()
相关推荐
跨境数据猎手3 小时前
大数据在电商行业的应用
大数据·运维·爬虫
绿算技术4 小时前
万卡推理集群存储选型分析:从核心架构到应用视角
大数据·科技·算法·架构
朴马丁5 小时前
预制菜的“数字厨房”:PLM如何支撑菜品标准化与供应链高效协同?
大数据·人工智能·食品行业·流程行业plm
奋斗的老史7 小时前
Spring-Boot 集成 TDengine 完整实战
大数据·时序数据库·tdengine
郑洁文7 小时前
音乐数据分析研究与应用
大数据·数据挖掘·数据分析·音乐数据分析
成长之路5148 小时前
【实证分析】地市环境规制综合指数测算-原始数据+do代码(2011-2024年)
大数据
逸模8 小时前
AI+BIM 重构连锁公装新范式 逸模打造数字化营建核心底座
大数据·人工智能·笔记·其他·信息可视化·重构
谁似人间西林客9 小时前
工业大数据实战:看中国智造如何用数据驱动效率革命
大数据·单例模式
2501_9336707910 小时前
数学成绩偏弱是否能填报大数据专业
大数据
陆水A10 小时前
【实时数仓·3】Flink多表JOIN状态爆炸——Event Time Temporal JOIN + TTL分层治理
大数据·数据仓库·数据分析·flink·数据库开发·bigdata