一、HBASE整体架构(逻辑&物理)
2022-08-16 14:45:17 0 举报
HBASE整体架构(逻辑&物理)
作者其他创作
大纲/内容
/hbase/archive/data/${namespace}/${table}/0a89d3afe2a5b358b694b93b39d17923/${CF}
节点2
/hbase/MasterProcWALs
【HStore】 -- 1. 一个Store 负责某个Region分区在一个表的一个列簇(CF)= memStrore + StoreFiles 2. 数据先写入memStrore内存,等到达一定大小刷新到文件中【HMobStore】 -- 带mob功能
。。。
DFSClient
HRegion
HLog
/hbase/oldWALs
/hbase/data/hbase/{namespace}/${table}/${region}/${CF}/具体文件
HStore
flush
{HBASE_DIR}/mobdir/data/{namespace}/{tableName}/{regionEncodedName}/${CF}/{regionStartRow}${yyyymmdd}${storeEndkey}
HMobStore[HStore]
【HRegionServe】 -- Region服务每个节点启动一个进程,每个HRegionServer进程管理多个Region
逻辑架构
HFile
【MasterProcWALs】存储Master Procedure过程中的WAL文件,使用WAL记录DDL执行的中间状态,在异常发生之后可以通过WAL回放明确定位到中间状态点,继续执行后续操作以保证整个DDL操作的完整性【corrupt】: 存储损坏的HLog文件或者HFile文件【archive】: 存储表的归档和快照1. HBase 在做 Split或者 compact 操作完成之后,会将之前的HFile 移到archive 目录中2. 该目录由 HMaster 上的一个定时任务定期去清理。存储表的归档和快照具体3. 所有对HFile文件的删除操作都会将待删除文件临时放在该目录。进行Snapshot或者升级时使用到的归档目录,Compaction删除HFile的时候,也会把旧的HFile移动到这里
HDFS
【HLog】 -- WAL预写日志对象1. 一个HRegionServer 包含一个(活多个)WAL log, 多个HRegion分区共享一个HLog 【只追加写一个文件,性能好】2. 所有写入请求先写入HLog,保证数据不丢失,用于故障时数据恢复3. HLog文件就是一个普通的Hadoop Sequence File
物理存储架构
【HFile】 -- 1. 按照一定格式存储的文件,要便于快速定位数据以及查询到具体的数据2. Mob的情况,mob单独的路径文件
HFile【Mob】
MemStore
节点3
/hbase/corrupt
收藏
收藏
0 条评论
下一页