[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN109146677B - Method, computer system and readable storage medium for parallel building of block chain views - Google Patents

Method, computer system and readable storage medium for parallel building of block chain views Download PDF

Info

Publication number
CN109146677B
CN109146677B CN201710448013.9A CN201710448013A CN109146677B CN 109146677 B CN109146677 B CN 109146677B CN 201710448013 A CN201710448013 A CN 201710448013A CN 109146677 B CN109146677 B CN 109146677B
Authority
CN
China
Prior art keywords
identifier
account
computer
blockchain
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201710448013.9A
Other languages
Chinese (zh)
Other versions
CN109146677A (en
Inventor
曹锋
崇志宏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Wanlian Information Technology Co ltd
Shenzhen Block Chain Finance Service Co ltd
Original Assignee
Shanghai Wanlian Information Technology Co ltd
Shenzhen Block Chain Finance Service Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Wanlian Information Technology Co ltd, Shenzhen Block Chain Finance Service Co ltd filed Critical Shanghai Wanlian Information Technology Co ltd
Priority to CN201710448013.9A priority Critical patent/CN109146677B/en
Publication of CN109146677A publication Critical patent/CN109146677A/en
Application granted granted Critical
Publication of CN109146677B publication Critical patent/CN109146677B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

The present disclosure provides a method of building block chain views in parallel, a computer system implementing the method, and a computer-readable storage medium. The method comprises the following steps: building a data structure comprising a plurality of entries for a plurality of transactions in the blockchain, each entry in the plurality of entries comprising an identifier of an outbound account, an identifier of an inbound account, and a transaction amount involved in one of the plurality of transactions; dividing the plurality of entries into a plurality of groups based on the identifier of the account and distributing each group of entries to one of the plurality of computer nodes; receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and combining the node views of the plurality of computer nodes to form a complete view of the blockchain.

Description

Method, computer system and readable storage medium for parallel building of block chain views
Technical Field
The present disclosure relates to internet technology, and more particularly, to a method, computer system, and readable storage medium for building blockchain views in parallel.
Background
Blockchain (Blockchain) is an important concept of bitcoin, which is essentially a decentralized database for storing a distributed shared ledger of transactions. The block chain is composed of blocks, and each block contains information of a group of transactions.
Whenever a transaction is generated in the network, a node with powerful computing power (i.e., a Miner (Miner)) in the network starts to compete for a hash puzzle, and the node successfully competing obtains the right to generate a new block to construct a new block to record the latest transaction. The new blocks are added linearly to the end of the original block chain in time sequence, and the book is continuously increased and lengthened.
This distributed nature of the blockchain enables trusted transactions in untrusted networks and no single party can modify the transaction history itself. Thus, the blockchain provides traceability of the transaction history. Currently, more and more regions and organizations are studying the use of blockchains for their own applications, such as finance, health, etc.
A view is a virtual table made from one or several actual tables (also called basic tables) according to the needs of the user. The interested data in the original database can be checked in a view establishing mode, so that data operation is simplified, and a safety protection function is provided. The traditional view construction of the centralized database only needs to query the data of one node.
Disclosure of Invention
However, the block chain technique uses a distributed database, which is a logically unified database composed of a plurality of physically distributed data storage units and has a high concurrency characteristic. Conventional view building techniques for centralized databases have not been adaptable to building views for blockchains.
In view of the above problems, the present disclosure provides a parallel building method of a blockchain view, a computer system implementing the method, and a computer-readable storage medium.
According to one aspect of the present disclosure, a method for building blockchain views in parallel is provided. The method comprises the following steps: building a data structure comprising a plurality of entries for a plurality of transactions in the blockchain, each entry in the plurality of entries comprising an identifier of an outbound account, an identifier of an inbound account, and a transaction amount involved in one of the plurality of transactions; dividing the plurality of entries into a plurality of groups based on the identifier of the account and distributing each group of entries to one of the plurality of computer nodes; receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and combining the node views of the plurality of computer nodes to form a complete view of the blockchain.
According to another aspect of the present disclosure, a computer system for building blockchain views in parallel is provided. The computer system includes: a memory having computer program code stored therein; and a processor configured to execute a computer program stored in the memory to construct, for a plurality of transactions in the blockchain, a data structure comprising a plurality of entries, each entry in the plurality of entries comprising an identifier of an roll-out account, an identifier of a roll-in account, and a transaction amount to which a transaction in the plurality of transactions relates; dividing the plurality of entries into a plurality of groups based on the identifier of the account and distributing each group of entries to one of the plurality of computer nodes; receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and combining the node views of the plurality of computer nodes to form a complete view of the blockchain.
According to yet another aspect of the present disclosure, a computer-readable storage medium is provided. The computer-readable storage medium includes: computer code for building a data structure for a plurality of transactions in a blockchain including a plurality of entries, each entry in the plurality of entries including an identifier of a roll-out account, an identifier of a roll-in account, and a transaction amount involved in one of the plurality of transactions; computer code for dividing the plurality of entries into a plurality of groups based on the identifier of the account and distributing each group of entries to one of a plurality of computer nodes; computer code for receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and computer code for combining node views of the plurality of computer nodes to form a complete view of the blockchain.
Drawings
The disclosure will be better understood and other objects, details, features and advantages thereof will become more apparent from the following description of specific embodiments of the disclosure given with reference to the accompanying drawings in which:
FIG. 1 is a schematic diagram of a block chain structure;
FIG. 2 shows a schematic diagram of a method for building blockchain views in parallel according to the present disclosure; and
fig. 3 illustrates a block diagram of a computer system for building blockchain views in parallel according to the present disclosure.
Detailed Description
Preferred embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While the preferred embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
Fig. 1 shows a block chain 10. As shown in fig. 1, a block chain 10 is comprised of one or more blocks 1001、1002、1003……100NCollectively referred to as block 100. The tile 100 mainly includes a tile header 110 and a transaction list 120 included in the tile. Typically, the chunk header 110 is 80 bytes in size, and includes a version number (4 bytes) field, a hash value (32 bytes) field of the last chunk in the chunk chain, a Merkel root hash value (32 bytes) field, a timestamp (4 bytes) field, a difficulty value (4 bytes) field of the hash puzzle for that chunk, and a Nonce (4 bytes) field. Each transaction list 120 includes at least one transaction.
In the following, a scheme for building block chain views in parallel according to the present disclosure will be described with reference to fig. 2 to 3. Fig. 2 shows a schematic diagram of a method 20 for building blockchain views in parallel according to the present disclosure, and fig. 3 shows a block diagram of a computer system 30 for building blockchain views in parallel according to the present disclosure. The method 20 may be implemented, for example, by a computer or computer system 30 according to the present disclosure.
A method 20 for building blockchain views in parallel according to the present disclosure includes a step 22 in which a computer system 30 builds a data structure including a plurality of entries for a plurality of transactions in a blockchain 10. Here, the system 30 may construct one data structure for all transactions in all tiles in the blockchain 10, or may construct a data structure for only a portion of transactions in the blockchain 10.
The constructed data structure includes a plurality of entries, each entry including an identifier of the transferred account, and a transaction amount to which one of the transactions relates. Further, in some implementations, each entry also includes a transaction time for the corresponding transaction. For example, assuming that transaction 001 is a one-to-one tie-back transaction, the entry corresponding to transaction 001 may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000041
for another example, assuming that transaction 001 is a one-to-many transfer transaction (e.g., a group transfer), the entry corresponding to transaction 001 may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000042
in one implementation, the identifier of the roll-out account and the identifier of the roll-in account are blockchain identifiers of the roll-out account and the roll-in account, respectively, in blockchain 10, and the blockchain identifier is, for example, a unique identifier of the corresponding account in blockchain 10, and may be assigned to each account by, for example, a management entity of blockchain 10. In this case, the entry corresponding to the one-to-one reconciled transaction 001 described above may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000051
the entry corresponding to the one-to-many transaction 001 described above may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000052
at step 24, the computer system 30 divides the plurality of entries in the constructed data structure into a plurality of groups based on the identifier of the account and distributes each group of entries to one of the plurality of computer nodes. As shown in FIG. 3, computer system 30 may be associated with a plurality of computer nodes 401、402、……40M(collectively computer nodes 40) are communicated.
Here, grouping the entries based on the identifier of the account includes dividing the roll-out transaction and the roll-in transaction performed by the same entry into the same group. For example, assuming account A performs a roll-out transaction in transaction 1 for a quantity of 50, a roll-in transaction 2 for a quantity of 30, then transactions 1 and 2 may be grouped into the same group when the entries are grouped based on the account A identifier.
By grouping the entries based on the account identifier, all transactions for the same account can be included in the same group for transmission to the same computer node for processing, avoiding confusion caused by transactions for the same account being processed by different computer nodes.
In one implementation, computer system 30 groups and distributes the entries in the data structure after the entire data structure construction is complete (i.e., after step 22 is complete). In this manner, multiple computer nodes 40 may build node views in parallel for entries distributed to the respective computer nodes.
In another implementation, step 24 may be performed concurrently with step 22. For example, computer system 30 may distribute a predetermined number of entries to computer nodes 40 immediately after they are generated1And immediately distribute to computer nodes 40 after the next predetermined number of entries are generated2And so on. In this way, not only the construction process of the node view realizes parallel processing, but also the distribution process itself improves the processing efficiency.
Those skilled in the art will appreciate that the computer node 40 used to perform the parallel construction of the node view may be a node or processor external to the computer system 30 (as shown in FIG. 3) or internal to the computer system 30 (e.g., where the computer system 30 itself is a multi-processor system).
Those skilled in the art will also appreciate that the division of the plurality of entries into a plurality of groups and distribution to the plurality of computer nodes 40 may be done on average or may not be even. Whether or not multiple entries are divided on average, one or more groups may be selected for distribution to the same computer node 40.
Each computer node 40 that receives the set of entries may build a node view in parallel for each account involved in the entry distributed to that computer node.
In one implementation, the constructed node view may include a node roll-out view. Taking the above entry constructed for transaction 001 as an example, the node roll-out view may include an identifier of the roll-out account and the transaction amount. Further, in some implementations, the node roll-out view may also include a transaction time for each transaction. For example, the node roll-out view may be of the form shown in table 1 below:
TABLE 1
Figure DEST_PATH_GDA0001408916280000061
Figure DEST_PATH_GDA0001408916280000071
In the example shown in Table 1, for the same account where there are multiple roll-out transactions, a respective row entry may be constructed in the node roll-out view for each of the multiple roll-out transactions. Alternatively, for the same account where there are multiple roll-out transactions, a row entry may be constructed in the node roll-out view for the multiple transactions to represent the total roll-out transaction amount for the account, as shown in table 2 below:
TABLE 2
Identifier of roll-out account Number of transactions
Account1 Amount1+Amount2
Account2
In another implementation, the constructed node view may include a node transfer-in view. Taking the above entry constructed for transaction 001 as an example, the node transfer view may include an identifier of the transferred account and the transaction amount. Further, in some implementations, the nodal transitive view may also include a transaction time for each transaction. For example, the node-in view may be of the form shown in table 3 below:
TABLE 3
Identifier transferred to account Number of transactions Transaction time
Account2 Amount1 Time1
Similarly, for the same account with multiple transfer-in transactions, a bank entry may be constructed in the node transfer-in view for each of the multiple transfer-in transactions, or a bank entry may be constructed in the node transfer-in view for the multiple transfer-in transactions to represent the total number of transfer-in transactions for the account.
In yet another implementation, the constructed node view may include both node roll-out views and node roll-in views. Alternatively, the constructed node view may include an overall view that integrates the node-out view and the node-in view. For example, assuming an account is involved in both an in-transfer transaction and an out-transfer transaction in the set of entries assigned to the computer node 40, the computer node 40 may establish an entry for the account reflecting its total transaction amount.
Assuming that the Account1 performs the roll-out transaction in transaction 001 with a transaction Amount of Amount1, and the roll-in transaction 002 with a transaction Amount of Amount4, the table entry corresponding to the Account1 in the constructed node view may be as shown in Table 4 below:
TABLE 4
Account identifier Number of transactions
Account1 -Amount1+Amount4
Where the symbol "-" in table 4 indicates an out-of-transaction and the symbol "+" in table 4 indicates an in-transaction. However, those skilled in the art will appreciate that the "+", "symbol arrangement is not necessarily associated with the in-and out-going transactions and may take any form of presentation suitable in the art.
At step 26, computer system 30 receives a node view from each of the computer nodes 40 that the computer nodes build in parallel.
At step 28, the computer system 30 combines node views of a plurality of computer nodes 40 to form a complete view of the blockchain 10.
For example, assume that the transaction in blockchain 10 related to Account1 includes: to computer nodes 401Of the set of entries of (1), the number of transactions being AMount1, is assigned to the computer node 401The entry group of (1) into transaction 002, the transaction Amount being Amount 4; and to computer nodes 402011 with the Amount of Amount5, allocated to computer node 402Into transactions 012 and 013, the number of transactions being Amount6 and Amount7, respectively, then the entries corresponding to Account1 in the full view constructed by computer system 30 for blockchain 10 are as shown in table 5 below:
TABLE 5
Figure DEST_PATH_GDA0001408916280000081
In this manner, the building of the blockchain view can be distributed to multiple computer nodes 40 for parallel implementation, which is advantageous for blockchain systems with large transaction volumes. Meanwhile, in the blockchain system, each account may involve multiple transactions, including transfer-in and transfer-out transactions, and even these transactions may occur at the same time, so the manner of obtaining the node view of each node and then obtaining the complete view is more beneficial to obtain the complete view of each account in the whole blockchain.
In some cases, there may be situations where one user has multiple blockchain accounts. In this case, it may be desirable to have a complete view of the blockchain constructed by computer system 30 that reflects the user's overall situation. For this case, in some implementations, method 20 also includes creating a user identifier for a user that owns one or more blockchain accounts. Accordingly, receiving a node view from each computer node 30 in step 26 may include receiving a node view that each computer node 30 has built in parallel for each user in a set of entries distributed to that computer node.
In one implementation, the entries in the data structure constructed in step 22 may include only the user identifier of the transferring-out account and the user identifier of the transferring-in account as the identifier of the transferring-out account and the identifier of the transferring-in account, respectively. In this case, the entry corresponding to the one-to-one reconciled transaction 001 described above may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000091
the entry corresponding to the one-to-many transaction 001 described above may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000092
Figure DEST_PATH_GDA0001408916280000101
in another implementation, the entries in the data structure constructed in step 22 may include both the user identifier and the blockchain identifier of the transferred-out account and the user identifier and the blockchain identifier of the transferred-in account. In this case, the entry corresponding to the one-to-one reconciled transaction 001 described above may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000102
the entry corresponding to the one-to-many transaction 001 described above may be constructed as follows:
Figure DEST_PATH_GDA0001408916280000103
here, the description is given taking as an example that both the blockchain identifiers BC2 and BC3 belong to the same User2, however, it will be understood by those skilled in the art that the above implementation may be similarly applied to the case that the blockchain identifiers BC2 and BC3 belong to different users.
By introducing user identifiers for users corresponding to one or more blockchain accounts, it is possible to conveniently group entries in a structured data structure based on the user identifiers and generate node views and full views for the respective users, and the generation of such node views and full views may or may not be dependent on the blockchain identifiers of the blockchain accounts, which is particularly useful when a system administrator wishes to keep track of the overall information of the users.
Fig. 3 shows a block diagram of a computer system 30 for building blockchain views in parallel. The computer system 30 may be located in the blockchain 10 or separate from the blockchain 10.
As shown in fig. 3, the computer system 30 includes a processor 31. The processor 31 controls the operation and functions of the computer system 30. For example, in some embodiments, the processor 31 may perform various operations by way of computer program code or instructions 33 stored in a memory 32 coupled thereto. The memory 32 may be of any suitable type suitable to the local technical environment and may be implemented using any suitable data storage technology, including but not limited to semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems. Although only one memory unit is shown in FIG. 3, there may be multiple physically distinct memory units within computer system 30.
The processor 31 may be of any suitable type suitable to the local technical environment, and may include, but is not limited to, one or more of general purpose computers, special purpose computers, microcontrollers, digital signal controllers (DSPs), and controller-based multi-core controller architectures. The computer system 30 may also include a plurality of processors 31. The processor 31 is connected to the communication interface 34 to receive and transmit information through the communication interface 34. For example, processor 31 may communicate with one or more computer nodes 40 via communication interface 34 as described above.
Furthermore, in some other embodiments, some or all of the computer nodes 40 may be located inside the computer system 30.
In one or more exemplary designs, the functions described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium, for example. For example, in one implementation, the above scheme may be implemented by using a cluster computing method spark based on memory computing.
The units of the apparatus disclosed herein may be implemented using discrete hardware components, or may be integrally implemented on a single hardware component, such as a processor. For example, the various illustrative logical blocks, modules, and circuits described in connection with the disclosure may be implemented or performed with a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both.
The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Thus, the disclosure is not intended to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (21)

1. A method for building blockchain views in parallel, comprising:
building a data structure comprising a plurality of entries for a plurality of transactions in the blockchain, each entry in the plurality of entries comprising an identifier of an outbound account, an identifier of an inbound account, and a transaction amount involved in one transaction in the plurality of transactions;
dividing the plurality of entries into a plurality of groups indexed by identifiers of the accounts and distributing each group of entries to one of a plurality of computer nodes;
receiving, from each of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and
combining node views of the plurality of computer nodes to form a complete view of the blockchain.
2. The method of claim 1, wherein the identifier of the transferring-out account and the identifier of the transferring-in account are a blockchain identifier of the transferring-out account and a blockchain identifier of the transferring-in account, respectively, the blockchain identifier being a unique identifier of the corresponding account in the blockchain.
3. The method of claim 1, further comprising:
a user identifier is created for a user who owns one or more blockchain accounts,
wherein the identifier of the roll-out account and the identifier of the roll-in account are the user identifier of the roll-out account and the user identifier of the roll-in account, respectively.
4. The method of claim 2, further comprising:
a user identifier is created for a user who owns one or more blockchain accounts,
wherein each entry of the plurality of entries includes a user identifier and a blockchain identifier of the roll-out account and a user identifier and a blockchain identifier of the roll-in account.
5. The method of claim 3 or 4, wherein receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node comprises: a node view is received from each of the plurality of computer nodes that is built in parallel for each user in a set of entries distributed to the computer node.
6. The method as claimed in claim 1, wherein the node view comprises a node roll-out view and/or a node roll-in view and the full view of the blockchain comprises a full roll-out view and/or a full roll-in view of the blockchain.
7. The method of claim 1, wherein the entry further comprises a transaction time for the transaction.
8. A computer system for building blockchain views in parallel, comprising:
a memory having computer program code stored therein; and
a processor configured to execute the computer program stored in the memory to
Building a data structure comprising a plurality of entries for a plurality of transactions in the blockchain, each entry in the plurality of entries comprising an identifier of an outbound account, an identifier of an inbound account, and a transaction amount involved in one transaction in the plurality of transactions;
dividing the plurality of entries into a plurality of groups based on an identifier of an account and distributing each group of entries to one of a plurality of computer nodes;
receiving, from each of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and
combining node views of the plurality of computer nodes to form a complete view of the blockchain.
9. The computer system of claim 8, wherein the identifier of the transferring-out account and the identifier of the transferring-in account are a blockchain identifier of the transferring-out account and a blockchain identifier of the transferring-in account, respectively, the blockchain identifier being a unique identifier of the corresponding account in the blockchain.
10. The computer system of claim 8, wherein the processor is further configured to execute computer program code stored in the memory to
A user identifier is created for a user who owns one or more blockchain accounts,
wherein the identifier of the roll-out account and the identifier of the roll-in account are the user identifier of the roll-out account and the user identifier of the roll-in account, respectively.
11. The computer system of claim 9, wherein the processor is further configured to execute computer program code stored in the memory to
A user identifier is created for a user who owns one or more blockchain accounts,
wherein each entry of the plurality of entries includes a user identifier and a blockchain identifier of the roll-out account and a user identifier and a blockchain identifier of the roll-in account.
12. The computer system of claim 10 or 11, wherein receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node comprises: a node view is received from each of the plurality of computer nodes that is built in parallel for each user in a set of entries distributed to the computer node.
13. The computer system as claimed in claim 8, wherein the node view comprises a node roll-out view and/or a node roll-in view and the full view of the blockchain comprises a full roll-out view and/or a full roll-in view of the blockchain.
14. The computer system of claim 8, wherein the entry further comprises a transaction time for the transaction.
15. A computer-readable storage medium, comprising:
computer code for building a data structure for a plurality of transactions in a blockchain including a plurality of entries, each entry in the plurality of entries including an identifier of an account to transfer out, an identifier of an account to transfer in, and a transaction amount involved in one of the plurality of transactions;
computer code for dividing the plurality of entries into a plurality of groups based on an identifier of an account and distributing each group of entries to one of a plurality of computer nodes;
computer code for receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node; and
computer code for combining node views of the plurality of computer nodes to form a complete view of the blockchain.
16. The computer-readable medium of claim 15, wherein the identifier of the roll-out account and the identifier of the roll-in account are a blockchain identifier of the roll-out account and a blockchain identifier of the roll-in account, respectively, the blockchain identifier being a unique identifier of the corresponding account in the blockchain.
17. The computer-readable storage medium of claim 15, further comprising:
computer code for creating a user identifier for a user having one or more blockchain accounts,
wherein the identifier of the roll-out account and the identifier of the roll-in account are the user identifier of the roll-out account and the user identifier of the roll-in account, respectively.
18. The computer-readable storage medium of claim 16, further comprising:
computer code for creating a user identifier for a user having one or more blockchain accounts,
wherein each entry of the plurality of entries includes a user identifier and a blockchain identifier of the roll-out account and a user identifier and a blockchain identifier of the roll-in account.
19. The computer readable storage medium of claim 17 or 18, wherein the computer code for receiving, from each of the plurality of computer nodes, a node view constructed in parallel for each account in a set of entries distributed to the computer node comprises: computer code for receiving, from each computer node of the plurality of computer nodes, a node view constructed in parallel for each user in a set of entries distributed to the computer node.
20. The computer-readable storage medium of claim 15, wherein the node view comprises a node roll-out view and/or a node roll-in view, and the full view of the blockchain comprises a full roll-out view and/or a full roll-in view of the blockchain.
21. The computer-readable storage medium of claim 15, wherein the entry further comprises a transaction time for the transaction.
CN201710448013.9A 2017-06-14 2017-06-14 Method, computer system and readable storage medium for parallel building of block chain views Expired - Fee Related CN109146677B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710448013.9A CN109146677B (en) 2017-06-14 2017-06-14 Method, computer system and readable storage medium for parallel building of block chain views

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710448013.9A CN109146677B (en) 2017-06-14 2017-06-14 Method, computer system and readable storage medium for parallel building of block chain views

Publications (2)

Publication Number Publication Date
CN109146677A CN109146677A (en) 2019-01-04
CN109146677B true CN109146677B (en) 2021-07-23

Family

ID=64830036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710448013.9A Expired - Fee Related CN109146677B (en) 2017-06-14 2017-06-14 Method, computer system and readable storage medium for parallel building of block chain views

Country Status (1)

Country Link
CN (1) CN109146677B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3610450A4 (en) * 2019-03-28 2020-06-10 Alibaba Group Holding Limited System and method for parallel-processing blockchain transactions
US11251966B2 (en) 2019-06-28 2022-02-15 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
CN110311790B (en) 2019-06-28 2020-07-28 阿里巴巴集团控股有限公司 Method and device for sending authenticable message in cross-link mode
CN110430162B (en) * 2019-06-28 2020-11-24 创新先进技术有限公司 Method and device for sending authenticable message in cross-link mode
US11356282B2 (en) 2019-06-28 2022-06-07 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
CN111161078A (en) * 2020-01-06 2020-05-15 江苏恒为信息科技有限公司 One-to-many block chain transfer realization method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106101242A (en) * 2016-06-24 2016-11-09 深圳前海微众银行股份有限公司 The construction method of block chain cloud service platform and device
CN106506203A (en) * 2016-10-25 2017-03-15 杭州云象网络技术有限公司 A kind of monitoring nodes system for being applied to block chain
CN106797389A (en) * 2016-11-18 2017-05-31 深圳前海达闼云端智能科技有限公司 Block chain network, article trading method, device and node device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106101242A (en) * 2016-06-24 2016-11-09 深圳前海微众银行股份有限公司 The construction method of block chain cloud service platform and device
CN106506203A (en) * 2016-10-25 2017-03-15 杭州云象网络技术有限公司 A kind of monitoring nodes system for being applied to block chain
CN106797389A (en) * 2016-11-18 2017-05-31 深圳前海达闼云端智能科技有限公司 Block chain network, article trading method, device and node device

Also Published As

Publication number Publication date
CN109146677A (en) 2019-01-04

Similar Documents

Publication Publication Date Title
CN109146677B (en) Method, computer system and readable storage medium for parallel building of block chain views
KR102454779B1 (en) Method and apparatus for distributed database enabling deletion of events
EP3296896B1 (en) Distributed cache for graph data
CN109218348B (en) Method for determining blocks in block chain and node equipment
CN109189751A (en) Method of data synchronization and terminal device based on block chain
JP6086463B2 (en) Method, device and system for peer-to-peer data replication and method, device and system for master node switching
CN110555012A (en) data migration method and device
US20220107960A1 (en) Methods and apparatus for a distributed database within a network
CN103838770A (en) Logic data partition method and system
JP2022521332A (en) Metadata routing in a distributed system
CN111553670B (en) Transaction processing method and device and computer readable storage medium
WO2021023304A1 (en) Fork processing method and blockchain node
EP4033440A1 (en) Consensus method, apparatus and device of block chain
CN112650812A (en) Data fragment storage method and device, computer equipment and storage medium
CN109101338A (en) A kind of block chain processing framework and its method based on the extension of multichannel chip
CN112685499A (en) Method, device and equipment for synchronizing process data of work service flow
CN101916281B (en) Concurrent computational system and non-repetition counting method
CN110661867B (en) Block chain consensus method based on improved workload certification and equity certification
CN107908713B (en) Distributed dynamic rhododendron filtering system based on Redis cluster and filtering method thereof
CN110209720A (en) The management method and device of list data
Al-Sayyed et al. A new approach for database fragmentation and allocation to improve the distributed database management system performance
CN112527908A (en) Block chain network construction method, node adding method, medium and equipment
CN103414756A (en) Task distributing method and distributing node and system
CN111327669A (en) Decentralized block chain solution method
CN103748578B (en) The method of data distribution, apparatus and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210723

CF01 Termination of patent right due to non-payment of annual fee