Spark SQL 编程初级实践

时间:2020-02-16 12:27:29   收藏:0   阅读:319

1.Spark SQL 基本操作
将下列 JSON 格式数据复制到 Linux 系统中,并保存命名为 employee.json。

{ "id":1 , "name":" Ella" , "age":36 }
{ "id":2, "name":"Bob","age":29 }
{ "id":3 , "name":"Jack","age":29 }
{ "id":4 , "name":"Jim","age":28 }
{ "id":4 , "name":"Jim","age":28 }
{ "id":5 , "name":"Damon" }
{ "id":5 , "name":"Damon" }

写入/usr/local/sparkdata文件里,命名为employee.json

然后为 employee.json 创建 DataFrame

创建DataFrame:

技术分享图片

 (1)查询所有数据:

利用DataFrame的show()方法:df.show()

技术分享图片

 (2)查询所有数据并去除重复的数据:

利用distinct()方法去重:df.distinct().show()

技术分享图片

 (3)查询所有数据打印时去除id字段:

利用drop()方法去除字段:df.drop("id").show()

技术分享图片

 (4)筛选出sge>30的记录:

利用filter()方法筛选数据:df.filter(df(“age”>30)).show()

技术分享图片

 (5)将数组按age分组:

利用groupBy()方法分组:df.groupBy("age")

技术分享图片

 (6)将数据按 name 升序排列:
利用sort()方法排序:df.sort(df("name").asc).show()

技术分享图片

 (7)取出前 3 行数据:
df.head(3)

技术分享图片

 (8)查询所有记录的name列,并为其取名为username:

df.select(df("name")as("username")).show()

技术分享图片

 (9)查询年龄age的平均值:

df.agg("age"->"avg").show()

技术分享图片

 (10) 查询年龄 age 的最小值:
df.agg("age"->"min").show()

技术分享图片

 

2.编程实现将 RDD 转换为 DataFrame 
 

原文:https://www.cnblogs.com/123456www/p/12316066.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!