栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > 架构设计

Hbase是什么?一起来看看Hbase的系统架构吧!

架构设计 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Hbase是什么?一起来看看Hbase的系统架构吧!

一、Hbase概念

HBase是一种NoSQL数据库有别于传统关系型数据库,那么在Hadoop体系中为什么要引入HBase?HBase的特点又是什么呢?来康康以下内容吧。。。

 

1.HBase是建立在Hadoop文件系统之上的分布式面向列的数据库。它是一个开源项目,是横向扩展的。 HBase是一个数据模型,类似于谷歌的大表设计(Big Table),可以提供快速随机访问海量结构化数据。 它利用了Hadoop的文件系统(HDFS)提供的容错能力。 它是Hadoop的生态系统,提供对数据的随机实时读/写访问,是Hadoop文件系统的一部分。 人们可以直接或通过HBase的存储HDFS数据。使用HBase在HDFS读取消费/随机访问数据。 HBase在Hadoop的文件系统之上,并提供了读写访问。

 

2.Hbase的工作图

 

 3.HBase 和 HDFS的区别

HDFS

HBase

HDFS是适于存储大容量文件的分布式文件系统。

HBase是建立在HDFS之上的数据库

HDFS不支持快速单独记录查找。

HBase提供在较大的表快速查找

它提供了高延迟批量处理;没有批处理概念。

它提供了数十亿条记录低延迟访问单个行记录(随机存取)。

它提供的数据只能顺序访问

HBase内部使用哈希表和提供随机接入,并且其存储索引,可将在HDFS文件中的数据进行快速查找

4.HBase的特点

HBase线性可扩展。 它具有自动故障支持。 它提供了一致的读取和写入。 它集成了Hadoop,作为源和目的地。 客户端方便的Java API。 它提供了跨集群数据复制。

 

5.HBase的应用点

Apache HBase曾经是随机,实时的读/写访问大数据。 它承载在集群普通硬件的顶端是非常大的表。 HBase的应用 HBase使用于当我们需要提供快速随机访问的数据。 很多公司,如Facebook,Twitter,雅虎,和Adobe内部都在使用HBase

 

二.HBase的存储机制

1.HBase是一个面向列的数据库,在表中它由行排序。表模式定义只能列族,也就是键值对。一个表有多个列族以及每一个列族可以有任意数量的列。后续列的值连续存储在磁盘上。表中的每个单元格值都具有时间戳。总之,在一个HBase: 表是行的集合。 行是列族的集合。 列族是列的集合。 列是键值对的集合 这里的列式存储或者说面向列,其实说的是列族存储,HBase是根据列族来存储数据的。列族下面可以有非常多的列,列族在创建表的时候就必须指定。

 

2.HBase数据模型

 

hbase表模型的要点        

1、一个表,有表名

2、一个表可以分为多个列族(不同列族的数据会存储在不同文件中)

3、表中的每一行有一个“行键rowkey”,而且行键在表中不能重复

4、表中的每一对kv数据称作一个cell

5、hbase可以对数据存储多个历史版本(历史版本数量可配置)

6、整张表由于数据量过大,会被横向切分成若干个region(用rowkey范围标识),不同region的数据也存储在不同文件中

7、hbase会对插入的数据按顺序存储: 要点一:首先会按行键排序 要点二:同一行里面的kv会按列族排序,再按k排序

 

3.Hbase的表结构

Row Key(Rowide)行键   

 Row key是用来表示唯一一行记录的主键,

Row  key 行键可以是任意字符串 Columns  Family 列族     列簇:HBase表中的每个列,都归属于某个列族,必须在使用表之前定义。列名都以列族作为前缀。例如courses:history,courses:math 都属于courses这个列族。

Cell 列     Hbase表中唯一确定的单元。cell中的数据是没有类型的,全部是字节码形式存储. Time Stamp 时间戳     每个cell都保存着同一份数据的多个版本。版本通过时间戳来索引。时间戳的类型是64位整型。时间戳可以由HBASE(在数据写入时自动)赋值,此时时间戳是精确到毫秒的当前系统时间。时间戳也可以由客户显示赋值。每个cell中,不同版本的数据按照时间倒序排序,即最新的数据排在最前面

 

4.HBase 和 RDBM(关系型数据库)的比较

不同点

HBase

RDBMS

数据类型

Bytes

丰富的数据类型

数据操作

简单增删查改

丰富的SQL支持

存储模式

列存储

行存储

数据保护

保留

替换

可伸缩

吞吐量

百万查询/每秒

数千查询/美秒

索引

只支持Row-key

支持

 

三、HBase系统架构体系图

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/912812.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号