本文主要是介绍区块链:Hyperledger Fabric账本存储,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
交易流程
- 交易模拟 -> 读写集(RWSet)
- 交易排序
- 交易验证 -> 状态更新
1. 交易读写集(RWSet)
- 读集:读取的已提交的状态键值
- 写集:将要更新的状态键值对
- 写集:状态键值对删除标记
- 写集:多次更新以最后一次为准
- 版本号: 二元组(区块高度、交易编号)
交易验证
读集版本号 == 世界状态版本号(包括未提交的前序交易)
世界状态
- 交易执行后的所有键的最新值
- 显著提升链码执行效率
- 状态是所有交易日志的快照、可随时重构
- LevelDB or CouchDB
历史数据索引(可选)
- 某键在某区块的某条交易中被改变
- 只记录改变动作,不记录具体改变
- 历史读取 - - > 历史数据索引 + 区块读取
- levelDB组合键
区块存储
- 区块以文件块形式存储(blockfile_xxxxxx)
- 文件块大小:64M (硬编码)
- 账本最大容量:64M * 1000,000
这篇关于区块链:Hyperledger Fabric账本存储的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!