千家信息网

Hbase原理架构与安装部署教程

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,1. HBase是什么1.1 HBase的概念HBase基于Google的BigTable论文,是建立的==HDFS==之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统。在需要=
千家信息网最后更新 2026年11月01日Hbase原理架构与安装部署教程

1. HBase是什么

1.1 HBase的概念

  • HBase基于Google的BigTable论文,是建立的==HDFS==之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统。
  • 在需要==实时读写随机访问==超大规模数据集时,可以使用HBase。

1.2 HBase的特点

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

2、Hbase整天架构

2.1 Client客户端

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

2.2 ZooKeeper集群

  • 作用

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

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

    • 对HMaster和HRegionServer实现了监控

2.3 HMaster

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

2.4 HRegionServer

  • HBase集群中从的角色
  • 作用

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

2.5 Region

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

3、HBase数据模型

3.1 rowkey行键

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

3.2 Column Family列族

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

3.3 Column列

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

3.4 cell单元格

  • 指定row key行键、列族、列,可以确定的一个cell单元格
  • cell中的数据是没有类型的,全部是以字节数组进行存储

    3.5 Timestamp时间戳

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

    4、HBase安装部署

    4.1、下载安装包

    下载地址:https://archive.apache.org/dist/hbase/1.2.1/

    4.2、安装Hbase

    解压到安装目录: tar -zxcf habse-1.2.1-bin.tar.gz -C /opt/bigdata2.7
    重命名解压目录:mv hbase-1.2.1 hbase

    4.3、修改配置文件

    1、需要把hadoop中的配置文件core-site.xml,hdfs-site.xml拷贝到hbase安装目录下的conf文件夹中
    2、修改conf目录下的配置文件
    (1)修改hbase-env.sh
    #添加java环境变量
    export JAVA_HOME=/kkb/install/jdk1.8.0_141
    export HBASE_MANAGES_ZK=false`

(2)修改 hbase-site.xml

                hbase.rootdir        hdfs://node01:8020/hbase                    hbase.cluster.distributed        true                      hbase.zookeeper.quorum        node01:2181,node02:2181,node03:2181      

(3)修改regionservers

vim regionservers
node02
node03

(4)修改backup-masters'

node2

3、配置hbase的环境变量

vi /etc/profile

export HBASE_HOME=/opt/bigdata2.7/hbase
export PATH=$PATH:$HBASE_HOME/bin

4.4、分发hbase目录到其他节点

进入habase目录:cd /opt/bigdata2.7
scp -r hbase node2:/opt/bigdata2.7
scp -r hbase node3:/opt/bigdata2.7
scp /etc/profile node2:/etc
scp /etc/profile mpde3:/etc

4.5、让所有的节点hbase环境变量生效

在所有节点执行:
source /etc/profile

5、Hbase集群启动和停止

(1)启动
前提条件:先启动hadoop集群和zookeeper集群
启动hbase
start-hbase.sh

(2)停止
stop-hbase.sh
profile mpde3:/etc`

4.5、让所有的节点hbase环境变量生效

在所有节点执行:
source /etc/profile

5、Hbase集群启动和停止

(1)启动
前提条件:先启动hadoop集群和zookeeper集群
启动hbase
start-hbase.sh

(2)停止
stop-hbase.sh

数据 集群 存储 版本 目录 节点 管理 变量 文件 环境 配置 单元 时间 类型 架构 稀疏 作用 入口 分布式 前提 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州万易互联网科技有限公司 互联网金融监管科技数据 科技互联网政务服务 深圳科技互联网 科技服务与互联网 善班互联网科技有限公司 互联网科技上市公司 火传媒上海互联网科技 金融科技和互联网金融 深圳卡尔迅互联网科技有限公司怎么样 互联网科技创新服务 武汉健翔互联网络科技有限公司 翼展科技 首家互联网医院 福建互联网展示科技馆设计 科技互联网公司两年变化 广西泛欧互联网科技有限公司 陕西彩京云互联网科技有限公司 互联网科技创业计划的风险分析 恒生科技互联网指数十大成分股 小牛互联网科技有限公司地址 互联网核心科技是什么 互联网金融 科技金融 小马过河互联网科技 郑州华宇互联网科技 互联网科技网站 左右互联网络科技 农村开互联网科技讲堂 中国的互联网科技企业的崛起 互联网金融科技公司干啥的 亚光科技低轨卫星互联网
0