Hive的基本原理(一)
1. 前言 前面讲了很多关于集群搭建、以及HDFS和MapReduce的基本操作,接下来终于能学习新的内容了。。 Hive本身是数据仓库,那么什么是数据仓库呢? 数据仓库是为了协助分析报告,支持决策,为需要业务智能的企业提供业务流程的改进和指导,从而节省时间和成本,提高质量。它与数据库系统的区别是,数据库系统可以很好的解决事务处理,实现对数据的“增删改查”操作,而数据仓库则是用来查询分析的数据库,通常不会用来做单条数据的插入、修改和删除。 2. 什么是Hive Hive是基于Hadoop构建的一套数据仓库分析工具,它提供了丰富的SQL查询方式来分析存储在Hadoop分布式文件系统中的数据。可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能;也可以将SQl语句转化为MapReduce任务运行,通过SQl去查询分析需要的内容。这套类SQL简称为HQL,使对MapReduce不熟悉的用户利用HQL语言查询、汇总、分析数据,简化MapReduce代码,从而使用Hadoop集群。而MapReduce开发人员可以把自己写的Mapper和Reducer作为插件来支持Hive做更复杂的数据分析。 3. Hive和数据库的异同 Hive与传统的关系型数据库不同,虽然Hive提供了类SQL的查询语言(Hive Query Language),但是引入HQL的主要目的是为了降低学习成本