vChain, GEM2-Tree, LineageChain comparison
Published:
vChain和LineageChain都是为了减少查询执行开销而做出了对应优化,GEM2-Tree是设计了一种ADS来批量写入交易,优化了写操作。GEM2-Tree没有设计索引,LineageChain设计了DASL索引,vChain设计了块内和块间索引用于加速查询。vChain和GEM2-Tree都是对数据结构ADS进行优化,LineageChain对智能合约和存储层进行优化。
摘要
vChain
vChain首次解决了区块链的可验证查询问题,提出了一种基于累加器的ADS,对查询属性进行聚合,归一化值查询和范围查询。设计了块内索引和块间索引,加快查询过程。
GEM2-Tree
GEM2-Tree设计了一种新型的验证数据结构ADS,将MBT和SMBT结合构造出GEM2-Tree。SMBT只构造根root的hash值,其余所有的计算都在内存中进行,能有效降低更新的IO开销;MBT通过归并将SMBT合并能够降低合并的IO开销。整体的思想类似于磁盘存储的LSM-Tree,当数据超过阈值时进行合并,充分利用磁盘的顺序IO而非随机IO。
LineageChain
LineageChain在区块链的存储层和执行层做了改变,在执行层对执行引擎做了改变,当事务执行后会调用在智能合约中的helper方法获取输入输出的依赖关系,在存储层存储依赖信息作为溯源信息在增强的Merkle DAG中,并用DASL索引加快查询过程。提出了优化的存储数据结构和查询索引结构,并添加智能合约的helper方法,修改执行引擎。