CN113342888B - Method and system for longitudinally expanding super account book Fabric - Google Patents

Method and system for longitudinally expanding super account book Fabric Download PDF

Info

Publication number
CN113342888B
CN113342888B CN202110546241.6A CN202110546241A CN113342888B CN 113342888 B CN113342888 B CN 113342888B CN 202110546241 A CN202110546241 A CN 202110546241A CN 113342888 B CN113342888 B CN 113342888B
Authority
CN
China
Prior art keywords
chain
sub
transaction
chains
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.)
Active
Application number
CN202110546241.6A
Other languages
Chinese (zh)
Other versions
CN113342888A (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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN202110546241.6A priority Critical patent/CN113342888B/en
Publication of CN113342888A publication Critical patent/CN113342888A/en
Application granted granted Critical
Publication of CN113342888B publication Critical patent/CN113342888B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/282Hierarchical databases, e.g. IMS, LDAP data stores or Lotus Notes

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention provides a method and a system for vertically expanding a super ledger Fabric based on a super ledger horizontal expansion mechanism. The method comprises the following steps: step 1, adding a new node into a super account block chain, taking the new node as a parent chain, judging whether the number of nodes of the parent chain is greater than a first threshold value, if so, judging whether the parent chain has sub chains, if so, executing step 2, otherwise, newly building two sub chains, and uniformly adding nodes in the current parent chain into the two sub chains; and 2, judging whether a sub chain with the node number not exceeding a preset threshold exists in the parent chain, if so, adding the new node into the sub chain with the node number lower than the threshold, otherwise, judging whether the sub chain number reaches a preset threshold of the system, if so, randomly adding the new node into the sub chain or adding the new node into the sub chain with the minimum node number, taking the sub chain added into the new node as the parent chain, restarting the splitting check, and otherwise, newly building a sub chain for the new node to add.

Description

Method and system for longitudinally expanding super account book Fabric
Technical Field
The invention relates to the technical field of block chains, which can be directly applied to the expandability improvement and optimization of a super-account block chain platform.
Background
The popularity of the licensed blockchain platform has increased significantly in recent years, and a hyper-bill blockchain (hyper Fabric) is a representative one of the licensed blockchain platforms, and has received extensive attention from both academic and industrial fields. The super ledger block chain node refers to a functional unit participating in related services of super ledger transactions, for example: consensus nodes, endorsement nodes, commit nodes, etc. A node may be a physical server, virtual machine or container, etc. In general, a node corresponds to a service unit that has a certain function and can operate independently on a block chain.
Similar to other block chain platforms, the super book also faces the problem of expandability, and the application prospect is greatly limited. Therefore, a lot of research disputes develop deep analysis around the expandability of the super ledger so as to improve the service performance of the block chain of the super ledger.
The research method for the block chain expandability mainly comprises four types: first, a block chain parameter reconciliation technique; secondly, a chain expansion technology based on a fragmentation technology; thirdly, a chain down expansion technology based on a channel technology; fourth, block chaining and protocol design. Currently, the related research on extensibility around the super ledger mainly focuses on parameter reconciliation, extensibility research based on channel technology, and protocol design and analysis. For example: the influence on expandability is analyzed by improving contract parameters, the number of channels, the number of nodes and the like, and the influence on system transaction delay and throughput is analyzed by the size of a debugging block and endorsement strategy. Or analyzing links such as the endorsement process of the endorsement node of the super account book, the transaction verification of the submission node and the like, and positioning key factors influencing the performance. The expandability research based on the channel technology is the core characteristic of the super account book, the parallel service capability of the super account book is continuously improved by transversely expanding a new chain, and the expandability of the system is improved.
The existence of an upper bound on the parameter reconciliation approach may limit the scalability level on the one hand and may trigger an over-centralisation crisis on the other hand. For example: the high-computation-power nodes always occupy the block monopoly position, so that the condition that the high-computation-power nodes are used as the core is formed, and the fairness is not facilitated. The research related to the block chain protocol mainly develops analysis and optimization around a consensus mechanism and a transaction flow, and the condition of restricting the extensible level also exists. The channel technology-based expandability method allows the super ledger to continuously improve the parallel service capability of the system by transversely adding new chains. Theoretically, under the condition of not considering software and hardware limitations, the super ledger can realize infinite lateral expansion capacity through a channel technology.
The super account book is based on a transverse expansion mechanism of a channel technology, the expandability of the system is improved mainly by a method of transversely expanding a new chain, and the application requirements are flexibly adapted. Eventually, a flat multi-stranded structure will be formed. On one hand, the flat multi-chain structure is not adaptive to a multi-level management structure and is not easy to manage; on the other hand, node resource waste exists.
Disclosure of Invention
The invention aims to solve the problem of resource waste caused by the fact that a flat multi-chain structure formed by the existing super account book transverse expansion technology is difficult to adapt to a level management network expected by a user and a transverse expansion mechanism, and provides a super account book longitudinal expansion method which is applied to a super account book block chain system. The method comprises the following two key technical points:
key point 1, the vertical extension mechanism of the super account book; the technical effect is that on one hand, a hierarchical multi-chain structure which is flexibly adaptive to the multi-level management needs of the application can be formed; on the other hand, block link point resources can be effectively saved, and higher TPS is provided by using limited resources;
the key point 2 is a super ledger transaction process based on a longitudinal extension mechanism; the improved transaction process has the advantages that longitudinal expansion can be effectively supported, a master chain is formed to be responsible for supervision, and a sub-chain concurrently supports a hierarchical management structure of transaction service.
Specifically, aiming at the defects of the prior art, the invention provides a method for vertically expanding a hyper account book Fabric, which comprises the following steps:
step 1, adding a super account block chain into a new node, taking the super account block chain as a parent chain, and starting parent chain splitting inspection by executing step 2;
step 2, judging whether the number of the nodes of the parent chain is larger than a first threshold value, if so, executing step 3, and if not, ending;
step 3, judging whether the parent chain has child chains, if so, executing step 4, otherwise, newly building two child chains, and uniformly adding nodes in the current parent chain into the two child chains;
step 4, judging whether a sub chain with the number of nodes not exceeding a preset threshold exists in the parent chain, if so, adding the new node into the sub chain with the number of nodes lower than the threshold, and if not, executing step 5;
and 5, judging whether the number of the sub chains reaches a preset threshold value of the system, if so, adding the new node into the sub chains randomly or adding the new node into the sub chain with the minimum number of nodes, taking the sub chain added into the new node as a parent chain, returning to the step 2 to restart the splitting check, and otherwise, newly building a sub chain for the new node to add.
The method for vertically expanding the hyper book Fabric comprises the following steps of:
and whether the node number of the parent chain is divided by the first threshold value is larger than or equal to the sub-chain number or not, or the TPS of the transaction chain is larger than the preset transaction chain single-chain TPS upper limit.
The method for vertically expanding the hyper book Fabric is characterized in that the child chain is a tree-shaped split chain or a star-shaped split chain of a parent chain.
The method for vertically expanding the super account book Fabric comprises the following steps that a process that a node in a parent chain joins two child chains comprises:
sending splitting broadcast notification to all nodes in a mother link channel, initiating transaction with a mother link host node after the nodes receive the notification, informing the added sub-link information of the nodes added with the sub-link, informing the host node of the fact that the nodes not added with the sub-link agree to split, allocating the sub-link by the host node according to the node state and the sub-link condition, informing the allocation results of the other nodes by the host node, and adding the sub-link to the nodes not added with the sub-link according to the allocation results.
According to the method for longitudinally expanding the super account book Fabric, after two sub-chains are uniformly added to a node in a parent chain, the parent chain is changed from a transaction chain to a supervision chain, and the sub-chains are used as the transaction chain to be responsible for transaction contents;
the transaction of all nodes in the parent chain is executed by child chains serving as transaction chains (some parent chains have multiple levels of child chains, only leaf child chains are transaction chains, and other non-leaf child chains do not execute the transaction).
The invention also provides a super account book Fabric longitudinal extensible system, which comprises:
the system comprises a module 1, a module 2 and a module C, wherein the module 1 is used for adding a new node into a super account block chain, taking the super account block chain as a parent chain and starting parent chain split check by calling the module 2;
a module 2, configured to determine whether the number of nodes in the parent chain is greater than a first threshold, if so, invoke the module 3, and otherwise, end;
the module 3 is used for judging whether the parent chain has the sub-chains or not, if so, the module 4 is called, otherwise, two sub-chains are newly established, and nodes in the current parent chain are uniformly added into the two sub-chains;
the module 4 is used for judging whether a sub-chain with the node number not exceeding a preset threshold exists in the parent chain, if yes, the new node is added into the sub-chain with the node number lower than the threshold, and if not, the module 5 is called;
and the module 5 is used for judging whether the number of the sub-chains reaches a preset threshold value of the system, if so, adding the new node into the sub-chain randomly or adding the new node into the sub-chain with the minimum number of nodes, taking the sub-chain added into the new node as a parent chain, calling the module 2 to restart the splitting check, and otherwise, establishing a new sub-chain for the new node to add.
The vertical extensible system of super account book Fabric, wherein the chain split triggering condition includes:
and dividing the number of the nodes of the parent chain by the number of the sub-chains or not, or judging whether the TPS of the transaction chain is greater than a preset transaction chain single-chain TPS upper limit or not.
The super book Fabric longitudinal extensible system is characterized in that the sub-chain is a tree-shaped split chain or a star-shaped split chain of a parent chain.
The vertical extensible system of super account book Fabric, wherein the process that two sub-chains are added to the node in the mother chain includes:
the splitting broadcast notification is sent to all nodes in the parent link channel, after receiving the notification, the nodes initiate transaction with the parent link host node, the nodes which have added the sub-chain inform the added sub-chain information, the nodes which do not add the sub-chain inform the host node of agreeing to split, the sub-chain is distributed by the host node according to the node state and the sub-chain condition, the host node informs the other nodes of the distribution result, and the nodes which do not add the sub-chain according to the distribution result.
The super account book Fabric longitudinal extensible system is characterized in that after two sub-chains are uniformly added to nodes in a master chain, the master chain is changed into a supervision chain from a transaction chain, and the sub-chains are used as the transaction chain to be responsible for transaction contents;
all node transactions in the master chain are executed by the sub-chains serving as transaction chains, after the transaction chains receive transaction requests, the transaction is submitted to a consensus mechanism according to a block generation mechanism of the super account book to generate identification blocks, and the consensus chains send the identification blocks to all the master chains with subordinate relations with the transaction chain sub-chains and the transaction chain sub-chains receiving the transaction requests.
According to the scheme, the invention has the advantages that:
compared with the existing transverse extensible mechanism of the super account book, the invention can form a hierarchical multi-chain structure flexibly adapting to the requirement of multi-level management, can effectively save block link point resources, and provides higher TPS by using limited resources. Firstly, based on a longitudinal extension mechanism, a single chain of a super account book and a split sub-chain of the super account book form an up-and-down management relationship. The expansion mechanism can be flexibly expanded into a multi-level management structure required by the application according to the application management requirement, so that the management is convenient; secondly, one of the single-chain longitudinal extension triggering conditions of the super account block chain is that the TPS of the chain reaches the bottleneck, and the longitudinal extension mechanism can flexibly control the number of the sub-chains to form a concurrent service mechanism consisting of the sub-chains. Meanwhile, in the process of longitudinally expanding a plurality of sub-chains by the original single chain in the longitudinal expansion mechanism, new node resources are not added, and all the members of the sub-chains come from the original single chain. Therefore, super account book node resources can be effectively saved. In addition, the original single chain reaching the bottleneck of the TPS forms a plurality of sub-chains through a longitudinal extension mechanism, and the number of nodes in the sub-chains is also reduced, so that the service performance of the single chain in the system can be effectively improved.
Drawings
FIG. 1 is a diagram of TPS trend of super account book single chain increasing with node number;
FIG. 2 shows TPS test results for different double strand combinations;
FIG. 3 is a schematic of a longitudinal expansion based on splitting;
FIG. 4 transaction changes after chain splitting;
FIG. 5 strand fragmentation type;
FIG. 6 is a flow chart of a parent strand split check;
FIG. 7 is a sub-chain expansion flow;
FIG. 8 shows a sub-chain splitting process based on TPS early warning;
FIG. 9 Daes-based transaction flow;
fig. 10 is a diagram of the logical relationship between a sub-chain and a parent chain of a transaction chain.
Detailed Description
When the inventor conducts an analysis research on the throughput performance of the super ledger book, the defect in the prior art is found to be caused by only considering the requirement of a decentralized structure of the system, and only considering multi-chain expansion through a transverse expansion mechanism. In fact, after years of development, researchers have put forward scalability dilemma in blockchains, namely: there is no way around the blockchain system to satisfy decentralization, scalability, and security simultaneously. The pursuit of decentralization in the blockchain field and the superior nature of blockchain security have limited the research on super ledger extensibility. Therefore, most of the existing super ledger extensibility research methods are based on the aspects of parameter tuning, protocol optimization and the like, and no research developed for a super ledger extensibility mechanism is seen yet.
First, when the inventor applies the super-book blockchain to serve applications, it is found that it is difficult for the flat multi-chain structure formed by the horizontal extension mechanism to form a hierarchical management network meeting the user's desire. The hierarchical structure and the step-by-step management are important characteristics of organization and management, and the management structure of the internet application embodied in the software also presents a hierarchical structure. Applications based on the super-ledger blockchain are difficult to effectively organize the hierarchical structure for adaptive application management based on the horizontal multi-chain structure, which brings certain inconvenience to application organization and control.
Secondly, the transversal expansion mechanism of the block chain of the super ledger can effectively improve the transaction amount per second (TPS) of the system. However, we find through experiments that the simple lateral expansion has a waste of certain block link point resources. Based on the same experimental environment, TPS of one chain of the hyper book is continuously decreased as the number of nodes in the chain increases, as shown in fig. 1. By the time the number of nodes in the chain reaches 10, the TPS has fallen to between 60-70. Based on this single chain of 10 nodes (HF (10)), a new chain of 5 nodes (HF (10 + 5)) is extended laterally, as shown in fig. 2, constituting two chains providing services in parallel. The TPS of the double-stranded HF (10 + 5) formed by the lateral expansion is raised to be between 90 and 100. Whereas if 10 nodes of a single chain (HF (10)) are split into two double chains (HF (5 + 5)) each containing 5 nodes, the TPS of HF (5 + 5) is lifted to 150-160. Clearly, the TPS behavior of HF (5 + 5) is similar to the single-chain TPS behavior of FIG. 1, which contains only 5 nodes. And HF (10 + 5) is promoted compared with the TPS of HF (10), mainly thanks to the TPS of the second new chain containing only 5 nodes. Even so, the TPS performance of HF (10 + 5) only performs similar to the single-chain TPS only containing 6 nodes in FIG. 1, and still has a larger distance compared to HF (5 + 5) and the single-chain TPS only containing 5 nodes in FIG. 1. Namely: HF (10 + 5) has a certain resource waste compared with HF (5 + 5). From the experiment, it can be found that when the single-chain TPS reaches the bottleneck, the new chain of the lateral expansion can bring about the promotion of the TPS, but a certain node resource is wasted.
The inventor finds that solving the defects can be achieved by a longitudinal extension method by analyzing the TPS change trend of the super account book single chain and analyzing the result of the transverse extension multi-chain. The invention provides a novel vertical extension mechanism based on the two problems of the horizontal extension mechanism of the super ledger. On one hand, a hierarchical multi-chain structure which is flexibly adapted to the multi-level management needs of the application can be formed; on the other hand, block link point resources can be effectively saved, and higher TPS can be provided by using limited resources.
In order to make the aforementioned features and advantages of the present invention more comprehensible, embodiments accompanied with figures are described in detail below.
Referring to biological cell Division, the invention provides a Chain Division-based adaptive elastic scalable Method (dae) for providing longitudinal scalability for a single Chain of a super ledger block Chain. One strand in dae represents one cell. Thus, the process of strand splitting in Daes into multiple strands is referred to as strand splitting. The strand before splitting is called the parent strand, and the new strand after splitting is called the daughter strand. As illustrated in fig. 3, a parent strand is split into two child strands.
The difference is that chain splitting of dae does not result in disappearance of the parent chain, and only a few sub-chains are added below the parent chain to form a logical hierarchy. The function of the chain can be changed due to the logic hierarchical structure, a plurality of sub-chains are generated after one single chain is split, and the sub-chains evolve into a parent chain. As shown in fig. 4, the parent chain degenerates into a supervisory node, and the child chain performs transaction transactions instead of the parent chain. Obviously, longitudinal elastic expandability can be achieved by strand splitting as long as the conditions of strand splitting and the manner of strand splitting are managed. The conditions for chain splitting include the number of nodes of the chain and the transaction throughput. Through experimental analysis of fig. 1, it is found that increasing the number of nodes in a given chain does not necessarily improve transaction throughput indefinitely. In addition, given a single chain of node numbers, there is also an upper limit on the amount of transactions. Therefore, assuming that the number of parent link nodes is N, the transaction link TPS is T, the current number of child chains is c, the maximum number of child chains allowable by the parent link is a second threshold, and an upper limit threshold (a first threshold) of the number of single link nodes is N and an upper limit threshold of the single link TPS is T (a third threshold). As shown in fig. 10, it should be noted that the number of nodes of a transaction chain sub-chain cannot exceed a certain number N, while the parent chain does not have such a requirement, and in the structure of the tree-shaped multi-level chain formed by splitting the parent chain, except for the identity determination of the tree root and the tree leaves, that is: the root of the tree is the mother chain, and the leaf of the tree is the child chain (also transaction chain). The other middle layer strands are daughter strands for the top and mother strands for the bottom. Whereas the first threshold only acts on the transaction chain child on the leaf.
When N > N, we can have the following strand-split triggering conditions: N/N is more than or equal to c or T is more than or equal to T. Obviously, the longitudinal expansion of the parent chain can be triggered when either condition is satisfied. Meanwhile, generally, when the number of nodes reaches a threshold value, the service capacity of the chain as a whole starts to decline. The T is more than or equal to T, which aims at the processing of the transaction chain subchain (tree leaf) in service if the traffic pressure is too large. And in this case it is likely that N < N, i.e.: the splitting caused by the first threshold value cannot be triggered, and whether the parent chain needs to be split into more child chains or not cannot be judged. There is a certain correlation between the first threshold and the second threshold, namely: the first threshold cannot be met, indicating that fragmentation is required. In the splitting, how to split, the number of the sub-chains is controlled by a second threshold.
From the structural point of view, the chain splitting can be further divided into a star splitting method and a tree splitting method, as shown in fig. 5. The tree splitting method is a splitting mode for a given number of sub chains, for example: the binary tree splits a chain, and the parent chain only has the ability to split into two child chains. The star-type splitting method refers to the capability of a parent chain to infinitely split a daughter chain, and the daughter chain is separated from the parent chain as long as the splitting is needed. Therefore, the star splitting method logically presents a two-level chain structure, and the tree splitting method presents a multi-level chain structure.
As shown in fig. 6, a split check is performed when a new node is added to the parent chain. The organization or company represented by the root parent chain is an entrance for adding a new node, and when the new node is added, splitting check is executed according to a chain splitting triggering condition to judge whether a child chain is added and the child chain which the new node needs to be added. The root parent chain is a parent chain where a tree-shaped root node or a star-shaped core node is located.
When the parent chain triggers the splitting condition and a child chain needs to be added, a child chain expansion flow shown in fig. 7 sends a splitting broadcast notification to all nodes in the parent chain channel. After receiving the notice, the node initiates a transaction with the master link master node and informs the master node of agreeing to split. The node that has joined the child chain then informs of the joined child chain information. And the master node allocates the sub-chains according to the node states and the sub-chain conditions. And finally, the master node informs the distribution result, the node receives the distribution result, and the node state is changed into non-added and distributed. When a node joins a child chain, state change is completed, i.e.: has been added.
Due to the fact that a system presetting mechanism ensures that the number of the nodes of the sub-chains does not exceed a preset threshold (a first threshold), the number of the sub-chains is increased continuously along with the increase of the number of the nodes of the parent chain. When the number of sub-chains reaches a system preset threshold (second threshold), for example: if the preset child chain threshold value of the binary tree split chain is 2, the child chain cannot be further expanded. The newly added node of the parent chain can only seek the existing sub-chain addition, and the sub-chain preset node number threshold is broken. At this time, the number N of nodes of the sub-chain is greater than N, and the split check is triggered. The child chain is converted into a parent chain, and the flow shown in fig. 6 is executed.
Split checking with respect to the above triggering. Since the number of nodes of the sub-chain of the transaction chain of the tree leaf cannot exceed N, but when no new node can go, one tree leaf (the sub-chain of the transaction chain) must be selected to join, which breaks the constraint relationship between the number of nodes in the tree leaf (the sub-chain of the transaction chain) and the first threshold, that is: is greater than N. At this time, the leaf (transaction chain sub-chain) of the tree grows a new branch downward (for example, 2 sub-chains are grown in a 2-way tree structure. The original tree leaf (transaction chain sub-chain) with the branch becomes the parent chain of the new transaction chain sub-chain, and the original tree leaf (transaction chain sub-chain) simultaneously becomes the supervisor of the new transaction chain sub-chain from the transaction chain. In summary, the split check is a complete process shown in fig. 6. Because, this child chain becomes the parent chain of the new transaction chain child chain.
In addition to chain split triggering based on the number of link points, TPS monitoring for sub-chain services is another way to trigger splitting. Through the TPS control to super account book multichain, in time master the service ability situation of subchain. When the current TPS of a sub-chain reaches a preset threshold, fragmentation is triggered. As shown in fig. 8, a subchain splitting process based on TPS warning. And after the subchain receives the early warning that the TPS reaches the upper limit, starting a splitting process. The sub-chain is automatically split into two sub-chains, new sub-chains are allocated to all nodes in the sub-chains, the sub-chains are upgraded into parent chains, and the node states are changed into allocated and non-added states. When all nodes join a new child chain, the state of all nodes in the atomic chain (now the parent chain) changes to join.
The invention designs a longitudinal extension mechanism for a super account book block chain platform, and after a master chain extends out of a sub chain, the master chain is changed from a transaction chain to a supervision chain. Namely: the parent chain no longer receives the transaction request, but the child chain is responsible for the transaction content. The transaction flow corresponding to the logical view of fig. 5 (b) is shown in fig. 9. All node transactions in the parent chain C1 are executed by the child chain (e.g., C1_ 1), and after receiving the transaction request, the child chain C1_1 submits the transaction to the consensus mechanism according to the block generation mechanism of the super book to generate a block B, and the consensus chain sends the block B to the parent chain C1 and C1. In this way, the sub-chain C1_1 constitutes a logically independent transaction area, and the parent chain C1 can supervise and record the transaction of the sub-chain. The block B is a data block which is generated by a block chain and has a certain format and is packaged, and the consensus node sends the packaged data to the node for receiving and storing the data block.
In the structure of the super account book, there are a class of functional nodes, called: and (5) identifying the nodes in common. The consensus node is a service unit which is responsible for receiving and processing transaction data, and a plurality of consensus nodes form a consensus chain. Therefore, the consensus chain will be responsible for generating the block B based on the transaction data and returning the block to the transaction chain. The transaction flow is as follows: the external user and the transaction chain form a transaction proposal, the transaction chain submits the transaction to the consensus chain in a proposal form through a specific transaction proposal data format, and the consensus chain receives proposal data sent by a plurality of transaction chains, processes and packs the proposal data into blocks and returns the blocks to each transaction chain.
The transaction chain is a sub-chain in the invention and is a sub-chain responsible for transaction service. The parent chain is arranged above the transaction chain sub-chain and is responsible for monitoring the transaction of the transaction chain sub-chain.
The transaction chain sub-chain is used for receiving and responding transaction requests of external users and sending the requests to the consensus chain in a proposal form; the consensus chain is responsible for packing the block into a format and returning the block to the transaction chain sub-chain, and the transaction chain sub-chain stores the block; the master chain supervises the behavior process of the transaction chain sub-chains, so that the master chain only supervises the sub-chains under control, but cannot manage the sub-chains out of the range of the master chain.
The following are system examples corresponding to the above method examples, and this embodiment can be implemented in cooperation with the above embodiments. The related technical details mentioned in the above embodiments are still valid in this embodiment, and are not described herein again in order to reduce repetition. Accordingly, the related technical details mentioned in the present embodiment can also be applied to the above embodiments.
The invention also provides a super book Fabric longitudinal extensible system, which comprises:
the module 1 is used for adding a new node into a super account block chain, taking the super account block chain as a parent chain, and starting parent chain split inspection by calling the module 2;
a module 2, configured to determine whether the number of nodes in the parent chain is greater than a first threshold, if so, invoke the module 3, and otherwise, end;
a module 3, configured to determine whether the parent chain has child chains, if yes, invoke a module 4, and if not, create two child chains, and uniformly add nodes in the current parent chain to the two child chains;
the module 4 is used for judging whether a sub-chain with the node number not exceeding a preset threshold exists in the parent chain, if yes, the new node is added into the sub-chain with the node number lower than the threshold, and if not, the module 5 is called;
and the module 5 is used for judging whether the number of the sub-chains reaches a preset threshold value of the system, if so, adding the new node into the sub-chain randomly or adding the new node into the sub-chain with the minimum number of nodes, taking the sub-chain added into the new node as a parent chain, calling the module 2 to restart the splitting check, and otherwise, establishing a new sub-chain for the new node to add.
The hyper book Fabric vertical extensible system, wherein the chain splitting triggering condition comprises:
and whether the node number of the parent chain is divided by the first threshold value is larger than or equal to the sub-chain number or not, or the TPS of the transaction chain is larger than the preset transaction chain single-chain TPS upper limit.
The super book Fabric longitudinal extensible system is characterized in that the sub-chain is a tree-shaped split chain or a star-shaped split chain of a parent chain.
The vertical extensible system of super account book Fabric, wherein the process that two sub-chains are added to the node in the mother chain includes:
sending splitting broadcast notification to all nodes in a mother link channel, initiating transaction with a mother link host node after the nodes receive the notification, informing the added sub-link information of the nodes added with the sub-link, informing the host node of the fact that the nodes not added with the sub-link agree to split, allocating the sub-link by the host node according to the node state and the sub-link condition, informing the allocation results of the other nodes by the host node, and adding the sub-link to the nodes not added with the sub-link according to the allocation results.
The super account book Fabric longitudinal extensible system is characterized in that after two sub-chains are uniformly added to nodes in a master chain, the master chain is changed into a supervision chain from a transaction chain, and the sub-chains are used as the transaction chain to be responsible for transaction contents;
all node transactions in the master chain are executed by the sub-chains serving as transaction chains, after the transaction chains receive transaction requests, the transaction is submitted to a consensus mechanism according to a block generation mechanism of the super account book to generate identification blocks, and the consensus chains send the identification blocks to all the master chains with subordinate relations with the transaction chain sub-chains and the transaction chain sub-chains receiving the transaction requests.

Claims (10)

1. A method for vertically expanding a hyper ledger Fabric, comprising:
step 1, adding a super account block chain into a new node, taking the super account block chain as a parent chain, and starting parent chain splitting inspection by executing step 2;
step 2, judging whether the number of the nodes of the parent chain is larger than a first threshold value, if so, executing step 3, and if not, ending;
step 3, judging whether the parent chain has the sub-chains or not, if so, executing step 4, otherwise, newly building two sub-chains, and uniformly adding nodes in the current parent chain into the two sub-chains;
step 4, judging whether a sub chain with the number of nodes not exceeding a preset threshold exists in the parent chain, if so, adding the new node into the sub chain with the number of nodes lower than the threshold, and if not, executing step 5;
and 5, judging whether the number of the sub chains reaches a preset threshold value of the system, if so, adding the new node into the sub chains randomly or adding the new node into the sub chain with the minimum number of nodes, taking the sub chain added into the new node as a parent chain, returning to the step 2 to restart the splitting check, and otherwise, newly building a sub chain for the new node to add.
2. The hyper book Fabric vertical scalable method of claim 1, wherein the chain split triggering condition comprises:
and dividing the number of the nodes of the parent chain by the number of the sub-chains or not, or judging whether the TPS of the transaction chain is greater than a preset transaction chain single-chain TPS upper limit or not.
3. The method of claim 1, wherein the child chain is a tree split chain or a star split chain of a parent chain.
4. The hyper book Fabric vertical extensible method of claim 1, wherein the process of adding two child chains to a node in a parent chain comprises:
sending splitting broadcast notification to all nodes in a mother link channel, initiating transaction with a mother link host node after the nodes receive the notification, informing the added sub-link information of the nodes added with the sub-link, informing the host node of the fact that the nodes not added with the sub-link agree to split, allocating the sub-link by the host node according to the node state and the sub-link condition, informing the allocation results of the other nodes by the host node, and adding the sub-link to the nodes not added with the sub-link according to the allocation results.
5. The hyper ledger Fabric longitudinal scalable method of claim 1, characterized in that, after two sub-chains are added uniformly to a node in a parent chain, the parent chain is changed from a transaction chain to a custody chain, and the sub-chain is responsible for transaction content as the transaction chain;
all node transactions in the parent chain are executed by the sub-chain serving as the transaction chain, after the transaction chain receives a transaction request, the transaction is submitted to the consensus mechanism according to the block generation mechanism of the super account book to generate an identification block, and the consensus chain sends the identification block to all the parent chains which are in an affiliation relationship with the transaction chain sub-chain and the transaction chain sub-chain which receives the transaction request.
6. A hyper ledger Fabric vertical scalable System, comprising:
the module 1 is used for adding a new node into a super account block chain, taking the super account block chain as a parent chain, and starting parent chain split inspection by calling the module 2;
a module 2, configured to determine whether the number of nodes in the parent chain is greater than a first threshold, if so, invoke the module 3, otherwise, end;
the module 3 is used for judging whether the parent chain has the sub-chains or not, if so, the module 4 is called, otherwise, two sub-chains are newly established, and nodes in the current parent chain are uniformly added into the two sub-chains;
the module 4 is used for judging whether a sub-chain with the node number not exceeding a preset threshold exists in the parent chain, if yes, the new node is added into the sub-chain with the node number lower than the threshold, and if not, the module 5 is called;
and the module 5 is used for judging whether the number of the sub-chains reaches a preset threshold value of the system, if so, adding the new node into the sub-chain randomly or adding the new node into the sub-chain with the minimum number of nodes, taking the sub-chain added into the new node as a parent chain, calling the module 2 to restart the splitting check, and otherwise, establishing a new sub-chain for the new node to add.
7. The hyper book Fabric vertical scalable system of claim 6, wherein the chain split triggering condition comprises:
and whether the node number of the parent chain is divided by the first threshold value is larger than or equal to the sub-chain number or not, or the TPS of the transaction chain is larger than the preset transaction chain single-chain TPS upper limit.
8. The hyper book Fabric vertical scalable system of claim 6, wherein the child chain is a tree split chain or a star split chain of a parent chain.
9. The hyper book Fabric vertical scalable system of claim 6, wherein the process of a node in a parent chain joining two child chains comprises:
sending splitting broadcast notification to all nodes in a mother link channel, initiating transaction with a mother link host node after the nodes receive the notification, informing the added sub-link information of the nodes added with the sub-link, informing the host node of the fact that the nodes not added with the sub-link agree to split, allocating the sub-link by the host node according to the node state and the sub-link condition, informing the allocation results of the other nodes by the host node, and adding the sub-link to the nodes not added with the sub-link according to the allocation results.
10. The hyper ledger Fabric vertical extensible system of claim 6, wherein after two child chains are added evenly to a node in a parent chain, the parent chain is changed from a transaction chain to a custody chain, the child chains are responsible for transaction content as the transaction chain;
all node transactions in the master chain are executed by the sub-chains serving as transaction chains, after the transaction chains receive transaction requests, the transaction is submitted to a consensus mechanism according to a block generation mechanism of the super account book to generate identification blocks, and the consensus chains send the identification blocks to all the master chains with subordinate relations with the transaction chain sub-chains and the transaction chain sub-chains receiving the transaction requests.
CN202110546241.6A 2021-05-19 2021-05-19 Method and system for longitudinally expanding super account book Fabric Active CN113342888B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110546241.6A CN113342888B (en) 2021-05-19 2021-05-19 Method and system for longitudinally expanding super account book Fabric

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110546241.6A CN113342888B (en) 2021-05-19 2021-05-19 Method and system for longitudinally expanding super account book Fabric

Publications (2)

Publication Number Publication Date
CN113342888A CN113342888A (en) 2021-09-03
CN113342888B true CN113342888B (en) 2022-12-06

Family

ID=77469532

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110546241.6A Active CN113342888B (en) 2021-05-19 2021-05-19 Method and system for longitudinally expanding super account book Fabric

Country Status (1)

Country Link
CN (1) CN113342888B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109286685A (en) * 2018-11-21 2019-01-29 北京蓝石环球区块链科技有限公司 The system architecture of the more subchains of main chain adduction row of subchain can be expanded
CN109493051A (en) * 2018-11-21 2019-03-19 北京蓝石环球区块链科技有限公司 The more subchain system architectures of main chain adduction row of account distribution and migration can dynamically be carried out
CN111061735A (en) * 2019-12-13 2020-04-24 上海优扬新媒信息技术有限公司 Capacity expansion method and device based on single-chain block chain

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11030161B2 (en) * 2018-03-28 2021-06-08 Exosite LLC Blockchain scaling method and blockchain scaling apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109286685A (en) * 2018-11-21 2019-01-29 北京蓝石环球区块链科技有限公司 The system architecture of the more subchains of main chain adduction row of subchain can be expanded
CN109493051A (en) * 2018-11-21 2019-03-19 北京蓝石环球区块链科技有限公司 The more subchain system architectures of main chain adduction row of account distribution and migration can dynamically be carried out
CN111061735A (en) * 2019-12-13 2020-04-24 上海优扬新媒信息技术有限公司 Capacity expansion method and device based on single-chain block chain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于Fabric超级账本的证券结算系统设计";孙伟;《科学技术创新》;20200701(第18期);第63-65页 *

Also Published As

Publication number Publication date
CN113342888A (en) 2021-09-03

Similar Documents

Publication Publication Date Title
CN110233802B (en) Method for constructing block chain structure with one main chain and multiple side chains
CN111144883B (en) Processing performance analysis method and device for blockchain network
US20110314019A1 (en) Parallel processing of continuous queries on data streams
CN110147407B (en) Data processing method and device and database management server
KR20120018178A (en) Swarm-based synchronization over a network of object stores
CN112671928B (en) Equipment centralized management architecture, load balancing method, electronic equipment and storage medium
CN107169009B (en) Data splitting method and device of distributed storage system
CN111723073B (en) Data storage processing method, device, processing system and storage medium
Vizier et al. Comchain: Bridging the gap between public and consortium blockchains
CN114553953A (en) Event pushing method for JAVA intelligent contract of block chain
CN113742135A (en) Data backup method and device and computer readable storage medium
CN102981912A (en) Method and system for resource distribution
Valvåg et al. Cogset: a high performance MapReduce engine
CN112650812A (en) Data fragment storage method and device, computer equipment and storage medium
CN113342888B (en) Method and system for longitudinally expanding super account book Fabric
CN110365547B (en) Method, device and equipment for creating tenant node of multi-level tenant system and computer readable storage medium
CN107168795B (en) Codon deviation factor model method based on CPU-GPU isomery combined type parallel computation frame
Yu et al. Sasm: Improving spark performance with adaptive skew mitigation
Prabhu et al. Performance enhancement of Hadoop MapReduce framework for analyzing BigData
US20200210231A1 (en) High availability cluster management of computing nodes
CN116112507A (en) Hierarchical blockchain-based multitasking asynchronous execution method and device
CN112751890B (en) Data transmission control method and device
CN113468200B (en) Method and device for expanding fragments in block chain system
CN113360576A (en) Power grid mass data real-time processing method and device based on Flink Streaming
CN111782363A (en) Method and flow system for supporting multi-service scene calling

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