work hard work smart

专注于Java后端开发。 不断总结,举一反三。
随笔 - 1158, 文章 - 0, 评论 - 153, 阅读 - 186万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

Spark 编程

Posted on   work hard work smart  阅读(14)  评论(0编辑  收藏  举报

 1、数据准备

people.json

1
2
3
{ "id": 1,  "name": "张三""age": 38  }
{ "id": 2, "name": "李四""age": 30  }
{ "id": 3, "name": "王五", "age": 28 }

 

2、DataFrame

读取json文件创建DataFrame 

val df = spark.read.json("/tmp/work/people.json")

 

 展示结果:df.show

 

3. SQL风格语法

1)创建一个DataFrame 

scala> val df = spark.read.json("/tmp/work/people.json")

2)对DataFrame创建一个临时表

 df.createOrReplaceTempView("people")

3)通过SQL语句查询

val sqlDF = spark.sql("select * from people")

4)显示结果

sqlDF.show

 

 临时表是Session范围的,Session退出后,表就失效了。如果想在应用范围内使用,可以使用全局表。全局表需要全路径访问,例如global_temp.people

 

5) 对于DataFrame创建一个全局表

 df.createGlobalTempView("people")

 

6)通过SQL语句查询全表

spark.sql("select * from global_temp.people").show()

spark.newSession().sql("select * from global_temp.people").show()

 

相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
历史上的今天:
2017-03-27 Spring 部署Tomcat 404 错误解决方案
2013-03-27 [转]JSONObject与JSONArray的使用 .
2012-03-27 ContextMenu的使用
2012-03-27 Metro Style App开发快速入门 之文件选择总结
2011-03-27 数据结构和算法
点击右上角即可分享
微信分享提示