Hbase简介

1.1什么是hbase

HBase是一个高可靠性,高性能,面向列,可伸缩的分布式存储系统,利用HBase技术可以在廉价PC Server上搭建大规模结构存储集群。

HBASE目标的的英文存储并处理由成千上万大型的数据,更具有来说是仅需使用普通的硬件配置,就能能够处理成千上万的行和列所组成的大型数据

HBASE是Google Bigtable的开源实现,但是也有很多不同之处。比如:Google Bigtable利用GFS作为其文件存储系统,HBASE利用Hadoop HDFS作为其文件存储系统; Google运行mapreduce来处理Bigtable中的海量数据,HBASE同样利用Hadoop mapreduce来处理HBASE中海量数据; Google Bigtable利用Chubby作为协同服务,HBASE利用Zookeeper作为对应。

1.2与传统数据库的对比

传统数据库遇到的问题

1)数据量很大的时候无法存储

2)没有很好的备份机制

3)数据达到一定数量开始缓慢,很大的时候基本无法支撑。

2,HBASE优势

1.线性扩展,随着数据量增多可以通过节点扩展进行支撑。

2.数据存储在HDFS上,备份机制健全。

3.通过zookeeper协调查找数据,访问速度快。

1.3 HBase集群中的角色

1.一个或者多个主节点,HMaster

2.多个从节点,HregionServer

3.hbase数据模型

3.1 hbase数据模型

3.1.1行密钥

与NOSQL数据库一样,行键是可以用来检索记录的主键。访问HBASE表中的行,只用三种方式:

1.通过单个行键访问。

2.通过行键的范围(正则)

全表扫描

行键行键(行键)可以是任意字符串(最大长度是64 KB,实际应用中长度一般为10 - 100bytes),

在HBASE内部,行键保存为字节数组。存储时,数据按照行键的字典序(字节顺序)排序存储。

设计关键时,要充分排序存储这个特性,将经常一起读取的行存储放到一起。

3.1.2列族

列簇:HBASE表中的每个列,都归属于某个列族。列族是表的schema的一部分分(而列不是),必须在使用表之前定义。

列名都以列作为前缀,例如courses:history,courses:math都属于courses这个列族。

3.1.3细胞

由{row,Key,columnFamily,Version}唯一确定的单元.Cell中数据是没有类型,全部是字节码形式存储。

关键字:无类型,字节码

 3.1.4时间戳

HBASE中通过rowkey和columns确定的为一个存储单元称为cell。

每个Cell都保存着同一份数据的多个版本。版本通过事件戳来索引。时间戳的类型是64位整数。时间戳可以由HBASE(在数据写入时自动)赋值,此时时间戳是精确到毫秒的当前系统时间。时间戳也可以由客户显式赋值。如果应用程序要避免数据版本冲突,即最新的数据排在最前面。

   为了避免数据存在过多版本造成的管理(包括存储和索引)负担,HBASE提供了两种数据版本回收方式。一是保存数据的最后Ñ个版本,二是保存最近一段时间内的版本(比如最近其七天)。用户可以针对每个列族进行设置。

4. HBASE命令

4.1命令的进退

1. hbase提供了一个shell的终端给用户交互

hbase shell

2.如果退出执行quit命令

---> hbase shell

- >退出

4.2命令

 

 

5. hbase依赖zookeeper

1.保存Hmaster的地址和backup-master地址

HMASTER:

a)管理HregionServer

b)做增删改查表的节点

c)管理HregionServer的表分配。

2.保存--ROOT - 的地址

hbase默认的根表,检索表

3. HregionServer列表

表的增删改查数据

和HDFS交互,存储数据

 

-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------------

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值