HBase中的基本概念
HBase中的基本概念
Jackson_Mu 发表于3年前
HBase中的基本概念
  • 发表于 3年前
  • 阅读 110
  • 收藏 0
  • 点赞 1
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: HBase是Google Bigtable的开源实现。HBase是一个开源的、分布式的、多版本的、面向列的存储模型。HBase利用HDFS作为其文件系统(或本地),还可以通过MapReduce计算模型来并行处理大数据。下面我们了解一下HBase中的基本概念。

HBaseGoogle Bigtable的开源实现。HBase是一个开源的、分布式的、多版本的、面向列的存储模型。HBase利用HDFS作为其文件系统(或本地),还可以通过MapReduce计算模型来并行处理大数据。下面我们了解一下HBase中的基本概念:

  1. Row Key

    1)       Row key是检索记录的主键。

    2)       Row key行键 (Row key)可以是任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes),在hbase内部,row key保存为字节数组。

    3)       数据按照Row key的字典序(byte order)排序存储。设计key时,要充分排序存储这个特性,将经常一起读取的行存储放到一起。(位置相关性)

    4)       行的读写是原子操作。

  2. Column family (列族)

    1)       HBase表中的每个列都属于某个列族,列族必须作为表模式(schema)定义的一部分预先给出,必须在使用表之前定义。列名都是以列族作为前缀,中间以冒号(:)隔开,如:courses:math

    2)       访问控制、磁盘和内存的使用统计都是在列族层面进行的。实际应用中,列族上的控制权限能帮助我们管理不同类型的应用:我们允许一些应用可以添加新的基本数据、一些应用可以读取基本数据并创建继承的列族、一些应用则只允许浏览数据(甚至可能因为隐私的原因不能浏览所有数据)。

  3. Cell (存储单元)

    {row key, column(=<family> + <label>), version} 唯一确定的单元。cell中的数据是没有类型的,全部是字节码形式存贮。

  4. Timestamp(时间戳)

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

    2)       时间戳为64位整型。

    3)       可以自动赋值(当前系统时间),也可以用户自己指定。

    4)       不同版本数据按照时间戳倒序排。

    5)       HBase提供了两种数据版本回收机制:a. 保存数据最后n个版本;b. 保存最近一段时间内的版本。用户可以针对每个列族去设置。

标签: HBase
共有 人打赏支持
粉丝 68
博文 17
码字总数 15900
×
Jackson_Mu
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: