Hbase的定义是什么?

2020-04-02 13:47发布

2条回答

 一、 模型的逻辑实体包括6大概念,要始终牢记,基本描述了hbase的基本特点

  1、表(table):组织数据。

  2、行(row):表里数据按行存储,行键是唯一标示。行键没有数据类型,总是视为字节数组byte[]。

  3、列族(column family):行里的数据按列族分组,列族同时确定了物理存放,列族的设计很重要。

列限定符(column qualifier):简称列。列族里的数据通过列定位。列不必提前定义。【无模式db】

单元(cell):行键、列族、列3个指标确定一个单元,用来存放单元值。单元值没有数据类型,总是视为byte[]。【无模式db】时间版本(version):值可以保存多个版本,用时间戳标识。默认有3个版本。rdbms中是二维坐标,行+列;hbase中是4维坐标,行+列族+列+版本;hbase是key-value数据库库。

二、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。


一周热门 更多>