HBase 来源
Hbase是BigTable的开源实现
BigTable:
分布式存储系统,最初是为了解决在大量数据下互联网的搜索问题
特点:
(1)架构在GFS上,使用GFS作为底层数据存储;
(2)利用谷歌的MapReduce来处理海量数据;
(3)利用Chubby提供协同服务管理;
(4)可以扩展为PB级别的数据和上千台机器;
Hbase简介
- 一个分布式数据库,主要存储非结构化和半结构化的松散数据(底层分布式文件系统只存储非结构化数据)。
- 目标;存储非常庞大的表,通过水平扩展,利用廉价计算机集群处理数据
- 在Hadoop中的位置:
使用HDFS作为底层存储结构;利用Hadoop MapReduce来处理海量数据;利用Zookeeper作为协同服务
项目 | Bigtable | HBase |
---|---|---|
文件存储系统 | GFS | HDFS |
海量数据存储 | MapReduce | Hadoop MapReduce |
协同服务管理 | Chubby | Zookeeper |
-
在已有HDFS和关系型数据库的条件下,为什么产生了HDFS:
(1) Hadoop主要解决大规模数据的离线批量处理问题,但是受限于Hadoop MapReduce框架的延迟数据处理机制,使得其无法实施处理大规模的数据
(2)HDFS面向批量访问,而非随机访问
(3)传统的关系型数据库无法应对数据规模剧增是产生的问题
(4)传统关系数据库在结构数据变化时一般要停机维护,且空列浪费存储空间 -
和传统关系数据库区别:
传统数据库 | HBase | |
---|---|---|
数据类型 | 关系模型,具有丰富的数据类型和存储方式 | 数据模型,将数据存储为未经解释的字符串 |
数据操作 | 操作丰富,涉及多表连接 | 只有简单的增删改查 |
存 |