理论:
SparkSQL:
*SPARK中原生的RDD是没有数据结构的(主要部件:SPARK CORE[是spark的核心;rdd是spark core的核心];Spark SQL;Spark Streaming;MLlib;GraphX)[spark的最底层大部分基于HDFS的,Shark中的数据信息等也是对应HDFS的文件]*对RDD的变换和操作不能采用传统的SQL方法
*SparkSQL应运而生并建立在SHARK上,伯克利实验室Spark生态环境的组件之一(shark底层依赖于Hive引擎的,但在shark平台上,shark的解析速度是Hive的几多倍;)
*SHARK最初很大程度上依赖于HIVE如语法解析器、查询优化器等。(相当于mysql数据库用来存储数据的,可写SQL语句,做数据分析,和mysql区别它将数据存储在HDFS上。)
*改进的SparkSQL框架摆脱了对Hive的依懒性,所以无论在数据兼容、性能优化、组件扩展方面都得到了极大的方便。
优势:
数据兼容:数据结果本身就是SPARK RDD。(spark SQL不能直接处理RDD数据集,因为它不是结构化的,所以我们需要把RDD 转成Spark的);
性能优化;
组件扩展。