CN113434522A - Parallel updating method and updating system on state tree facing alliance chain - Google Patents
Parallel updating method and updating system on state tree facing alliance chain Download PDFInfo
- Publication number
- CN113434522A CN113434522A CN202110498176.4A CN202110498176A CN113434522A CN 113434522 A CN113434522 A CN 113434522A CN 202110498176 A CN202110498176 A CN 202110498176A CN 113434522 A CN113434522 A CN 113434522A
- Authority
- CN
- China
- Prior art keywords
- state
- parallel
- node
- conflict
- nodes
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000013507 mapping Methods 0.000 claims description 17
- 230000011218 segmentation Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 239000010432 diamond Substances 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention discloses a parallel updating method on a state tree facing to a alliance chain. According to the method, each updated state is positioned to the conflict node needing to be modified on the state tree, tasks of updating the state and the node are reasonably distributed to the thread, and the thread updates the state tree nodes in parallel. The invention also discloses a system for realizing the parallel updating method, which comprises a consensus module, a transaction execution module and a storage module. By this means, updates to the state tree can be performed in parallel, thereby greatly improving system throughput. The invention realizes the lock-free parallel update of the state, decouples the read operation and the write operation, and skillfully combines and uses the characteristic of block chain batch update, thereby maximally improving the concurrency performance.
Description
Technical Field
The invention belongs to the technical field of block chains, relates to a state tree updating method, and particularly relates to a state tree parallel updating method and system for a alliance chain.
Background
The block chain is a distributed account book which is maintained by multiple parties facing to non-credible environments, and has the characteristics of decentralization, no tampering, traceability of historical data and the like. However, conventional blockchains are performed sequentially on a batch of transactions in order to ensure that each copy has a consistent final state. However, this sequential execution mode does not make good use of the performance of modern multi-core processors, leaves a large amount of computer resources unused and results in poor performance.
The storage of the state mainly comprises a verifiable data structure storage, which is collectively called a state tree, such as MPT, SMT and the like. The structure may, in addition to calculating the digest, also serve as an index of the account status and provide integrity certification. In addition, the state tree stores all versions of account state data by building a snapshot of the global account state on each block. However, due to the update of each node on the state tree, the hash of all nodes on the path from the root node to the updated node of the state tree at commit time is recalculated, and all updated nodes need to be persisted. At present, a plurality of parallel operations on the state tree lock the whole tree to update the state, but the method and the serial updating effect are basically consistent; another is to design a mechanism that uses locks at the node granularity, but due to the context of the node and its children, locks on nodes closer to the root node compete more aggressively, which also affects overall concurrency performance.
Therefore, in order to improve the overall performance of the federation chain, it is necessary to provide a parallel update strategy on the state tree oriented to the federation chain.
Disclosure of Invention
In order to solve the defects in the prior art, the invention aims to provide a parallel updating method on a state tree facing to a federation chain, which realizes lock-free parallel updating of states, and maximizes the concurrency performance by decoupling read operation and write operation and skillfully combining and using the characteristic of block chain batch updating.
The invention aims to improve the throughput rate of a alliance chain, and provides a parallel updating method on a state tree facing the alliance chain aiming at the defects of the prior art. In parallel updating on a state tree, the invention decouples read operation and write operation, analyzes conflict relationship between jobs, sinks in parallel to find a common updated node between jobs from a root node, divides the conflict-free jobs to different working threads for execution, and updates all updated states in a block to the state tree in parallel without lock, thereby improving the block processing speed and improving the system throughput.
The invention provides a parallel updating method on a state tree facing to a alliance chain, which specifically comprises the following steps:
step 1: distributing a state set S to be updated to different working threads in a modular, Hash mapping and ordered segmentation and partition distribution mode;
step 2: performing parallel sinking search on all the updated states on the state tree until a conflict node is found, and adding the corresponding state to the conflict node;
and step 3: taking out the updated state list of the conflict nodes from the mapping relation, and redistributing the conflict nodes and the additional state sets thereof to different working threads in the distribution modes of modulus taking, Hash mapping, ordered segmentation and the like, wherein one conflict node is modified by one working thread as much as possible, and one working thread can modify one or more conflict nodes;
and 4, step 4: and updating the nodes of the state tree in parallel according to the state and the conflict node information distributed by the working thread.
Wherein,
the step 1 further comprises the following steps:
step 1-1: collecting all state sets S and working thread sets needing to be updated in batch, and initializing counters;
step 1-2: and taking out each updated state from the set S, obtaining the index of the working thread by using modes of modulus taking, Hash mapping, ordered segmentation and the like, and distributing the taken-out state to the corresponding working thread.
The step 2 further comprises the following steps:
step 2-1: taking out the state sets from the working threads in parallel, and initializing the mapping relation between the nodes and the working list;
step 2-2: and (4) taking out the updated state from the state set, searching for the conflict node on the state tree, and adding the updated state into the state list of the conflict node in the mapping relation of the step 2-1.
The step 4 further comprises the following steps:
step 4-1: reading corresponding conflict nodes needing to be updated and an update state list thereof from each working thread in parallel;
step 4-2: and sequentially taking out the conflict nodes from the conflict node set in parallel, acquiring an update state list of the conflict nodes from the mapping relation, and sequentially updating the conflict nodes and the child nodes needing to be updated on the tree.
The invention also provides a system for realizing the parallel updating method, which comprises the following steps: the system comprises a consensus module, a transaction execution module and a storage module.
The consensus module is used for maintaining the operation sequence and fairness of the system and maintaining the stable operation of the system through reward and punishment; the consensus refers to a community solution that achieves statements accepted by the diverging parties (even if sometimes only marginally accepted, or even just placed aside disputes).
The transaction execution module executes intelligent contract binary codes in the transaction by using an Executor (Executor); the executor is similar to a black box in the execution process, the input is intelligent contract codes, and the output is state change.
The Storage module is used for modifying the State (State) of the account after the transaction passes through the transaction execution module, and the Storage module stores the modified State (Storage).
The beneficial effects of the invention include: the invention realizes the lock-free parallel update of the state, decouples the read operation and the write operation, and skillfully combines and uses the characteristic of block chain batch update, thereby maximally improving the concurrency performance.
Drawings
FIG. 1 is a diagram illustrating example of job assignment in embodiment 1 of the present invention.
Fig. 2 is a diagram illustrating a parallel sink in embodiment 1 of the present invention.
Fig. 3 is a diagram illustrating an example of nodes to which a worker thread allocates a required update according to embodiment 1 of the present invention.
Fig. 4 is an exemplary diagram of parallel node update according to embodiment 1 of the present invention.
FIG. 5 is a diagram illustrating example of job assignment according to embodiment 2 of the present invention.
Fig. 6 is a diagram illustrating a parallel sinking in embodiment 2 of the present invention.
FIG. 7 is a diagram of an example of nodes whose worker threads need to be updated according to embodiment 2 of the present invention.
FIG. 8 is a diagram illustrating example of job assignment in embodiment 3 of the present invention.
Fig. 9 is a diagram illustrating a parallel sinking example according to embodiment 3 of the present invention.
FIG. 10 is a diagram of an example of nodes whose worker threads need to be updated according to embodiment 3 of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the following specific examples and the accompanying drawings. The procedures, conditions, experimental methods and the like for carrying out the present invention are general knowledge and common general knowledge in the art except for the contents specifically mentioned below, and the present invention is not particularly limited.
In a conventional blockchain, after a transaction in a block is executed, the updated state is serially updated to the state tree, which limits the improvement of blockchain throughput. In the invention, in order to update the states to the state tree in parallel without lock, the overall performance of the system is improved, the read-write operation is decoupled, and the updated states are updated to the state tree in batch by utilizing the characteristic of block chain batch, so that the conflict relationship of the nodes needing to be updated on the state tree can be obtained, the parallel update scheduling without lock is carried out to the maximum extent, and the throughput of the whole system is improved.
The parallel updating method on the state tree facing the alliance chain is shown as the following codes:
the method comprises the following specific steps:
step 1: allocating the state set S needing to be updated to different working threads, and comprising the following specific steps (lines 1-5):
step 1-1: collecting all state sets S which need to be updated in batch, setting an initialization counter cnt to be 0, and collecting a working thread set W;
step 1-2: taking out each updated state (k, v) from the set S, and calculating the counter cnt and the total number of working threads NtObtaining idx by taking a module, distributing the taken state (k, v) to the idx working thread, and adding one to the cnt counter;
the k is an account address; the v is the value of account address modification; the idx is a working thread identifier distributed according to a division rule;
step 2: and sinking all the updating states on the tree in parallel until a conflict node is found, and comprising the following specific steps (lines 6-12):
step 2-1: taking out the state set task _ set from the working thread in parallel, and initializing a mapping relation M between the nodes and the working list;
step 2-2: the updated state (k, v) is taken out from the state set task _ set, and the node of the conflict node is searched on the state treecAdding the updated state (k, v) to the updated state list l in the mapping MtPerforming the following steps;
step 3, taking out the conflict node-updated state list (node) from the mapping relation Mc,lt) The counter cnt is compared with the total number of working threads NtModulo to get idx, update the conflicting node-state list (node)c,lt) Uniformly distributing the counter cnt to different working threads in a modulo mode, and adding one to the counter cnt (13 th to 17 th lines);
and 4, step 4: according to the state distributed by the working thread and the information of the conflict nodes, the nodes of the state tree are updated in parallel, and the method comprises the following specific steps (19 th to 25 th lines):
step 4-1: reading the corresponding conflict node set needing to be updated and the state (k, v) thereof from each working thread in parallel;
step 4-2: sequentially taking out the conflict nodes from the conflict node set node _ set in parallelcObtaining the updated state list l of the conflict node from the mapping relation MtAnd updating the conflict nodes and the child nodes needing to be updated on the tree in sequence.
The invention also provides a system for realizing the parallel updating method, which comprises the following steps: the system comprises a consensus module, a transaction execution module and a storage module.
The consensus module is used for maintaining the operation sequence and fairness of the system and maintaining the stable operation of the system through reward and punishment; the consensus refers to a community solution that achieves statements accepted by the diverging parties (even if sometimes only marginally accepted, or even just placed aside disputes).
The transaction execution module executes intelligent contract binary codes in the transaction by using an Executor (Executor); the executor is similar to a black box in the execution process, the input is intelligent contract codes, and the output is state change.
The Storage module is used for modifying the State (State) of the account after the transaction passes through the transaction execution module, and the Storage module stores the modified State (Storage).
Example 1
The embodiment is a method for updating nodes on a state tree in parallel.
Dirty status (dirty): the modified state after all transactions for a block have been executed.
Operation: and updating the leaf node where each state is located and the parent node on the path of the leaf node.
And (4) collision nodes: multiple states update the same node, and the node which is updated multiple times is the conflict node.
And (3) expanding the nodes: there is only one child node.
A branch node: there may be multiple nodes.
Leaf node: there are no child nodes.
First, as shown in FIG. 1, assume that after all transactions within a block have been executed, a total of 6 dirty states s have occurred1~s6Where "I (-) and" D (-) represent insertion and deletion of the state, respectively. All these dirty states (jobs) are evenly distributed among the 3 worker threads (worker threads a, b, c are represented by rectangles, circles, diamonds, respectively).
Next, as shown in FIG. 2, 3 worker threads sink in parallel on the state tree, find the conflict node for each job, and attach the job to the corresponding conflict node. For example, a round worker thread b, as shown in FIG. 1, holds a job (dirty state) s2And s6Then the worker thread b sinks in parallel on the state tree, and the path is: node 1->Node 3->Node 6 and node 1->Node 2->And a node 5. The final sinking step ends at two collision nodes: node 5 and node 6. When all the worker threads complete the sink step, eventually all the jobs (dirty states) are attached to 4 conflict nodes as shown in FIG. 2: node 5, node 6, node 8, node 9.
After all conflict nodes are found, although some jobs (dirty states) are allocated to different work threads after step 1, jobs belonging to different work threads are allocated to the same conflict node after the state sink of step 2: s2And s6Belonging to a working thread b, s1And s5Belonging to worker thread a, but s1And s6Belonging to the same collision node, s2And s5Belonging to different conflicting nodes. Therefore, as shown in FIG. 3, considering the problem of load balancing, s is set1And s6Assigned to the worker thread a for processing, s2And s5Assigned to working threads b, s3And s4Assigned to worker thread c.
After the node update task is assigned to different worker threads, all worker threads update different conflicting nodes in parallel, as shown in FIG. 4.
Example 2
As shown in FIG. 5, assume that after all transactions within a block have been executed, a total of 6 dirty states s have occurred1~s6Where "I (-) and" D (-) represent insertion and deletion of the state, respectively. All these dirty states (jobs) are mapped in 3 worker threads (worker threads a, b, c are represented by rectangles, circles, diamonds, respectively) by means of a hash map.
Next, as shown in FIG. 6, 3 worker threads sink in parallel on the state tree, find the conflict node for each job, and attach the job to the corresponding conflict node. For example, a round worker thread b, as shown in FIG. 1, holds a job (dirty state) s2And s6Then the worker thread b sinks in parallel on the state tree, and the path is: node 1->Node 4->Node 8 and node 1->Node 4->And a node 9. The final sinking step ends at two collision nodes: node 8 and node 9. When all the worker threads complete the sink step, eventually all the jobs (dirty states) are attached to 4 conflict nodes as shown in FIG. 2: node 5, node 6, node 8, node 9.
After all conflict nodes are found, although some jobs (dirty states) are allocated to different work threads after step 1, jobs belonging to different work threads are allocated to the same conflict node after the state sink of step 2: s2And s6Belonging to a working thread b, s1And s5Belonging to a work thread a, s3And s4Belonging to a worker thread c. But s1And s4Belonging to the same collision node, s2And s5Belonging to different conflicting nodes. Therefore, as shown in FIG. 7, considering the problem of load balancing, s is set1And s4Assigned to the worker thread a for processing, s2And s5Assigned to working threads b, s3And s6Assigned to worker thread c.
The procedure at stage four was identical to that of example 1.
Example 3
As shown in FIG. 8, assume that after all transactions within a block have been executed, a total of 6 dirty states s have occurred1~s6Where "I (-) and" D (-) represent insertion and deletion of the state, respectively. All these dirty states (jobs) are mapped in 3 worker threads (worker threads a, b, c are represented by rectangles, circles, diamonds, respectively) by means of ordered segmentation.
Next, as shown in FIG. 9, 3 worker threads sink in parallel on the state tree, find the conflict node for each job, and attach the job to the corresponding conflict node. For example, a round worker thread b, as shown in FIG. 1, holds a job (dirty state) s2And s6Then the worker thread b sinks in parallel on the state tree, and the path is: node 1->Node 3->Node 6 and node 1->Node 4->And a node 8. The final sinking step ends at two collision nodes: node 6 and node 8. When all the worker threads complete the sink step, eventually all the jobs (dirty states) are attached to 4 conflict nodes as shown in FIG. 2: node 5, node 6, node 8, node 9.
After all conflict nodes are found, although some jobs (dirty states) are allocated to different work threads after step 1, jobs belonging to different work threads are allocated to the same conflict node after the state sink of step 2: s2And s6Belonging to a working thread b, s1And s5Belonging to a work thread a, s3And s4Belonging to a worker thread c. But s4And s5Belonging to the same collision node, s1And s2Belonging to different conflicting nodes. Therefore, as shown in FIG. 10, considering the problem of load balancing, s is set4And s5Assigned to the worker thread a for processing, s1And s2Assigned to working threads b, s3And s6Assigned to worker thread c.
The procedure at stage four was identical to that of example 1.
The protection of the present invention is not limited to the above embodiments. Variations and advantages that may occur to those skilled in the art may be incorporated into the invention without departing from the spirit and scope of the inventive concept, which is set forth in the following claims.
Claims (8)
1. A method for updating state trees in parallel in a federation chain is characterized in that the method comprises the following steps:
step 1: distributing the state set to be updated to different working threads in a mode of taking a module, carrying out Hash mapping and distributing the state set to be updated to different working threads in an ordered segmented manner;
step 2: sinking and searching all the updating states on the tree in parallel until the conflict node is found, and adding the corresponding state to the conflict node;
and step 3: taking out the updated state list of the conflict nodes from the mapping relation, and redistributing the conflict nodes and the additional state sets thereof to different working threads in a mode of taking a module, carrying out Hash mapping and orderly segmenting and dividing, wherein one working thread modifies one or more conflict nodes;
and 4, step 4: and updating the nodes of the state tree in parallel according to the state and the conflict node information distributed by the working thread.
2. The method of claim 1, wherein step 1, further comprises the steps of:
step 1-1: collecting all state sets and working thread sets needing to be updated in batch, and initializing counters;
step 1-2: and taking out each updated state from the set, obtaining the index of the working thread by utilizing modes of modulus taking, Hash mapping and ordered segmentation division, and distributing the taken-out state to the corresponding working thread.
3. The method of claim 1, wherein step 2 further comprises the steps of:
step 2-1: taking out the state sets from the working threads in parallel, and initializing the mapping relation between the nodes and the working list;
step 2-2: and taking out the updated state from the state set, searching for the conflict node on the state tree, and adding the updated state into the state set of the conflict node.
4. The method of claim 1, wherein step 4 further comprises the steps of:
step 4-1: reading corresponding conflict nodes needing to be updated and an update state list thereof from each working thread in parallel;
step 4-2: and sequentially taking out the conflict nodes from the conflict node set in parallel, acquiring an update state list of the conflict nodes from the mapping relation, and sequentially updating the conflict nodes and the child nodes needing to be updated on the tree.
5. A system for implementing the parallel update method according to any one of claims 1 to 4, the system comprising: the system comprises a consensus module, a transaction execution module and a storage module.
6. The system of claim 5, wherein the consensus module maintains an order of operation and fairness of the system and maintains stable operation of the system through reward punishment, the consensus being a community solution to achieve statements accepted by divergent parties.
7. The system of claim 5, wherein the trade execution module executes smart contract binary code in a trade using an executor; the input of the executor is intelligent contract code, and the output is state change.
8. The system of claim 5, wherein the storage module is configured to modify the status of the account after the transaction passes through the transaction execution module, and the storage module stores the modified status.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110498176.4A CN113434522B (en) | 2021-05-08 | 2021-05-08 | Parallel updating method and updating system on state tree oriented to alliance chain |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110498176.4A CN113434522B (en) | 2021-05-08 | 2021-05-08 | Parallel updating method and updating system on state tree oriented to alliance chain |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113434522A true CN113434522A (en) | 2021-09-24 |
CN113434522B CN113434522B (en) | 2023-06-09 |
Family
ID=77753069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110498176.4A Active CN113434522B (en) | 2021-05-08 | 2021-05-08 | Parallel updating method and updating system on state tree oriented to alliance chain |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434522B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356941A (en) * | 2021-12-22 | 2022-04-15 | 北京泛融科技有限公司 | Transaction execution method and device based on address preprocessing and electronic equipment |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917394A (en) * | 2010-06-13 | 2010-12-15 | 大连海事大学 | Middleware system for sharing data in mobile phone equipment and working method |
US20170052168A1 (en) * | 2015-08-20 | 2017-02-23 | Ofi Testing Equipment, Inc. | Multi-Purpose Tube for Oil Well Cement Testing |
CN108513658A (en) * | 2016-12-30 | 2018-09-07 | 华为技术有限公司 | A kind of transaction methods and device |
CN109067863A (en) * | 2018-07-25 | 2018-12-21 | 上海点融信息科技有限责任公司 | For managing the method, apparatus and storage medium of the node identification of block chain link point |
CN110276689A (en) * | 2019-06-19 | 2019-09-24 | 辽宁大学 | Intelligent contract implementation method based on dynamic decision |
CN110688377A (en) * | 2019-08-30 | 2020-01-14 | 阿里巴巴集团控股有限公司 | Method and device for updating state Merck tree |
CN111294234A (en) * | 2020-01-17 | 2020-06-16 | 麦科思(苏州)数据科技有限公司 | Parallel block chain fragmentation method based on intelligent contract optimization model |
US20200210170A1 (en) * | 2018-12-27 | 2020-07-02 | Hcl America Inc | Resolving potential merge conflicts by utilizing a distributed blockchain framework |
CN111683043A (en) * | 2020-04-26 | 2020-09-18 | 华东师范大学 | Intelligent contract concurrent execution method facing alliance chain and based on trusted execution environment |
CN112579291A (en) * | 2020-12-22 | 2021-03-30 | 北京航空航天大学 | StateDB-based intelligent contract parallel operation system and parallel operation method |
-
2021
- 2021-05-08 CN CN202110498176.4A patent/CN113434522B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917394A (en) * | 2010-06-13 | 2010-12-15 | 大连海事大学 | Middleware system for sharing data in mobile phone equipment and working method |
US20170052168A1 (en) * | 2015-08-20 | 2017-02-23 | Ofi Testing Equipment, Inc. | Multi-Purpose Tube for Oil Well Cement Testing |
CN108513658A (en) * | 2016-12-30 | 2018-09-07 | 华为技术有限公司 | A kind of transaction methods and device |
CN109067863A (en) * | 2018-07-25 | 2018-12-21 | 上海点融信息科技有限责任公司 | For managing the method, apparatus and storage medium of the node identification of block chain link point |
US20200210170A1 (en) * | 2018-12-27 | 2020-07-02 | Hcl America Inc | Resolving potential merge conflicts by utilizing a distributed blockchain framework |
CN110276689A (en) * | 2019-06-19 | 2019-09-24 | 辽宁大学 | Intelligent contract implementation method based on dynamic decision |
CN110688377A (en) * | 2019-08-30 | 2020-01-14 | 阿里巴巴集团控股有限公司 | Method and device for updating state Merck tree |
CN111294234A (en) * | 2020-01-17 | 2020-06-16 | 麦科思(苏州)数据科技有限公司 | Parallel block chain fragmentation method based on intelligent contract optimization model |
CN111683043A (en) * | 2020-04-26 | 2020-09-18 | 华东师范大学 | Intelligent contract concurrent execution method facing alliance chain and based on trusted execution environment |
CN112579291A (en) * | 2020-12-22 | 2021-03-30 | 北京航空航天大学 | StateDB-based intelligent contract parallel operation system and parallel operation method |
Non-Patent Citations (1)
Title |
---|
郑力: ""面向数据共享的智能合约及其管理技术研究"", 《中国优秀博硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356941A (en) * | 2021-12-22 | 2022-04-15 | 北京泛融科技有限公司 | Transaction execution method and device based on address preprocessing and electronic equipment |
Also Published As
Publication number | Publication date |
---|---|
CN113434522B (en) | 2023-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7941804B1 (en) | Allocating resources among tiered partitions of different types | |
CN105930280B (en) | A kind of efficient page organization and management method towards Nonvolatile memory | |
US7899799B2 (en) | Transaction processing system of database using multi-operation processing providing concurrency control of transactions | |
CN108564470B (en) | Transaction distribution method for parallel building blocks in block chain | |
US9424331B2 (en) | Partitioning sorted data sets | |
USRE42664E1 (en) | Method and apparatus for implementing parallel operations in a database management system | |
CN113205417B (en) | Alliance chain oriented transaction parallel processing method and system | |
US6230151B1 (en) | Parallel classification for data mining in a shared-memory multiprocessor system | |
JP6376865B2 (en) | Computer-implemented method, storage medium, and computer system for parallel tree-based prediction | |
US8239343B2 (en) | Database reorganization technique | |
CN105550225B (en) | Index structuring method, querying method and device | |
US20070143759A1 (en) | Scheduling and partitioning tasks via architecture-aware feedback information | |
CN101739281A (en) | Infrastructure for parallel programming of clusters of machines | |
CN103765381B (en) | Parallel work-flow to B+ tree | |
CN102968496A (en) | Parallel sequencing method based on task derivation and double buffering mechanism | |
CN111736964A (en) | Transaction processing method and device, computer equipment and storage medium | |
KR102247249B1 (en) | A computer program for asynchronous data processing in a database management system | |
US20170083286A1 (en) | Parallel merge sorting | |
CN113434522A (en) | Parallel updating method and updating system on state tree facing alliance chain | |
CN102207935A (en) | Method and system for establishing index | |
CN103810223A (en) | Data grouping-based memory data organization query method | |
CN108596824A (en) | A kind of method and system optimizing rich metadata management based on GPU | |
CN113342897A (en) | Data synchronization method and device | |
CN109033301A (en) | A kind of db transaction execution method based on graphics processor | |
CN110163791B (en) | GPU processing method and device of data computation flow graph |
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 |