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()
作者:Work Hard Work Smart
出处:http://www.cnblogs.com/linlf03/
欢迎任何形式的转载,未经作者同意,请保留此段声明!
· 阿里巴巴 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 数据结构和算法