最近在研究bigtable的实现原理,网上搜索了一把,几乎全是google的那篇论文,由于涉及的点众多,看起来比较吃力,也没有一个宏观的架构用于理解,
因此,自己画了一个,分享给大家,欢迎各位批评指正,共同完善!
hbase可以认为是山寨版的bigtable,因此其架构也是类似的,只是各个部件换了名字,对应关系如下:
chubby ===> zookeeper
master ===> master
gfs ===> hdfs
tablet server ===> hregion server
sstable ===> hfile
tablet log ===> hlog
详细架构图如下,对照此图再去读论文,应该更加容易理解:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5yN5YzMfhzN1gDMwUzMzEzLcFjMvwFNwITMwIzLcNHZh9GbwV3LcRXZu5ibkN3YukXbvw1LcpDc0RHaiojIsJye.png)
附:
英文论文地址:http://research.google.com/archive/bigtable.html
中文论文地址:http://www.dbthink.com/?p=493