HBASE介绍
HBase定义
HBASE是一个数据库----可以提供数据的实时随机读写
HBASE与mysql、oralce、db2、sqlserver等关系型数据库不同,它是一个NoSQL数据库(非关系型数据库)
HBase特性
- HBase的表模型与关系型数据库的表模型不同:
- HBase的表没有固定的字段定义;
- HBase的表中每行存储的都是一些key-value对
- HBase的表中有列簇的划分,用户可以指定将哪些kv插入哪个列族
- HBase的表在物理存储上,是按照列簇来分割的,不同列簇的数据一定存储在不同的文件中
- HBase的表中的每一行都固定有一个行键,而且每一行的行键在表中不能重复
- HBase中的数据,包含行键,包含key,包含value,都是byte[ ]类型,HBase不负责为用户维护数据类型
- HBase对事务的支持很差
HBASE与RDBMS和NOSQL区别
HBase的表数据存储在HDFS文件系统中。
从而,hbase具备如下特性:存储容量可以线性扩展; 数据存储的安全性可靠性极高!
- hbase的表模型跟mysql之类的关系型数据库的表模型差别巨大
- hbase的表模型中有:行的概念;但没有字段的概念
- 行中存的都是key-value对,每行中的key-value对中的key可以是各种各样,每行中的
key-value对的数量也可以是各种各样
HBASE应用场景
