Java教程

7.Spark SQL

本文主要是介绍7.Spark SQL,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.请分析SparkSQL出现的原因,并简述SparkSQL的起源与发展。

  SparkSQL的出现,解决了对不同数据源和不同数据的操作,例如结构化和非结构化数据。还有可以支持融合关系查询和复杂分析算法。

  SparkSQL的前身是Shark,Shark中提供了类似于Hive的功能。但是Shark设计中导致了两个问题,一是执行计划优化完全依赖Hive, 二是Spark是线程进行,而MapReduce是进程级并行,此此过程会导致线程安全问题。而转向SparkSQL的开发。

 

2. 简述RDD 和DataFrame的联系与区别?

RDD是分布式的Java对象的集合,但是,对象内部结构对于RDD而言是不可知的。DataFrame是一种以RDD为基础的分布式数据集,提供了详细的结构信息,就相当于数据库的一张表。

 

3.DataFrame的创建

spark.read.text(url)

spark.read.json(url) 注意从不同文件类型生成DataFrame的区别。

spark.read.format("text").load("people.txt")

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

这篇关于7.Spark SQL的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!