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()
相关推荐
山峰哥12 分钟前
索引设计失误让系统性能下降90%
大数据·服务器·数据库·oracle·性能优化
第二只羽毛20 分钟前
C++ 高并发内存池2
大数据·开发语言·jvm·c++·c#
matlabgoodboy43 分钟前
Python代做java代码编写C++大数据R语言Hadoop/spark/flink/C语言
java·大数据·python
阳艳讲ai1 小时前
企业AI培训评测:线下课vs线上营vs陪跑服务,谁能让员工真学会AI?附ROI选型指南
大数据·人工智能·数据挖掘
蓝策电子1 小时前
蓝牙AoA技术如何实现智慧机场人员与资产管控
大数据·经验分享·物联网·信息可视化·智慧城市
Th13360701 小时前
B端拓客号码核验行业现状:困局破解与价值重构,氪迹科技法人股东号码核验筛选系统,阶梯式价格
大数据·重构
Elastic 中国社区官方博客1 小时前
使用 TypeScript 创建 Elasticsearch MCP 服务器
大数据·服务器·数据库·人工智能·elasticsearch·搜索引擎·全文检索
Meya11271 小时前
告别机房 U 位管理内耗!这套系统让运维效率直接拉满 ✨
大数据·运维·人工智能
逸Y 仙X1 小时前
文章十三:ElasticSearch数据更新实战
java·大数据·elasticsearch·搜索引擎·jenkins
AC赳赳老秦2 小时前
OpenClaw SEO写手Agent实操:生成结构化文章,适配CSDN搜索规则
大数据·人工智能·python·搜索引擎·去中心化·deepseek·openclaw