HBase基本概念

一、HBase基本概念

1、模型的逻辑实体

包括6大概念,要始终牢记,基本描述了hbase的基本特点

  1. 表(table):组织数据。
  2. 行(row):表里数据按行存储,行键是唯一标示。行键没有数据类型,总是视为字节数组byte[]。
  3. 列族(column family):行里的数据按列族分组,列族同时确定了物理存放,列族的设计很重要。
  4. 列限定符(column qualifier):简称列。列族里的数据通过列定位。列不必提前定义。【无模式db】
  5. 单元(cell):行键、列族、列3个指标确定一个单元,用来存放单元值。单元值没有数据类型,总是视为byte[]。【无模式db】
  6. 时间版本(version):值可以保存多个版本,用时间戳标识。默认有3个版本。

rdbms中是二维坐标,行+列;hbase中是4维坐标,行+列族+列+版本
hbase是key-value数据库库。

2、HBase的存储模型:

  1. Region:是表按行键水平分割的存储单位,相当于rdbms的分区。在RegionServer上,是逻辑单元,是hbase分布的最小单位。
  2. Store:每个列族对应一个store。Region包含多个列族,即Region包含多个Store。
  3. StoreFile:每个store包含memStore和Stofile,MemStore是写缓存,写满后内存刷出就是StoreFile。 HFile:HFile是HBase数据存储在Hadoop上才有的概念,HBase底层存储结构可以不是Hadoop,上面引进StoreFile就是由于这个原因对底层存储文件做的一次封装。HFile通过hbase的dfsClient写入到hdfs。
    HBase基本概念_第1张图片

3、功能组件

  1. Client:访问hbase;缓存Cache。
  2. Zookeeper:确保唯一master;保存region地址;监控regionserver;存储hbase的元数据。
  3. Master:分配region;发现失效的regionserver;管理用户对table的操作。
  4. RegionServer:维护region;处理对region的IO;切分过大region。
    HBase基本概念_第2张图片

二、hbase特点

分布式、列式、nosql数据库

三、hbase的适应场景

1)存储海量数据
2)高写入
3)大数据的高效随即访问
4)高扩展性scale gracefully with data
5)结构或半结构化数据
6)不需要rdbms的全部特性,如跨表、跨行的事务;join?

你可能感兴趣的:(大数据,hbase)