With the maturation and advancement of blockchain technology,a novel execute-order-validate(EOV)architecture has been proposed,allowing transactions to be executed in parallel during the execution phase.However,parall...With the maturation and advancement of blockchain technology,a novel execute-order-validate(EOV)architecture has been proposed,allowing transactions to be executed in parallel during the execution phase.However,parallel execution may lead to multi-version concurrency control(MVCC)conflicts during the validation phase,resulting in transaction invalidation.Based on different causes,we categorize conflicts in the EOV blockchain into two types:within-block conflicts and cross-block conflicts,and propose an optimization solution called FabricMan based on Fabric v2.4.For within-block conflicts,a reordering algorithm is designed to improve the transaction success rate and parallel validation is implemented based on the transaction conflict graph.We also merge transfer transactions to prevent triggering multiple version checks.For cross-block conflicts,a cache-based version validation mechanism is implemented to detect and terminate invalid transactions in advance.Experimental comparisons are conducted between FabricMan and two other systems,Fabric and Fabric++.The results show that FabricMan outperforms the other two systems in terms of throughput,transaction abort rate,algorithm execution time,and other experimental metrics.展开更多
在数学规划的领域里定义了互逆规划--各自目标函数与约束条件位置相互交换的一对规划.接着指出,尽管互逆规划与对偶规划在表面上似乎类似,但是二者存在5点不同:(1)是否为同一个问题的不同;(2)存在"对偶间隙"与否的不同;(3)设...在数学规划的领域里定义了互逆规划--各自目标函数与约束条件位置相互交换的一对规划.接着指出,尽管互逆规划与对偶规划在表面上似乎类似,但是二者存在5点不同:(1)是否为同一个问题的不同;(2)存在"对偶间隙"与否的不同;(3)设计变量数目的不同;(4)是否单目标与多目标问题的不同;(5)问题合理与否的不同.然后,基于互逆规划的定义,用以审视结构拓扑优化模型,给出如下结果:(1)从这个角度洞悉,在结构优化中,确实有不合理的模型一直被沿用着;(2)找到了修正不合理模型使之合理化的方法;(3)对于给定体积下的柔顺度最小化(MCVC)模型,指出了其不合理的原因;(4)MCVC模型实际是互逆规划的m方,由此建立起其对应的s方,即给出了多个柔顺度约束的体积最小化(MVCC)模型;(5)给出了MVCC模型中的结构柔顺度约束的物理解释和算法,论证了ICM(independent continuous and mapping)方法以往关于全局化应力约束的概念和方法;(6)数值算例表明了MCVC与MVCC模型作为互逆规划的差异,且印证了MVCC模型的合理性.MCVC模型在不同体积约束及多工况下不同的权系数时,得到最优拓扑不同;但MVCC模型在多工况柔顺度约束下可得到唯一的最优拓扑.展开更多
Multi-Clock Snapshot Isolation(MCSI)is a concurrency control mechanism that implements snapshot isolation on a single-layer Non-Volatile Memory(NVM)database.It stores a single copy of data by using multi-version stora...Multi-Clock Snapshot Isolation(MCSI)is a concurrency control mechanism that implements snapshot isolation on a single-layer Non-Volatile Memory(NVM)database.It stores a single copy of data by using multi-version storage to ensure durability and runtime access.With multi-clock transaction timestamp assignment,MCSI can efficiently generate snapshots with vector clocks and use per-thread transaction status arrays to identify uncommitted versions in NVM.For evaluation,we compared MCSI with the PostgreSQL-style concurrency control used in the single-layer NVM database N2DB.The maximum transaction throughput of MCSI is 101%–195%higher than that of N2DB for the YCSB workloads,and 25%–49%higher for the TPC-C workloads.Moreover,the transaction latency of MCSI remains relatively stable as the thread count increases.With 18 worker threads,the average transaction latency of MCSI is 65%–84%lower than that of N2DB for the YCSB workloads and 16%–43%lower for the TPC-C workloads.展开更多
文摘With the maturation and advancement of blockchain technology,a novel execute-order-validate(EOV)architecture has been proposed,allowing transactions to be executed in parallel during the execution phase.However,parallel execution may lead to multi-version concurrency control(MVCC)conflicts during the validation phase,resulting in transaction invalidation.Based on different causes,we categorize conflicts in the EOV blockchain into two types:within-block conflicts and cross-block conflicts,and propose an optimization solution called FabricMan based on Fabric v2.4.For within-block conflicts,a reordering algorithm is designed to improve the transaction success rate and parallel validation is implemented based on the transaction conflict graph.We also merge transfer transactions to prevent triggering multiple version checks.For cross-block conflicts,a cache-based version validation mechanism is implemented to detect and terminate invalid transactions in advance.Experimental comparisons are conducted between FabricMan and two other systems,Fabric and Fabric++.The results show that FabricMan outperforms the other two systems in terms of throughput,transaction abort rate,algorithm execution time,and other experimental metrics.
文摘在数学规划的领域里定义了互逆规划--各自目标函数与约束条件位置相互交换的一对规划.接着指出,尽管互逆规划与对偶规划在表面上似乎类似,但是二者存在5点不同:(1)是否为同一个问题的不同;(2)存在"对偶间隙"与否的不同;(3)设计变量数目的不同;(4)是否单目标与多目标问题的不同;(5)问题合理与否的不同.然后,基于互逆规划的定义,用以审视结构拓扑优化模型,给出如下结果:(1)从这个角度洞悉,在结构优化中,确实有不合理的模型一直被沿用着;(2)找到了修正不合理模型使之合理化的方法;(3)对于给定体积下的柔顺度最小化(MCVC)模型,指出了其不合理的原因;(4)MCVC模型实际是互逆规划的m方,由此建立起其对应的s方,即给出了多个柔顺度约束的体积最小化(MVCC)模型;(5)给出了MVCC模型中的结构柔顺度约束的物理解释和算法,论证了ICM(independent continuous and mapping)方法以往关于全局化应力约束的概念和方法;(6)数值算例表明了MCVC与MVCC模型作为互逆规划的差异,且印证了MVCC模型的合理性.MCVC模型在不同体积约束及多工况下不同的权系数时,得到最优拓扑不同;但MVCC模型在多工况柔顺度约束下可得到唯一的最优拓扑.
基金supported by the National Key Research&Development Program of China(No.2016YFB1000504)the National Natural Science Foundation of China(Nos.61877035,61433008,61373145,and 61572280).
文摘Multi-Clock Snapshot Isolation(MCSI)is a concurrency control mechanism that implements snapshot isolation on a single-layer Non-Volatile Memory(NVM)database.It stores a single copy of data by using multi-version storage to ensure durability and runtime access.With multi-clock transaction timestamp assignment,MCSI can efficiently generate snapshots with vector clocks and use per-thread transaction status arrays to identify uncommitted versions in NVM.For evaluation,we compared MCSI with the PostgreSQL-style concurrency control used in the single-layer NVM database N2DB.The maximum transaction throughput of MCSI is 101%–195%higher than that of N2DB for the YCSB workloads,and 25%–49%higher for the TPC-C workloads.Moreover,the transaction latency of MCSI remains relatively stable as the thread count increases.With 18 worker threads,the average transaction latency of MCSI is 65%–84%lower than that of N2DB for the YCSB workloads and 16%–43%lower for the TPC-C workloads.