HBase学习笔记

1:什么是HBase
1.1、HBase是一个开源的非关系型分布式数据库,它参考了谷歌的BigTable建模,实现的编程语言为Java。它是Apache软件基金会的Hadoop项目的一部分,运行于HDFS文件系统之上,为 Hadoop 提供类似于BigTable 规模的服务。因此,它可以容错地存储海量稀疏的数据。
1.2、HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库,是谷歌BigTable的开源实现,主要用来存储非结构化和半结构化的松散数据。HBase的目标是处理非常庞大的表,可以通过水平扩展的方式,利用廉价计算机集群处理由超过10亿行数据和数百万列元素组成的数据表。

2:HBase与传统的关系数据库的区别
在这里插入图片描述
3:Hbase访问接口
在这里插入图片描述
4:Hbase数据模型
Hbase是一个稀疏、多维度、排序的映射表,这张表的索引是行键、列族、列限定符和时间戳。
在这里插入图片描述
说明及解释:

  • 每个值是一个未经解释的字符串,没有数据类型。用户在表中存储数据,每一行都有一个可排序的行键和任意多的列。
  • 表在水平方向由一个或多个列族组成,一个列族中可以包含任意多个列,同一个列族里面的数据存储在一起。
  • 列族支持动态扩展,可以很轻松地添加一个列族或列,无需预先定义列的数量以及类型,所有列均以字符串形式存储,用户需要自行进行数据类型转换。
  • HBase中执行更新操作时,并不会删除数据旧的版本,而是生成一个新的版本,旧的版本仍然保留(这是和HDFS只允许追加不允许修改的特性相关的)
  • 表:HBase采用表来组织数据,表由行和列组成,列划分为若干列族。
  • 行:每个HBase表都由若干行组成,每个行由行键(row key)来标识。
  • 列族:一个HBase表被分组成许多“列族”(Column Family)的集合,它是基本的访问控制单元。
  • 列限定符:列族里的数据通过限定符(或列)来定位。
  • 单元格:在HBase表中,通过行、列族和列限定符确定一个“单元格”(cell),单元格中存储的数据没有数据类型,总被视为字节数组byte[]
  • 时间戳:每个单元格都保存着同一份数据的多个版本,这些版本采用时间戳进行索引。

5:HBase体系架构图
在这里插入图片描述
HRegion和Store关系
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
6:HBase shell 常用命令

操作命令表达式注意
创建表create 'table_name, ‘family1’,‘family2’,‘familyN’
添加记录put ‘table_name’, ‘rowkey’, ‘family:column’, ‘value’
查看记录get ‘table_name’, ‘rowkey’查询单条记录,也是hbase 最常用的命令
查看表中的记录总数count ‘table_name’这个命令并不快,且目前没有找到更快的方式统计行数
删除记录delete ‘table_name’ ,‘rowkey’,‘family_name:column’ delete all ‘table_name’,‘rowkey’第一种方式删除一条记录单列的数据第二种方式删除整条记录
删除一张表1、disable ‘table_name’ 2、drop ‘table_name’
查看所有记录scan “table_name” ,{LIMIT=>10}LIMIT=>10 只返回10条记录,否则将全部展示

7:HBase容错性

  • Master容错:Zookeeper重新选择一个新的Master
    1、无Master过程中,数据读取仍照常进行;
    2、无master过程中,region切分、负载均衡等无法进行;
  • RegionServer容错:定时向Zookeeper汇报心跳,如果一旦时间内未出现心跳,Master将该RegionServer上的Region重新分配到其他RegionServer上,失效服务器上“预写”日志由主服务器进行分割并派送给新的RegionServer
  • Zookeeper容错:Zookeeper是一个可靠地服务,一般配置3或5个Zookeeper实例
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值