本发明属于区块链与分布式,具体涉及一种高效的许可区块链无冲突交易处理架构。
背景技术:
1、hyperledge fabric作为目前比较流行的许可区块链,提议了一种称为执行排序验证(eov)的新交易处理架构。该架构支持了交易的乐观并发执行,并在可串行化验证中将冲突交易识别为无效。然而该架构在高交易冲突的场景中表现不佳,过多的无效交易将降低系统并发所带来的收益。大量技术研究工作集中在eov架构中缓解交易冲突以及优化流程以实现系统的高性能。
2、目前,有两个方向的工作试图解决上述提到的问题。一方面工作是缓解交易冲突从而降低交易无效率,sharma等人[1]以及ruan等人[2]通过在eov架构中引入交易重排序以及提前中止机制,将确认不可串行化的交易提前的识别出并中止。然而其提议的交易重排序算法在交易数量多、冲突度高的场景中表现欠佳。nasirifard等人[3]以及xu等人[4]通过创建无冲突的复制数据类型(crdt)的交易,实现冲突交易的合并操作,然而限制了交易的提交类型。
3、另一方面工作是优化架构各阶段,gorenflo等人[5]引入缓存以及节点分割是实现系统高吞吐,thakkar等人[6]通过交易依赖关系在不违反可串行化的情况下启用验证和提交阶段的流水线执行。
4、总的来说,当前的研究工作只是尝试缓解eov架构中的交易冲突,而不是在交易的执行开始就阻止其执行,最终导致在高冲突场景中验证阶段仍然会有无效交易出现,浪费系统资源,增加交易平均周转时间。
5、参考文献:
6、[1]sharma a,schuhknecht f m,agrawal d,et al.blurring the linesbetween blockchains and database systems:the case ofhyperledger fabric[c].inproceedings ofthe 2019international conference on management ofdata,2019:105–122.
7、[2]ruan p,loghin d,ta q-t,et al.a transactional perspective onexecute-order-validate blockchains[c].in proceedings of the 2020acm sigmodinterna-tional conference on management ofdata,2020:543–557.
8、[3]nasirifard p,mayer r,jacobsen h-a.fabriccrdt:aconflict-freereplicated datatypes approach to permissioned blockchains[c].in proceedingsof the 20th international middleware conference,2019:110–122.
9、[4]xu x,wang x,li z,et al.mitigating conflicting transactions inhyperledger fabric-permissioned blockchain for delay-sensitive iotapplications[j].ieee in-ternet ofthings journal,2021,8(13):10596–10607.
10、[5]gorenflo c,lee s,golab l,et al.fastfabric:scaling hyperledgerfabric to20000transactions per second[j].international journal of networkmanagement,2020,30(5):e2099.
11、[6]thakkar p,natarajan s.scaling blockchains using pipelinedexecution and sparse peers[c].in proceedings ofthe acm symposium on cloudcomputing,2021:489–502.
技术实现思路
1、本发明的目的在于克服现有技术的不足,提供一种高效的许可区块链无冲突交易处理架构。
2、本发明解决其技术问题是通过以下技术方案实现的:
3、一种高效的许可区块链无冲突交易处理架构,其特征在于:将eov架构的交易处理模式通过引入轮次epoch间反馈机制及epoch内重排序机制设计为流水线执行,形成新的无冲突执行检测排序验证ecov架构;保留架构中交易的乐观并发执行,通过交易重排序及早期中止机制潜在解决epoch间的交易冲突,避免块间多版本并发控制mvcc冲突出现;同时以epoch为界限,引入流水线反馈机制,通过及时反馈上epoch的交易写入状态集避免epoch间的交易冲突,避免块间mvcc冲突出现。
4、而且,所述ecov架构包括客户端、对等节点及排序者三个节点角色;
5、其中,客户端负责交易提议;对等节点其中存在背书者及验证者,分别负责交易执行以及交易验证;ecov架构的背书者支持异步背书,客户端发送多个提议与背书者而无需等待交易的背书结果,交易在被确认为无冲突后将异步的返回;所述ecov架构中含三个关键组件:1)已执行交易池,用于缓存执行交易后的背书结果;2)多级缓冲队列,用于缓存冲突交易;3)写集状态提取器,用于提取并合并区块中存在写操作交易的写集状态;ecov架构通过冲突检测机制将上述三个关键组件进行关联;具体来说,排序服务中的写集状态提取器会对已经完成打包的区块中交易进行分析,将存在写状态交易的写集汇总成摘要广播给背书者,以便背书者识别上一轮的提交状态而确保下一轮交易的无冲突执行;对于背书者,在执行结束后将交易的背书结果置于已执行交易池中,当收到写集状态反馈后将采用冲突检测机制检查已执行交易池中的冲突交,并将冲突交易置于多级冲突队列中。
6、而且,所述冲突检测机制中冲突的交易将放置于对应的冲突队列中,无冲突交易将背书结果反馈给客户端,所述冲突检测机制分为两步:1)检查当前epoch交易间的冲突关系;2)检查当前epoch和上一epoch的交易冲突关系。
7、而且,所述交易epochi区块的生成过程为排序服务将从kafka集群中取出n笔交易(n为当前配置的区块大小)进行交易重排序以及早期中止以消除区块内的冲突交易,然后利用写集状态提取器提取写集状态,并将区块与写集状态广播于对等节点;同时,排序服务在生成当前epoch的后续区块时,需要基于上一个区块中的写集状态进行区块中的冲突检测,以保证同一epoch内交易的无冲突。
8、本发明的优点和有益效果为:
9、本发明的高效的许可区块链无冲突交易处理架构,经过多冲突场景以及多自变量变化的实验后得出,pipefabric(采用专利中提议的ecov架构实现的原型)提供了比fabric++和fabricsharp高2.6倍和2.3倍的吞吐量,为实时和高性能场景中的区块链应用提供了强大的支持。
1.一种高效的许可区块链无冲突交易处理架构,其特征在于:将eov架构的交易处理模式通过引入轮次epoch间反馈机制及epoch内重排序机制设计为流水线执行,形成新的无冲突执行检测排序验证ecov架构;保留架构中交易的乐观并发执行,通过交易重排序及早期中止机制潜在解决epoch间的交易冲突,避免块间多版本并发控制mvcc冲突出现;同时以epoch为界限,引入流水线反馈机制,通过及时反馈上epoch的交易写入状态集避免epoch间的交易冲突,避免块间mvcc冲突出现。
2.根据权利要求1所述的高效的许可区块链无冲突交易处理架构,其特征在于:所述ecov架构包括客户端、对等节点及排序者三个节点角色;
3.根据权利要求2所述的高效的许可区块链无冲突交易处理架构,其特征在于:所述冲突检测机制中冲突的交易将放置于对应的冲突队列中,无冲突交易将背书结果反馈给客户端,所述冲突检测机制分为两步:1)检查当前epoch交易间的冲突关系;2)检查当前epoch和上一epoch的交易冲突关系。
4.根据权利要求1所述的高效的许可区块链无冲突交易处理架构,其特征在于:交易epochi区块的生成过程为排序服务将从kafka集群中取出n笔交易(n为当前配置的区块大小)进行交易重排序以及早期中止以消除区块内的冲突交易,然后利用写集状态提取器提取写集状态,并将区块与写集状态广播于对等节点;
