hbase介绍

hbase

什么是hbase

  • 是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统
  • 可以用来在pc server上搭建起大规模的结构化数据存储的集群
  • 利用hdfs为其文件存储系统,利用mapreduce来处理数据,zookeeper作为协调工具

hbase应用场景

  • 需对数据进行随机读操作或者随机写操作
  • 大数据量高并发操作,比如每秒对PB级数据进行上千次操作
  • 读写均是非常简单的操作

逻辑数据类型

  • hbase中的表是稀疏表
  • 逻辑模型会将hbase中的行分割成按照列族存储的模型
  • 行键
    • 只有唯一一个行键
    • 按字典顺序排列
  • 时间戳
    • 是一个六十四位整数
  • 列族:列的集合
    • 支持动态扩展,无需提前定义
    • 所有列均已二进制形式存储,用户需要自行进行类型转换
    • 在物理存储上同一个族的数据是存储在一起的
  • 时间戳:记录更新的时间
    • 更新时添加一条记录
    • 查找时取最新的时间的记录

系统架构

  • client:包含访问hbase的接口,维护着cache来加快对hbase的访问,比如region的位置信息
  • zookeeper
    • 保证任何时候,集群中只有一个running master
    • 存储所有region的寻址入口
    • 实时监控region server的状态,将region的上线和下线信息实时通知master
    • 存储hbase的schema,包括有哪些table,每个table有哪些column family
  • master
    • 启动多个hmaster
    • 通过zookeeper的master election机制保证总有一个master运行
    • 为region server分配region,并且使其负载平衡
    • 发现失效的region server并重新分配其上的region
  • region server
    • 维护master分配给它的region,处理对这些region的IO请求
    • 负责切分在运行过程中变得过大的region

hbase shell

hbase可以进行的操作

posted @ 2019-11-10 09:43  赵大暖  阅读(159)  评论(0编辑  收藏  举报