HBase数据存储

1、数据模型

  • Namespace(表命名空间):表命名空间不是强制的,当想把多个表分到一个组去统一管理的时候才会用到表命名空间。
  • Table(表):一个表由一个或者多个列族组成。数据属性,都在列族的定义中定义。
  • Row(行):一个行包含多个列。列通过列族分类。由于HBase是一个列式数据库,所以一个行中的数据可以分布在不同的服务器上。
  • Column Family(列族):列族是多个列的集合。列族的存在,提高存取性能。
  • Column   Qualifile(列):多个列组成一个行。列是可以随意定义的,一个行中的列不限名字、不限数量,只限定列族。
  • Cell(单元格):一个列中可以存储多个版本的数据。每个版本就成为一个单元格。
  • Timestamp(时间戳/版本号):用来标定同一个列中多个单元格的版本号。

注:

  • 在HBase中,rowkey按照字典排序。
  • HBase不支持表关联。
  • HBase部分支持ACID。(ACID即:原子性、一致性、隔离性、持久性)。

2、宏观架构:

以上图形说明了HBase的服务器角色构成:

  1. Master:负责启动的时候分配Region到具体的RegionServer,执行各种管理操作,比如Region的分割和合并。
  2. RegionServer:RegionServer上有一个或者多个Region。我们读取的数据就存储在Region上。
  3. HDFS:hadoop的一部分。HBase不是直接和服务器的硬盘交互的,而是和HDFS交互。因此HDFS是真正承载数据的载体。
  4. Zookeepeer:在HBase中扮演的角色类似于一个管家。管理着HBase中所有的ResgionServer信息,包括具体数据段放在哪一个RegionServer上。

 

 

由图5-4可知:

       一个ResgionServer包含有:一个WAL  和  多个Region。

WAL:预写日志,WAL是Write-Ahead Log的缩写。当操作到达Region的时候,HBase不管三七二十一把操作写到WAL里面去。HBase会先把数据放到基于内存实现的Memstore里,等数据达到一定的数量时才会刷写(flush)到最终储存的HFile内。

       作用:解决宕机之后的操作恢复问题,保证数据不会丢失。

多个Region:一段数据的集合。Region相当于一个数据分片。每一个Region都有起始rowkey和结束rowkey,代表了它所存储的row范围。

 

 

图5-5是单个Region内部的结构:

       一个Region包含有:每一个Region内都包含多个Stroe实例。

       Store:一个Store对应一个列族的数据,若一张表内有两个列族,则在一个Region里面就有两个Store。Stroe内部有MemStore和HFile两部分组成。

 

相关推荐

  1. ElasticSearch与HBase的分布式存储设计

    2024-06-15 09:00:03       43 阅读
  2. 6-HBase分布式数据库

    2024-06-15 09:00:03       29 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-15 09:00:03       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-15 09:00:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-15 09:00:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-15 09:00:03       18 阅读

热门阅读

  1. 条件循环语句有哪些?语法?区别?

    2024-06-15 09:00:03       7 阅读
  2. C# 通过Path获取后缀,文件名,目录等

    2024-06-15 09:00:03       7 阅读
  3. mysql的主从同步

    2024-06-15 09:00:03       7 阅读
  4. Linux时间子系统4:时钟源clocksource

    2024-06-15 09:00:03       6 阅读
  5. 超文本标记语言(HTML)简介

    2024-06-15 09:00:03       6 阅读
  6. Web Works API 和 Promise 的对比和区别

    2024-06-15 09:00:03       7 阅读
  7. 音视频开发-- 坑整理

    2024-06-15 09:00:03       6 阅读