Hbase是什么

--- Hbase 简述

分布式,面向列的开源数据库

高可靠性高性能面向列可伸缩分布式数据系统

高可靠性: 安全性  对外服务可靠

高性能: 处理数据的速度 效率  集群所有机器的运算资源处理数据

面向列: 在hbase底层存储的所有的数据都是以key/value组成的字节数据

可伸缩性: 存储能力 运算能力 两者来看  通过添加节点来扩展存储容量和添加运算资源

用于存储海量的结构化半结构 非结构化 的数据

即 结构化  非结构  数据系统

  • 将数据存储在不同的机器上
  • 利用不同机器处理并发请求

*** 特点

  • 海量存储  
  • 列式存储  
  • 极易扩展 
  • 稀疏性

*** 应用场景

不适合使用

需要数据分析,比如报表(rowkey) 对sql支持不好

单表数据不超过千万(200万)

适合使用HBASE

单表数据超过千万 ,并发量还很高

数据分析需求弱 ,或者不需要那么灵活和实时

因此得出结论:Hbase 集群存储  数据量大 高并发  Hbase只适合做量大且维度并不是很复杂的场景  (当然可做 但是极其慢 固不建议)

--- 架构设计 流程

Client(客户端)

  • 提供了访问hbase的接口
  • 提供Cache提高了访问hbase的效率

Zookeeper

  • 通过选举保证任何时候,集群中只有一个MasterMasterRegionServer 启动都会向Zookeeper注册 
  • 存储所有Region的寻址入口:索引表---Meta---所在服务器
  • 实时监控RegionServer的上下线信息  并实时通知给Master
  • 存储Hbase的 Schema(表结构) 和 Table元数据 

注意:Region 一张大表的行范围数据(抽象)

          Zookeeper的引入使得Master不再有单节点故障哦!!!

HMaster

  • 为RegionServer分配Region数据
  • 负责RegionServer的负载均衡
  • 发现失效的 RegionServer 通过拆分LOG重新分配其上的region
  • 管理用户对Table定义的各类DDL操作

HRegionServer

  • 管理Master为其分配的region
  • 处理来自客户端读写请求
  • 负责底层HDFS交互,存储数据到HDFS
  • 负责Region变大以后的拆分
  • 负责Storefile合并工作 以及负载均衡相关的事

注:HMaster    ( Hbase集群的 主节点 )       HRegionServer  管理 Region 的机器

切记: Hbase表中的数据全是以 K,V 形式存在   

        一个完整的Key 是由 3 段构成:行,列,key

        Hbase表中的数据没有约束类型   以 byte[] 形式存储

--- 安装部署

  1. Hbase安装环境准备
  2. hbase安装详细步骤
  3. Hasee启停

 

1 Hbase安装环境准备

  1. 准备集群,集群中配置JDK环境
  2. 安装部署ZooKeeper集群并启动
  3. 集群节点时间同步 

            手动设置 :    date -s "2020-08-30 13:14:00"

            连接时间服务器 :    ntpdate 0.asia.pool.ntp.org

      4.HDFS集群正常运行

2 Hbase安装详细步骤

2.1 上传解压

[root@linux01]$ tar -zxvf  hbase-2.2.5-bin.tar.gz  -C  /opt/apps/

2.2  修改配置

   hbase-env.sh修改内容:注意放开注释

export JAVA_HOME=/opt/apps/jdk1.8.0_251
esc  /ZK
export HBASE_MANAGES_ZK=false

  hbase-site.xml修改内容

<configuration>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://linux01:9000/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>linux01:2181,linux02:2181,linux03:2181</value>
</property>
</configuration>

  regionservers 配置  启动集群中的Regionserver机器

linux01
linux02
linux03

集群分发

[root@linux01 apps]# scp -r hbase-2.2.5/ linux02:$PWD

[root@linux01 apps]# scp -r hbase-2.2.5/ linux03:$PWD

Hasee启停

bin目录下是一些可执行的命令

单节点   在机器上单节点启动

linux01机器 --->  bin>hbase-daemon.sh  start master 启动主节点

linux02机器 --->  bin>hbase-daemon.sh  start master 启动主节点 (备用 , 自带高可用)

linux01 机器--->  bin>hbase-daemon.sh  start regionserver  启动从节点

linux02 机器--->  bin>hbase-daemon.sh  start regionserver  启动从节点

linux03机器 --->  bin>hbase-daemon.sh  start regionserver  启动从节点

一键启动

start-hbase.sh  一键启动整个集群

配置环境变量


vi  /etc/profile
 
export  JAVA_HOME=/opt/apps/jdk1.8.0_251
export  HADOOP_HOME=/opt/apps/hadoop-3.2.1
export  ZOOKEEPER_HOME=/opt/apps/zookeeper-3.4.6
export  HBASE_HOME=/opt/apps/hbase-2.2.5
export  PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin:$HBASE_HOME/bin

 查看WEB页面

  http://linux01:16010/

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值