简单介绍Hive和HBase在大数据中的应用场景。

Hive

  1. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能。
  2. Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。hive需要用到hdfs存储文件,需要用到MapReduce计算框架。
  3. hive可以认为是map-reduce的一个包装。hive的意义就是把好写的hive的sql转换为复杂难写的map-reduce程序。

HBase

  1. HBase是Hadoop的数据库,一个分布式、可扩展、大数据的存储。
  2. HBase是物理表,不是逻辑表,提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作。
  3. HBase可以认为是hdfs的一个包装。他的本质是数据存储,是个NoSql数据库。HBase部署于hdfs之上,并且克服了hdfs在随机读写方面的缺点。

联系与区别

  1. Hbase和Hive在大数据架构中处在不同位置,Hbase主要解决实时数据查询问题,Hive主要解决数据处理和计算问题,一般是配合使用。
  2. 在大数据架构中,Hive和HBase是协作关系。
  3. 数据流一般如下:
(1)通过ETL工具将数据源抽取到HDFS存储。
(2)通过Hive清洗、处理和计算原始数据。
(3)HIve清洗处理后的结果,如果是面向海量数据随机查询场景的可存入Hbase。
(4)数据应用从HBase查询数据。