学习大数据开发,一定不可错过的大数据组件图谱——很齐全( 十 )

Phoenix是一个Java中间层 , 可以让开发者在Apache HBase上执行SQL查询 。 Phoenix完全使用Java编写 , 并且提供了一个客户端可嵌入的JDBC驱动 。 Phoenix查询引擎会将SQL查询转换为一个或多个HBase scan , 并编排执行以生成标准的JDBC结果集 。

Pig是一种编程语言 , 它简化了Hadoop常见的工作任务 。 Pig可加载数据、转换数据以及存储最终结果 。 Pig最大的作用就是为MapReduce框架实现了一套shell脚本 , 类似我们通常熟悉的SQL语句 。

Hive是基于Hadoop的一个数据仓库工具 , 可以将结构化的数据文件映射为一张数据库表 , 并提供简单的sql查询功能 , 可以将sql语句转换为MapReduce任务进行运行 。 其优点是学习成本低 , 可以通过类SQL语句快速实现简单的MapReduce统计 , 不必开发专门的MapReduce应用 , 十分适合数据仓库的统计分析 。

SparkSQL的前身是Shark , SparkSQL抛弃原有Shark的代码并汲取了一些优点 , 如内存列存储(In-Memory Columnar Storage)、Hive兼容性等 。 由于摆脱了对Hive的依赖性 , SparkSQL无论在数据兼容、性能优化、组件扩展方面都得到了极大的方便 。

推荐阅读