一、Hive概念
- Hive是hadoop
数据仓库管理工具 ,不是数据库,本身是不存储数据和处理数据的,其依赖于HDFS存储数据,依赖于MapReducer进行数据处理。 - Hive的优点是学习成本低,可以通过类SQL语句(HSQL)快速实现简单的MR任务,不必开发专门的MR程序。
- 由于Hive是依赖于MapReducer处理数据的,有很高的延迟性。
- Hive的本质就是将结构化的数据文件映射为一张数据库表。
二、HBase概念
- HBase是一种
分布式、可扩展、支持海量数据存储的NOSQL数据库 。 - HBase提供一个超大的内存hash表,支持随机读写,适用于海量数据的实时数据处理。
三、Hive与HBase的区别
特点 | Hive | HBase |
---|
产品定位 | hadoop数据仓库管理工具 | 分布式、可扩展、支持海量数据存储的NOSQL数据库 | 底层存储 | Hadoop-HDFS | Hadoop-HDFS | 数据处理 | 依赖于MapReducer处理数据 | 提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作 | 适用范围 | 适用于离线数据的批处理 | 适用于实时数据的处理 | 表单类型 | 逻辑表 | 物理表 | 写入操作 | 不支持随机写操作 | 支持随机写入操作 | 查询操作 | 通过类SQL语句(HSQL)快速实现简单的MR任务 | HBase只支持简单的键查询,不支持复杂的条件查询 |
四、Hive和HBase的关系
在大数据架构中,Hive和HBase是协作关系 ,Hive是一种类SQL的引擎 ,并且运行MapReduce任务,Hbase是一种在Hadoop之上的NoSQL 的key-value数据库 。Hive可以用来进行统计查询 ,HBase可以用来进行实时查询 ,数据也可以从Hive写到Hbase,设置再从Hbase写回Hive。
|