什么是SaparkSQL?
SaprkSQL是spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataSet并且作为分布式SQL查询引擎的作用。
SparkSQL的由来
我们学过Hive,它是将Hive SQL转化为MapReduce然后提交集群上去运行,大大简化了编写MapReduce的程序的复杂性,但是由于计算的时候效率比较慢。所以SparkSql应运而生(刚开始的时候叫shark),SaprkSQL将Spark SQL转化为RDD,然后提交集群执行,执行效率很快。
Hive是Shark的前身,Shark是SparkSQL的前身,SparkSQL产生的根本原因是其完全脱离了Hive的限制。
SparkSQL和Hive的效率比较
SparkSQL是兼容Hive语法的SQL执行引擎,由于底层计算采用了Spark,性能比MapReduce的Hive普遍快2倍以上,如果全部加载到内存的话,将快10倍以上。
SparkS