HBase的读写流程以及优化方法

hbase中行键列键时间戳的概念?

行键可以是任意字符串,在Hbase内部,行键保存为字节数组。存储时,数据按照行键的字典序排序存储。

永德网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联公司2013年开创至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司

列族:一个Hbase表被分组成许多“列族”的集合,它是基本的访问控制单元。

时间戳:每个单元格都保存着同一份数据的多个版本,这些版本采用时间戳进行索引。时间戳一般是64位整型,可以由用户自己赋值,也可以由Hbase在数据写入时自动赋值。

HBase怎么实现海量数据的毫秒级查询?

Base中单表的数据量通常可以达到TB级或PB级,但大多数情况下数据读取可以做到毫秒级。HBase是如何做到的哪?要想实现表中数据的快速访问,通用的做法是数据保持有序并尽可能的将数据保存在内存里。HBase也是这样实现的。

对于海量级的数据,首先要解决存储的问题。

数据存储上,HBase将表切分成小一点的数据单位region,托管到RegionServer上,和以前关系数据库分区表类似。但比关系数据库分区、分库易用。这一点在数据访问上,HBase对用户是透明的。

hbase查询原理?

1、存储引擎

HBase是Google的BigTable的开源实现,底层存储引擎是基于LSM-Tree数据结构设计的。写入数据时会先写WAL日志,再将数据写到写缓存MemStore中,等写缓存达到一定规模后或满足其他触发条件才会flush刷写到磁盘,这样就将磁盘随机写变成了顺序写,提高了写性能。每一次刷写磁盘都会生成新的HFile文件

2、数据模型

关于HBase的数据模型,和关系型数据类似,包括命名空间(namespace)、表、行、列、列族、列限定符、单元格(cell)、时间戳等,具体概念比较好理解就不多解释了。而HBase在实际存储数据的时候是以有序KV的形式组织的。

3、列族式存储

HBase并不是行式存储,也不是完全的列式存储,而是面向列族的列族式存储。前面也提到了,HBase的每一列数据在底层都是以 KV 形式存储的,而针对一行数据,同一列族的不同列的数据是顺序相邻存放的,这种模式实际上是行式存储;而如果一个列族下只有一个列的话,就是一种列式存储。因此我们可以说HBase是一种列族式存储。

4、关于索引

默认情况下HBase只对rowkey做了单列索引,所以HBase能通过rowkey进行高效的单点查询及小范围扫描。HBase索引还是比较单一的,通过非rowkey列查询性能比较低,除非对非Rowkey列做二级索引,否则不建议根据非rowkey列做查询。

到此,以上就是小编对于hbase读写过程的问题就介绍到这了,希望这3点解答对大家有用。

分享标题:HBase的读写流程以及优化方法
URL标题:http://www.hantingmc.com/qtweb/news49/496199.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联