hbase原理
HBase是大数据NoSQL领域里非常重要的分布式KV数据库,是一个高可靠、高性能、高伸缩的分布式存储系统,目前国内知名公司都有在大规模使用,社区也非常活跃。本文就是学习HBase的敲门砖,主要从以下几个方面解读HBase。
1、存储引擎:HBase是Google的BigTable的开源实现,底层存储引擎是基于LSM-Tree数据结构设计的。
2、数据模型:关于HBase的数据模型,和关系型数据类似,包括命名空间(namespace)、表、行、列、列族、列限定符、单元格(cell)、时间戳等,具体概念比较好理解就不多解释了。
3、列族式存储:HBase并不是行式存储,也不是完全的列式存储,而是面向列族的列族式存储。前面也提到了,HBase的每一列数据在底层都是以 KV 形式存储的,而针对一行数据,同一列族的不同列的数据是顺序相邻存放的,这种模式实际上是行式存储;而如果一个列族下只有一个列的话,就是一种列式存储。
4、关于索引:默认情况下HBase只对rowkey做了单列索引,所以HBase能通过rowkey进行高效的单点查询及小范围扫描。
1. HBase是一个面向列族(column family)存储的分布式NoSQL数据库。
2. 它基于Hadoop的HDFS存储和Hadoop的MapReduce计算框架,提供了实时随机读/写访问海量数据的能力,被广泛应用于数据存储和处理领域。
3. 它的基本原理是将数据按照Rowkey与列族进行存储,每个列族包含多个列。
每个列又包含多个版本。
这种结构使得HBase可以高效地进行随机读写操作。
还没有评论,来说两句吧...