Commit 7256cd57 authored by 张振华's avatar 张振华

add diagram

parent 34b791b6
# 一、现状 #
# 一、现状 #
......@@ -91,7 +91,7 @@ enableMVCC=true
1.历史数据可以保留下来,供查询使用,并能够支持数据回滚。
2.支持MVCC机制,除了保留下来历史版本数据,还可以把多版本数据存储在结构是线性平铺的KV数据库中,不需要使用复杂的树形结构来维护数据,对于系统性能提升有帮助,即使数据量达到一定程度,系统性能不发生明显的下降。
# 三、方案描述 #
# 三、方案描述(正在实现) #
##配置文件中和Store相关的如下配置增加取值
[store]
......@@ -117,3 +117,8 @@ Store需要新增接口EventStoreDel,按照要删除的区块高度height,St
###3.查询数据
当Store收到EventStoreGet消息,可以根据携带的StateHash或者height信息,从statedb中查找相应的key对应的value的值,查询时,key要拼接上version信息(height),以便查找到正确的版本数据。
###4.结构层次
![kvdb-mvcc结构层次示意图](./resource/kvdb-mvcc-arch.png)
底层为leveldb数据库,提供基础的数据存取能力。
上层为对外接口,支持Store原来的对外接口,并提供对回滚区块删除数据的新接口EventStoreDel的支持。
MVCC处理层作为中间层,对传入的kv或者要查询的k,先进行mvcc的加工处理,再进行数据的存储或者读取,使MVCC的机制能够正常工作。这一层的处理参考现有系统的MVCC实现方式进行改造。
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment