Spark SQL编程基础

一、概述

Spark SQL重要的是操作DataFrame,DataFrame本身提供了Save和Load的操作,

Load:可以创建DataFrame。

Save:把DataFrame中的数据保存到文件或者说用具体的格式来指明我们要读取的文件类型,以及用具体的格式来指出我们要输出的文件是什么类型。

DataFrame本质是数据 + 数据的描述信息(结构元信息)。

二、DataFrame的创建

(1)创建SparkSession对象

val spark = SparkSession.builder().getOrCreate()//spark-shell默认提供了

(2)导入实现隐式转换的数据包

import spark.implicits._

(3)从不同类型文件中加载数据创建DataFrame

spark.read.format("json").load("people.json")

spark.read.format("csv").load("people.csv")

spark.read.format("parquet").load("people.parquet")

三、DataFrame的保存

df.write.format("json").save("people.json")

df.write.format("csv").save("people.csv")

df.write.format("parquet").save("people.parquet")

四、DataFrame常用操作

//读取json文件
val df=sqlContext.read.json("hdfs://localhost:9000/myspark6/goods_visit.json") 
//查看文件中所有数据
df.show()
//查看表结构
df.printSchema()
//只查看商品ID(goods_id)
df.select("goods_id").show()
//统计文件行数
df.count
//条件查询,查询点击次数超过500的商品(show是返回字段和表数据,collect是返回集合)
df.filter(df("click_num")>500).show
//统计点击次数的最值,总和,平均数
df.agg(max("click_num"),sum("click_num"),min("click_num"),avg("click_num")).show
//按点击次数分组统计
df.groupBy("click_num").count().show()
//读取json文件,保存为parquet格式
val df = sqlContext.read.format("json").load("hdfs://localhost:9000/myspark6/goods_visit.json")  
df.select("goods_id", "click_num").write.format("parquet").save("goods_visit.parquet")  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值