Spark Sql 使用

SparkSql简介

SparkSql主要用于处理结构化的数据以及Spark执行类sql的查询

SparkSql的数据源:SparkSql的数据源可以是JSON字符串,JDBC,HIVE,HDFS等

DataFrame

DataFrame也是一个分布式的数据容器,与RDD类似,也可以转换成RDD,DataFrame除了保存数据外,还保存数据的结构信息scheme,DataFrame底层封装的就是RDD,只不过是row的RDD

DataSet

1.DataSet是DataframeAPI的一个扩展,是Spark最新的数据抽象

2.DataSet支持编解码器,当需要访问非堆上的数据可以避免反序列化整个对象,提高了效率

3.样例类被用来在Dataset中定义数据的结构信息,样例类中每个属性的名称直接映射到DataSet中的字段名称

4.DataFrame是Dataset的特例,DataFrame = Dataset[Row],可以通过as方法将DataFrame转换为Dataset,Row是一个类型,跟Car,Person这些类型一样,所有的表结构信息都用Row来表示

5.DataSet是强类型,可以有DataSet[Car],DataSet[Person]

6.DataFrame只是知道字段,但是不知道字段类型,所以在执行这些操作的时候是没办法在编译的时候检查是否类型失败的

SparkSQL怎么来查询

在1.6版本中,SparkSQL有两种SQL查询起始点:一个叫SQLContext,用于Spark自己提供的SQL查询,一个叫HiveContext,用于连接Hive的查询

2.0以上的版本中,SparkSQ

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值