欢迎投稿

今日深度:

hbase的集群搭建,

hbase的集群搭建,


前言

hbase是一款分布式的列式数据库,其数据源寄生在hadoop上,因而与hadoop共生,广泛应用在大数据领域,利用zookeeper作为其分布式协同服务,存储非结构化和半结构化的松散数据,其特点是高可靠,高性能,面向列,可伸缩,实时读写

HBase数据模型

  • Row Key 作为一行数据的唯一标识,按照字典顺序排序,存储64k的字节数据。
  • Column Family 列族,作为hbase一大亮点,一个列族作为一个数据表中的一个数据分片,给hbase表定义了规范,使得qualifier列可以动态加入
  • qualifier 作为列族的子列,在一个列族下可以存放多个子列,Column Family是一级列,而qualifier列是二级列,其关系是父子关系。
  • Timestamp时间戳 hbase中对于每一列的存储都有一个对应的时间戳来区分每个版本的差异,最新的数据版本排在最前面,时间戳的类型是64位整型。
  • cell单元格 单元格是有时间戳来作为版本区分,由子列和row key确定一个单元格,其存储的类型是byte数组

HBase架构

  • HMaster决策region server分配region,负责region server的负载均衡,和用户对table的增删改操作
  • RegionServer维护region,处理region的读写请求,负责切分region。
  • Region hbase自动把表水平划分成多个区域,每个区域就是一个region,每个region储存连续的数据。随着数据越来越大,当数据达到阈值,会自动裂变成两个新的region。
  • Memstore与storeFile 一个store存储的是一个列族,而store中包括存储在内存中的memstore和存储在磁盘中的storeFile。每次写操作都会现在memstore上进行,当数据达到阈值时,则会通过RegionServer启动一个flashCache进程,写入一个单独的storefile。当storfile的数量达到一定的阈值之后,系统会进行版本合并和删除工作,形成一个更大的storefile。当一个region所有storefile的大小超过一定阈值后会分割为两个。
  • 客户端操作数据的时候先在memstore上操作,找不到则在storefile操作

table、region、store、memstore、storeFile之间的关系

  • 一个表可以有多个水平分表region,一个region下由包含多个store,一个store就对应一个列族,而一个store有两种组成,一个位于内存中的memstore和一个或者多个位于磁盘中的storeFile。

搭建步骤

启动hbase步骤

  • 如启动之后hmaster闪退,或者打不开管理界面,那么请按以下步骤操作:

  1. 启动hbase的控制台命令

    hbase shell
    

  2. 测试一下hbase的命令

    • 显示命名空间
    list_namespace
    

    • 创建一个User表,并且有一个info列族
    create 'User','info'
    list	//列出所有表
    

  • hbase的常用操作命令,请参考:hbase命令操作

    到此,hbase的集群搭建完成!!!

www.htsjk.Com true http://www.htsjk.com/hbase/41417.html NewsArticle hbase的集群搭建, 前言 hbase是一款分布式的列式数据库,其数据源寄生在hadoop上,因而与hadoop共生,广泛应用在大数据领域,利用zookeeper作为其分布式协同服务,存储非结构化和半结构...
相关文章
    暂无相关文章
评论暂时关闭