欢迎投稿

今日深度:

Hbase—分布式数据库,

Hbase—分布式数据库,


什么是分布式数据库

Hbase是大数据体系里面非常重要的一个组件,它解决了海量数据的存储和操作功能。

传统的Mysql和Oracle,显然不能支持大数据的应用场景。它的限制主要在无法存储过亿级别的海量数据,无法适应大数据场景下数据的动态扩展,可能也就无法实现毫秒级别的更新。

什么是行式存储和列式存储

行式存储指的是,数据存储在磁盘中,以一行相关的数据一次排布在磁盘上的过程。

列式存储指的是,数据存储在磁盘中,以一列为单位依次排布在磁盘上的过程。

行式存储的代表性的数据库是mysql,在查询一行数据的时候,是比较快的。而且对事务的支持度要比列式存储好的多。

列式存储的好处,在于读取一列或者几列数据的时候,会比行式存储快的多。它的一大优势在于便于压缩。而且对稀疏类型的数据也便于存储,这个比较适合大数据的场景。

列簇式存储

Hbase既不是列式存储,也不是行式存储,它采用的是列簇式存储。
列簇式存储指的是在不同的列簇之间,Hbase采用的是列式存储,而在同一个列簇内部,采用的是行式存储。

什么是列簇?列簇在hbase中,更多的代表的是一个业务层面的概念。比如对于一个用户画像系统中,可以定义一个列簇叫base_info,这里列簇中可以有的属性有name,sex,age,work等等。也可以定义另一个列簇,比如叫behavior,这个列簇中的行为属性可以有buy,like,access,comment等等。也可以有另一个列簇,比如叫做label,比如可以有的属性有isActive,isGamer,hasBaby。

Hbase的存储物理模型—Cell格式

一条Hbase数据的存储中至少包含这么几个部分。
rowkey,column family,qualifer,timeStamp,value等

Hbase的架构以及基本概念

第一,Hbase的一张表的数据量大到一定程度,会把这张表进行分片,每一个分片叫做Region。并且每一个Region都包含有所有的列簇。Region是Hbase中分布式存储和负载均衡的最小单元。

第二,不同的Region可以放到不同的服务器上。一台服务器可以存储多个Region,Region是由RegionServer进行管理,同样的,一个RegionServer可以管理多个Region,并且一个Region只能由一个RegionServer管理。

第三,Region中包含多个列簇,每一个列簇都会对应一个store,每一个store会把数据分为两部分,一部分是MemStore,另一部分是StoreFile。其中MemStore存放在内存中,StoreFile存放在文件系统中。

第四,表名+开始主键+结束主键,来区分每一个HRegion。clinet端主要通过这样的方式,进行访问不同的Region。

第五,HMaster,每一个HRegionServer都会与HMaster进行通信。HMaster会指定HRegion由哪一个HRegionServer组成。HMaster可以启动多个,由Zookeeper保证只有一个Master运行。它管理着用户的增删改查操作。

Hbase的shell操作

1,Hbase的启动

./bin/hbase shell

2,habse建表

create 'scores','grade','course'

3,查看表

list

4,查看表结构

describe 'scores'

5,向表中插入数据-put

put 'scores','mapbar_front','grade',5

向列簇添加一条属性数据

put 'scores','mapbar_front','course:math',97

6,向表中读取数据-get

get ‘scores’,'mapbar_front'

7,范围查找数据-scan

scan ‘scores’

8,delete删除数据

delete ‘scores’, 'mapbar_front','course:math'

9,删除全表数据-truncate

truncate 'scores'

10,修改表结构alter

alter ‘scores’,Name=>'profile'

11,删除表

disable tableName
drop tableName

www.htsjk.Com true http://www.htsjk.com/hbase/42229.html NewsArticle Hbase—分布式数据库, 什么是分布式数据库 Hbase是大数据体系里面非常重要的一个组件,它解决了海量数据的存储和操作功能。 传统的Mysql和Oracle,显然不能支持大数据的应用场景。它...
相关文章
    暂无相关文章
评论暂时关闭