大数据领域,Hadoop技术框架的重要性是已经得到大家认可的,而基于Hadoop框架系统之下的各个组件,也不断在更新完善。关于Hadoop数据库的问题,也是很多同学学习当中的难点,今天我们就主要来聊聊Hadoop框架下的数据库,也就是Hbase的相关内容。

Hbase,其实就是Hadoop DataBase,作为Hadoop的数据库,因为Hadoop的分布式框架,所以也被称为是分布式数据库,数据的写入和读取同样依赖于分布式文件系统HDFS。
 

Hadoop数据库


Hbase从性质上来说,是一个面向列的NoSQL数据库,在Hadoop框架当中,每一次的数据处理任务完成之后,都会将数据计算结果写入Hbase,并且支持Hadoop的主要程序模型MapReduce进行再次的计算调用等。

作为Hadoop数据库,Hbase也有着高可靠性,并且因为依靠HDFS,有着高写高读性能,单独对列进行各种操作,数据存储量很大,对列没有限制,单表可有上百亿行、上百万的列。在数据查询上,支持上亿数据量低延迟查询。

Hbase的架构体系,分为Master、Region Server、Memstore和storefile等角色。Master作为主要控制节点,为Region Server分配region,并且负责Region Server的负载均衡,如果它发现失效的Region Server,它会重新分配失效Region Server上的Region,它还管理用户对表的增删改操作。

而Region Server,负责维护region,并且处理对region的IO请求,还负责切分过大的Region。

Region则是由多个store组成,而一个store对应一个Column Famliy,store包括内存中的memstore和位于磁盘的storefile。Region是HBase中分布式存储和负载均衡的最小单元。当一个Region的大小超过阈值,一个Region可再次分割成多个Region,基于这样的逻辑,只要服务器空间足够,那么Hbase能够存储的数据上限也就不受限。

在Region当中写入数据,会先写入memstore,当memstore中的数据达到设定的阈值时,regionserver会启动flushcache进程将数据写入到storefile;而当需要读取数据时,也会先在memstore上找,如果找不到就会去storefile中找,直到找到为止。

关于Hadoop数据库Hbase,以上就是简单的一些介绍了,当然,这些只是基于理论状态下的理解,想要真正掌握Hbase的相关技术,还需要结合Hadoop集群进行实际的操作训练才行。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐