Region写入过程
2021-04-08 15:29:52 0 举报
Region写入过程
作者其他创作
大纲/内容
Release row locks
先写日志再写缓存,在内存中构建WALEdit对象,为保证Region级别事物,一次写入操作中所有KeyValue会构建成一条WALEdit记录
Advance mvcc
Acquire locks
Build WAL edit
释放行锁
Write back to MemStore
将步骤3中构建内存中的WALEdit记录顺序写入HLog中,此时不需要执行sync。
Sync wal
写入WAL之后再将数据写入MemStore
HLog真正sync到HDFS。释放行锁后再执行sync操作是为了减少持锁时间,提高写性能。如果sync失败,执行回滚操作将MemStore中已经写入的数据移除
(更新所有待写入或更新KeyValues的时间戳为当前系统时间)
HBase中使用行锁保证一致性
结束写事务,此时该线程的更新操作才会对其他读请求可见,更新才实际生效。
Append WALEdit To WAL
Update LATEST_TIMESTAMP timestamps

收藏
0 条评论
下一页