Spark SQL的官网解释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark SQL的官网解释相关的知识,希望对你有一定的参考价值。

一.官网位置

1.位置

技术图片

2.解释

官网位置 DataSet1.6出现的
SchemaRDD < 1.3    1.3版本前叫 SchemaRDD   1.3以后 叫DataFrame 
DataSet支持 Scala , JAVA 不支持python
DataFrame 支持四种 JAVA,Scala.Python,R
DataFrame:并不是spark sql独创的,原来就有的,从其他框架借鉴过来的

二.DataFrame 注意事项

1.注意

分布式的数据集
按列进行组织的
就是等于关系型数据库总的一张表
DataFrame=DataSet[Row] 类型是Row

三.DataFram 与RDD的区别

1.定义层面

RDD定义里面有泛型 RDD[person ]  RDD不知道Person里面有什么的
DataFrame  不一样 ,里面是张表,所以暴露的信息多

技术图片
技术图片

2.底层方面

RDD开发各种语言有各自的运行环境,所以性能不一样,差异很大,但是DataFrame 是统一都经
过计划,在执行,不用管语言开发,性能差不多

技术图片

3.API方面

DataFrame   比RDD 更加丰富

三.其余注意事项

1.注意点

Spark SQL入口点   2.0版本
    <2: SQLContext   HiveContext
    >=2: SparkSession
spark-shell  启动会默认启动sc,spark 两个  SparkContext,SparkSession
spark.read.json() 不推荐
可以这样写
   spark.read.format("json").load(path) 
   spark.read.format("text").load(path)

技术图片

2.支持hive模式代码

  val spark = SparkSession.builder()
      .appName("Test")
      .master("local[2]")
      .enableHiveSupport() //支持hive
      .getOrCreate()

以上是关于Spark SQL的官网解释的主要内容,如果未能解决你的问题,请参考以下文章

spark关于join后有重复列的问题(org.apache.spark.sql.AnalysisException: Reference '*' is ambiguous)(代码片段

mybatis入门 配置文件解释 及测试

大数据反爬项目Lua+Spark+Redis+Hadoop框架搭建

Huawei_Netconf_Ncclient

Python开发环境搭建

python - 安装/解释器/变量