1.1 HBase的是个啥子?

是建立的HDFS之上,提供高可靠性高性能列存储可伸缩实时读写的分布式数据库系统。

  • 在需要实时读写随机访问超大规模数据集时,可以使用HBase。

1.2 HBase的特点

  • 海量存储

    • 可以存储大批量的数据
  • 列式存储
    • HBase表的数据是基于列族进行存储的,列族是在列的方向上的划分。
  • 极易扩展
    • 底层依赖HDFS,当磁盘空间不足的时候,只需要动态增加datanode节点就可以了
    • 可以通过增加服务器来对集群的存储进行扩容
  • 高并发
    • 支持高并发的读写请求
  • 稀疏
    • 稀疏主要是针对HBase列的灵活性,在列族中,你可以指定任意多的列,在列数据为空的情况下,是不会占用存储空间的。
  • 数据的多版本
    • HBase表中的数据可以有多个版本值,默认情况下是根据版本号去区分,版本号就是插入数据的时间戳
  • 数据类型单一
    • 所有的数据在HBase中是以字节数组进行存储

2. HBase表的数据模型

2.1 rowkey行键

  • table的主键,table中的记录按照rowkey 的字典序进行排序
  • Row key行键可以是任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes)

2.2 Column Family列族

  • 列族或列簇
  • HBase表中的每个列,都归属与某个列族
  • 列族是表的schema的一部分(而列不是),即建表时至少指定一个列族
  • 比如创建一张表,名为user,有两个列族,分别是infodata,建表语句create 'user', 'info', 'data'

2.3 Column列

  • 列肯定是表的某一列族下的一个列,用列族名:列名表示,如info列族下的name列,表示为info:name
  • 属于某一个ColumnFamily,类似于我们mysql当中创建的具体的列

2.4 cell单元格

  • 指定row key行键、列族、列,可以确定的一个cell单元格

  • cell中的数据是没有类型的,全部是以字节数组进行存储

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2dAIG3PB-1613899803638)(assets/Image201911072218.png)]

2.5 Timestamp时间戳

  • 可以对表中的Cell多次赋值,每次赋值操作时的时间戳timestamp,可看成Cell值的版本号version number
  • 即一个Cell可以有多个版本的值

3. HBase整体架构

3.1 Client客户端

  • Client是操作HBase集群的入口

    • 对于管理类的操作,如表的增、删、改操纵,Client通过RPC与HMaster通信完成
    • 对于表数据的读写操作,Client通过RPC与RegionServer交互,读写数据
  • Client类型:
    • HBase shell
    • Java编程接口
    • Thrift、Avro、Rest等等

3.2 ZooKeeper集群

  • 作用

    • 实现了HMaster的高可用,多HMaster间进行主备选举

    • 保存了HBase的元数据信息meta表,提供了HBase表中region的寻址入口的线索数据

    • 对HMaster和HRegionServer实现了监控

3.3 HMaster

  • HBase集群也是主从架构,HMaster是主的角色,是老大
  • 主要负责Table表和Region的相关管理工作:
  • 关于Table
    • 管理Client对Table的增删改的操作
    • 关于Region
      • 在Region分裂后,负责新Region分配到指定的HRegionServer上
      • 管理HRegionServer间的负载均衡,迁移region分布
      • 当HRegionServer宕机后,负责其上的region的迁移

3.4 HRegionServer

  • HBase集群中从的角色,是小弟

  • 作用

    • 响应客户端的读写数据请求
    • 负责管理一系列的Region
    • 切分在运行过程中变大的region

3.5 Region

  • HBase集群中分布式存储的最小单元
  • 一个Region对应一个Table表的部分数据

HBase使用,主要有两种形式:①命令;②Java编程

HBase是个啥子?相关推荐

  1. 体验一次Mac Win10主题——Win10美化之路

    MAC Win10主题--Win10美化之路 偶遇致美化 一次偶然的机会,在网上看到了致美化 这个网站,好奇怎样给Windows 10换主题.Windows系统的界面风格虽然比较高效.不过UI界面是真 ...

  2. JAVA_基础部分_综合篇

    JVM (1) 基本概念: JVM是可运行Java代码的假想计算机 ,包括一套字节码指令集.一组寄存器.一个栈.一个垃圾回收,堆 和 一个存储方法域.JVM 是运行在操作系统之上的,它与硬件没有直接的 ...

  3. HBase中Zookeeper核心配置信息解读

    目录 一.HBase与Zookeeper的关系 1.1 HA管理 1.2 RegionServer管理 1.3 元数据Region 1.4 Region管理 1.5 预写日志恢复 1.6 hbase- ...

  4. 2021年大数据HBase(十七):❤️HBase的360度全面调优❤️

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录

  5. 2021年大数据HBase(十六):HBase的协处理器(Coprocessor)

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 HBase的协处理器(Coprocessor) 一.起源 二 ...

  6. 2021年大数据HBase(十五):HBase的Bulk Load批量加载操作

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 HBase的Bulk Load批量加载操作 一.Bulk L ...

  7. 2021年大数据HBase(十四):HBase的原理及其相关的工作机制

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 HBase的原理及其相关的工作机制 一.HBase的flus ...

  8. 2021年大数据HBase(十三):HBase读取和存储数据的流程

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 HBase读取和存储数据的流程 一.HBase读取数据的流程 ...

  9. 2021年大数据HBase(十二):Apache Phoenix 二级索引

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 前言 Apache Phoenix 二级索引 一.索引分类 ...

最新文章

  1. R语言威尔考克森秩和统计分布函数Wilcoxon rank Sum Statistic Distribution(dwilcox, pwilcox, qwilcox rwilcox)实战
  2. linux基础知识_压缩—进程管理-网络管理-ftp-nfs-ssh-scp
  3. Cell Reports | 佩戴假肢后,真的能产生正确位置的触觉感吗?研究人员表示并不能...
  4. Linux C编程--进程间通信(IPC)3--信号集和发送信号介绍
  5. (IT/互联网行业)你给自己当前的职位拼几分?(评分标准,个人看法,勿喷~)...
  6. 用Python3Request爬取英雄联盟皮肤、单线程爬取
  7. 博后招募 | 澳大利亚悉尼大学徐畅老师招收深度学习方向博士后/全奖博士
  8. python转为字节_将字节转换为python中的位
  9. iOS中XML解析 (一) TBXML (实例:打印xml内容及存储到数组)
  10. Java 性能优化系列之3.1[JVM调优]
  11. ubuntu16.04 jdk安装及环境配置
  12. 【软考】专栏导读(软考全面介绍、资格报考建议)
  13. 消息队列原理及activeMQ基本知识点
  14. 关于让div元素垂直居中的几种方法
  15. 程序员小故事-战术上的勤奋和战略上的懒惰
  16. Python读xml
  17. 吃鸡服务器维护7月5号,绝地求生7月5日维护到几点 7月5日吃鸡更新维护公告
  18. Android中的传感器之---加速度传感器
  19. 读书笔记(八)--货币战争 金权天下
  20. echarts 路线图 实例 线路图 及线路图特效

热门文章

  1. 计算机文件与桌面文件同步,电脑文件同步到手机的技巧
  2. Windows系统删除保存在凭据管理器中的密码
  3. 向企业微信发送文字、图片的接口【亲测有效】
  4. 【入门】广电行业DNS、DHCP解决方案详解(三)——DNS部署架构及案例
  5. Java每日一题——>19. 删除链表的倒数第 N 个结点
  6. 2020年中高级iOS大厂面试宝典+答案
  7. 战地系列服务器架设,战地3服务器架设数据库
  8. 安卓通过链接打开淘宝客户端
  9. java 与或非_JAVA 或与非运算符 与()、或(|)、异或(^)
  10. JSD-2204-续Docker命令-布隆过滤器的测试-秒杀业务完善-ELK-配置中心-Day18