RegionServer架构
1)StoreFile
保存实际数据的物理文件,Store以Hfile的形式存储在HDFS上。每个Store都会有一个或者多个StoreFile(HFile),数据在每个StoreFile中都是有序的。
2)MemStore
写缓存,由于HFile中的数据要求是有序的,所以数据是先存储在MemStore中,排好序之后,等到达刷写时机才会刷写到Hfile,每次刷写都会形成一个新的HFile。
3)WAL
由于数据要经过MemStore排序之后才能刷写到HFile,但是把数据保存在内存中会有很高的概率导致数据的丢失,为了解决这个问题数据会先卸载一个叫做write-Ahead logfile的文件中,然后再写入MemStore中,所以在系统出现故障的时候数据可以通过这个日志文重建。
4)BlockCache
读缓存,每次查询出的数据会缓存在BlockCache中,方便下次查询。
写流程
1)Client先访问zookeeper,获取hbase:meta表