谈谈hive和hbase的那些事
hive和hbase都是基于hadoop的架构之上使用hadoop作为底层存储。
hive是作为分布式数据仓库
hbase是作为分布式数据库
hive还是借用hadoop的MapReduce来完成一些hive中的命令的执行
hbase与hive都是单独安装的
hive用来批量处理数据,HBase用来快速索引数据。
hive是为了简化编写MapReduce程序而生的,hive本身不存储和计算数据,他完全依赖HDFS和mapreduce,hive中表纯逻辑表,就是表的基本定义和表的元数据
hbase为查询而生,他通过组织节点内所有机器的内存,提供一个超大的内存hash表,他需要组织自己的数据结构,包括磁盘和内存中的数据,而hive是不做这些工作的,表在hbase中是物理表,而不是逻辑表,搜索引擎用他来存储索引,以满足查询的实时性需求。
hbase的索引文件建立方式是个缺陷
hive的索引文件扩展却是个缺陷