基本概念
HBase是一款大数据中nosql型数据库, 既然是nosql型的数据库, 一般来说不支持SQL 也不支持join 没有表关系 不支持事务(仅支持单行事务)…
HBase是由java开发的一款 基于HDFS 数据存储容器, 数据最终是存储在HDFS上, 那么也就意味着, 如果要启动HBase必须先启动号hadoop , 同时HBase设计思想来源于 Google发布的bigTable论文
HBase主要支持三种方式读取数据:
-
- 根据rowkey(主键|行键)来读取数据
-
- 根据rowkey的范围来读取数据
-
- 通过scan扫描全表数据
主要是用于存储结构化和半结构数据
HBase所有的数据一切皆字节
HBase的非常方便的进行扩展
HBase的表的特点:
-
- 大: 在hbase的表中, 一个表可以拥有上十亿上数据, 一个表支持上百万列
-
- 面向列: 面向于列族的存储方案
-
- 稀疏性: 当某个列在为空的时候, 在HBase并不占用任何的存储空间, 对效率也没有任何的影响, 可以将表设计非常稀疏
HBase的应用场景: 当在生产环境中, 如果数据具备以下二个及以上的时候, 可以尝试使用hbase来解决
-
- 数据量比较大
-
- 这些数据需要具备随机读写特性
-
- 要求延迟性比较低