栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Hbase的数据模型

Hbase的数据模型

Hbase的数据模型

文章目录
  • Hbase的数据模型
    • 1. NameSpace
    • 2. Table
    • 3. RowKey
    • 4. Column Family
    • 5. Column Qualifier
    • 6. Timestamp
    • 7. Cell

1. NameSpace
  • 定义:命名空间,他是指对一组表的逻辑分组,类似RDBMS中的数据库

  • 作用:利用命名空间,在多租户场景下可做到更好的资源和数据隔离。

  • 命名空间可以管理维护,我们可以创建,删除或更改命名空间

  • 两个特殊的命名空间:

    • hbase:系统内建表,包含namespace和meta表
    • default:用户建表时未指定namespace的表都创建在此
2. Table
  • 组成:由多个行组成
  • 作用:Hbase是用表来存储数据的
3. RowKey
  • 定义:行键,每一行的主键列

  • 作用:是用来检索记录的主键,是一行数据的唯一标识

  • 以什么形式保存?

    • 在Hbase内部,rowKey保存为字节数组byte[]
  • 存储时怎么排序?

    • 数据按照RowKey的字典序(byte order)排序存储设计RowKey时,要充分排序存储这个特性,将经常一起读取的行存储放到一起。来提高查询效率
  • 行的一次读写是原子操作 (不论一次读写多少列)

4. Column Family
  • 定义:列族是每个子列的父级,每个子列都属于一个列族,一个列族包含一个或者多个相关列

  • 创建表的时候需要指定列族,而列不需要必须指定。通过“列族名:列名”来表示某个具体的子列。

  • 为了后期优化,一般一个表中的列族数不要超过3个

  • 列隶属于列族,列族隶属于表

  • Hbase中的Schema就是 TableName + Column Family Name

  • 将功能属性相近的列放在同一个列族,而且同一个列族中的列会存放在同一个Store中

5. Column Qualifier
  • 定义:列簇的限定词,理解为列的唯一标识。但是列标识是可以改变的,因此每一行可能有不同的列标识使用要求:使用的时候必须 列族:列

  • 列可以根据需求动态添加或者删除,同一个表中不同行的数据列都可以不同

6. Timestamp
  • 定义:时间戳,版本号

  • 类型:时间戳的类型是 64位整型

  • 作用:通过rowkey和column family,column qualifier确定的一个存贮单元通过时间戳来索引。也就是说它可以做索引

  • 每个cell都保存着同一份数据的多个版本。版本通过时间戳来索引

  • 默认的配置:查询数据的时候,如果不指定版本数,默认显示版本号最新(高)的数据

  • 每个cell中,不同版本的数据按照时间倒序排序,即最新的数据排在最前面

  • 时间戳的赋值方式

    • 时间戳可以由hbase(在数据写入时自动 )赋值,此时时间戳是精确到毫秒的当前系统时间。
    • 时间戳也可以由客户显式赋值。
    • 所以如果应用程序要避免数据版本冲突,就必须自己生成具有唯一性的时间戳
  • 为了避免数据存在过多版本造成的的管理 (包括存贮和索引)负担,hbase提供了两种数据版本回收方式。

    • 一是保存数据的最后n个版本,
    • 二是保存最近一段时间内的版本(比如最近七天)。用户可以针对每个列族进行设置。
7. Cell
  • 定义:存储单元

  • 组成:Cell是由row,column family,column qualifier,version 组成的

  • 类型:cell中的数据是没有类型的,全部是字节码形式存贮。

    • 因为HDFS上的数据都是字节数组
  • 默认

    • 外观看到的每个单元格其实都对应着多个存储单元,默认情况下一个单元格对应着一个存储单元
    • 一个存储单元可以存储一份数据,如果一个单元格有多个存储单元就表示一个单元格可以存储多个值
  • 怎么设置存储单元的个数:可以通过version来设置存储单元个数

  • 怎么确定唯一的单元:可以通过rowKey + columnFamily + column + timestamp来唯一确定一个存储单元

  • 注意:hbase按照时间戳降序排列各时间版本,其他映射建按照升序排序。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/584609.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号