The present disclosure provides a method for concurrently constructing block chain views, a computer system implementing the method, and a computer readable storage medium. The method includes: constructing a data structure including multiple entries for multiple transactions in the block chain, and each entry of the multiple entries includes the transfer account identifier, the transfer account identifier and the number of transactions involved in one of the transactions; dividing the multiple entries into multiple groups based on the account identifier, and distributing each group of entries to multiple counts. A computer node in a computer node; receives from each of the computer nodes a node view concurrently constructed for each account in a set of entries distributed to the computer node; and combines the node views of the multiple computer nodes to form a complete view of the block chain.
【技术实现步骤摘要】
并行构建区块链视图的方法、计算机系统和可读存储介质
本公开涉及互联网技术,更具体地,涉及一种用于并行构建区块链视图的方法、计算机系统和可读存储介质。
技术介绍
区块链(Blockchain)是比特币的一个重要概念,其本质上是一个去中心化的数据库,用于存储交易的分布式共享账本。区块链由区块构成,每个区块包含一组交易的信息。每当网络中有交易产生时,网络中有强大运算能力的节点(即矿工(Miner))就开始竞争解一个哈希谜题,竞争成功的节点获得产生新的区块的权利以构造出新的区块来记录最新的交易。新的区块按照时间顺序线性地被补充到原有的区块链末端,这个账本就会不停的增长和延长。区块链的这种分布式特性使得能够在非信任网络中进行信任交易,并且没有任何一个单方能够自己修改交易历史。因此,区块链提供了交易历史的可追溯性。当前,越来越多的地区和组织在研究将区块链用于自己的应用,如金融、健康等。视图是从一个或几个实际表(也称为基本表)中根据用户需要而做成的一个虚表。通过建立视图的方式能够查看原始数据库中的感兴趣的数据,从而简化数据操作,提供安全保护功能。传统的集中式数据库的视图构建只需要查询一个节点的数据即可。
技术实现思路
然而,区块链技术使用的是分布式数据库,分布式数据库是物理上分散的多个数据存储单元组成的一个逻辑上统一的数据库,具有高并发性的特点。传统的用于集中式数据库的视图构建技术已经不能适用于为区块链构建视图。针对以上问题,本公开提出了一种区块链视图的并行构建方法、实现该方法的计算机系统以及计算机可读存储介质。根据本公开的一个方面,提供了一种用于并行构建区块链视图的方法。 ...
【技术保护点】
1.一种用于并行构建区块链视图的方法,包括:为所述区块链中的多个交易构建包括多个条目的数据结构,所述多个条目中的每个条目包括所述多个交易中的一个交易所涉及的转出账户的标识符、转入账户的标识符和交易数量;以账户的标识符为索引将所述多个条目划分为多个组,并且将每组条目分发给多个计算机节点中的一个计算机节点;从所述多个计算机节点中的每个计算机节点接收针对分发给该计算机节点的一组条目中的每个账户并行构建的节点视图;以及组合所述多个计算机节点的节点视图以形成所述区块链的完整视图。
【技术特征摘要】
1.一种用于并行构建区块链视图的方法,包括:为所述区块链中的多个交易构建包括多个条目的数据结构,所述多个条目中的每个条目包括所述多个交易中的一个交易所涉及的转出账户的标识符、转入账户的标识符和交易数量;以账户的标识符为索引将所述多个条目划分为多个组,并且将每组条目分发给多个计算机节点中的一个计算机节点;从所述多个计算机节点中的每个计算机节点接收针对分发给该计算机节点的一组条目中的每个账户并行构建的节点视图;以及组合所述多个计算机节点的节点视图以形成所述区块链的完整视图。2.如权利要求1所述的方法,其中所述转出账户的标识符和所述转入账户的标识符分别是所述转出账户的区块链标识符和所述转入账户的区块链标识符,所述区块链标识符是相应账户在所述区块链中的唯一标识符。3.如权利要求1所述的方法,还包括:为拥有一个或多个区块链账户的用户创建用户标识符,其中,所述转出账户的标识符和所述转入账户的标识符分别是所述转出账户的用户标识符和所述转入账户的用户标识符。4.如权利要求2所述的方法,还包括:为拥有一个或多个区块链账户的用户创建用户标识符,其中,所述多个条目中的每个条目包括所述转出账户的用户标识符和区块链标识符以及所述转入账户的用户标识符和区块链标识符。5.如权利要求3或4所述的方法,其中从所述多个计算机节点中的每个计算机节点接收针对分发给该计算机节点的一组条目中的每个账户并行构建的节点视图包括:从所述多个计算机节点中的每个计算机节点接收针对分发给该计算机节点的一组条目中的每个用户并行构建的节点视图。6.如权利要求1所述的方法,其中所述节点视图包括节点转出视图和/或节点转入视图,并且所述区块链的完整视图包括所述区块链的完整转出视图和/或完整转入视图。7.如权利要求1所述的方法,其中所述条目还包括所述交易的交易时间。8.一种用于并行构建区块链视图的计算机系统,包括:存储器,其中存储有计算机程序代码;以及处理器,其被配置为运行所述存储器中存储的计算机程序,以为所述区块链中的多个交易构建包括多个条目的数据结构,所述多个条目中的每个条目包括所述多个交易中的一个交易所涉及的转出账户的标识符、转入账户的标识符和交易数量;基于账户的标识符将所述多个条目划分为多个组,并且将每组条目分发给多个计算机节点中的一个计算机节点;从所述多个计算机节点中的每个计算机节点接收针对分发给该计算机节点的一组条目中的每个账户并行构建的节点视图;以及组合所述多个计算机节点的节点视图以形成所述区块链的完整视图。9.如权利要求8所述的计算机系统,其中所述转出账户的标识符和所述转入账户的标识符分别是所述转出账户的区块链标识符和所述转入账户的区块链标识符,所述区块链标识符是相应账户在所述区块链中的唯一标识符。10.如权利要求8所述的计算机系统,其中所述处理器还被配置为运行所述存储器中存储的计算机程序代码,以为拥有一个或多个区块链账户的用户创建用户标识符,其中,所述转出账户的标识符和所述转入账户的标识符分别是所述转出账户的用户标识符和所述转...
【专利技术属性】
技术研发人员:曹锋,崇志宏,
申请(专利权)人:深圳区块链金融服务有限公司,上海万链信息技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。