一、Hive & Shark
- Hive:SQL-on-Hadoop,将SQL语句转化为MapReduce任务进行运行。
- Shark:Hive on Spark,类似Hive,将SQL语句转化为Spark作业。(停止维护了)
二、Hive on Spark
三、Spark SQL
- 增加了DataFrame(即带有Schema信息的RDD),用户可以在Spark SQL中执行SQL语句
3.1、DataFrame
- 一种以RDD为基础的分布式数据集,提供了详细的结构化信息。
- Spark2.0以上,使用SparkSession接口替代了Spark1.6中的SQLContext、HiveContext
- 常用操作
- printSchema()
- select()
- groupBy()
- sort()
四、RDD转化为DataFrame
- 反射机制推断RDD模式
- 编程方式定义RDD