这老师的HBase的原理讲的非常好,就是有一点,老师在将实现原来的时候,很多关键点PPT上都没有,只有一个类似大纲的标题,然后屏幕就停住了,老师在口述,只能空间想象了
2018-07-26
RegionServer 组成部分:
- Region:存储用户数据的最小单元,一个RegionServer中包含多个Region
- Store:对应表的列簇,一个Region中包含多个Store
- MemStore:是一个内存式的数据结构,一个Store中包含一个MemStore
- StoreFile:MemStore满了之后就会把数据存储到StoreFile
- HFile:多个StoreFile会被封装成HFile,HFile最终持久化到HDFS中
- HLog:一个RegionServer包含一个HLog,用于实现预写日志,保证HBase的高可用
- Region:存储用户数据的最小单元,一个RegionServer中包含多个Region
- Store:对应表的列簇,一个Region中包含多个Store
- MemStore:是一个内存式的数据结构,一个Store中包含一个MemStore
- StoreFile:MemStore满了之后就会把数据存储到StoreFile
- HFile:多个StoreFile会被封装成HFile,HFile最终持久化到HDFS中
- HLog:一个RegionServer包含一个HLog,用于实现预写日志,保证HBase的高可用
2018-06-19
LSM-tree主要目标是快速地建立索引。B-tree是建立索引的通用技术,但是,在大并发插入数据的情况下,B-tree需要大量的磁盘随机IO,很显然,大量的磁盘随机IO会严重影响索引建立的速度。特别地,对于那些索引数据大的情况(例如,两个列的联合索引),插入速度是对性能影响的重要指标,而读取相对来说就比较少。LSM-tree通过磁盘的顺序写,来达到最优的写性能,因为这会大大降低磁盘的寻道次数,一次磁盘IO可以写入多个索引块。
2018-06-19
在经典的 RDBMS 中,我们设计表结构模型时,只需要确定有多少个列即可,然后就可以对这个表进行数据的操作。而对于 HBase 来说,设计表结构模型时不需要确定列,只需要确定列簇(Cloumn Family)即可,列的数量根据列簇里面的数据进行动态伸缩,为空的列并不占用存储空间。
2018-06-19