随着基于区块链的农产品溯源系统迅速发展,区块链查询能力面临着巨大挑战。对于供应链参与方来说,区块链中保存的数据多为编码或序列化的数据,使得供应链参与方的审计和监督等存在多条件查询的工作变得十分困难。通常情况下,原生区块链...随着基于区块链的农产品溯源系统迅速发展,区块链查询能力面临着巨大挑战。对于供应链参与方来说,区块链中保存的数据多为编码或序列化的数据,使得供应链参与方的审计和监督等存在多条件查询的工作变得十分困难。通常情况下,原生区块链并未提供满足多条件查询的查询方式。因此,为了实现多条件查询并提高查询效率,本研究提出一种农产品溯源数据多条件查询优化方法。首先,该方法采用一种优化的Merkle树结构(n-Tree)对交易信息进行重构,从而提供更高效的条件验证能力。其次,通过自适应多条件区块布隆过滤器判断交易信息中查询条件的存在性,进而快速过滤区块。最后,提出一种应用TWTN-Heap(Time weight and transaction number based heap)结构的索引构建方法,以区块权重为序构建主条件相关的区块号索引列表。产品数据的查询过程包括遍历区块号索引列表、过滤非相关区块以及验证特定查询条件,从而获得条件查询结果。实验结果表明,本研究提出的产品数据条件查询优化方法能够有效地解决农产品供应链面临的条件查询问题,同时保证查询时间消耗维持在15 ms左右,查询效率较默克尔语义字典树(Merkle semantic trie, MST)方法提高60.9%,较原始遍历(Orignal traverse, OT)方法提高87.7%。展开更多
文摘随着基于区块链的农产品溯源系统迅速发展,区块链查询能力面临着巨大挑战。对于供应链参与方来说,区块链中保存的数据多为编码或序列化的数据,使得供应链参与方的审计和监督等存在多条件查询的工作变得十分困难。通常情况下,原生区块链并未提供满足多条件查询的查询方式。因此,为了实现多条件查询并提高查询效率,本研究提出一种农产品溯源数据多条件查询优化方法。首先,该方法采用一种优化的Merkle树结构(n-Tree)对交易信息进行重构,从而提供更高效的条件验证能力。其次,通过自适应多条件区块布隆过滤器判断交易信息中查询条件的存在性,进而快速过滤区块。最后,提出一种应用TWTN-Heap(Time weight and transaction number based heap)结构的索引构建方法,以区块权重为序构建主条件相关的区块号索引列表。产品数据的查询过程包括遍历区块号索引列表、过滤非相关区块以及验证特定查询条件,从而获得条件查询结果。实验结果表明,本研究提出的产品数据条件查询优化方法能够有效地解决农产品供应链面临的条件查询问题,同时保证查询时间消耗维持在15 ms左右,查询效率较默克尔语义字典树(Merkle semantic trie, MST)方法提高60.9%,较原始遍历(Orignal traverse, OT)方法提高87.7%。