CN110225110B - Method and device for splitting block chain group - Google Patents

Method and device for splitting block chain group Download PDF

Info

Publication number
CN110225110B
CN110225110B CN201910488990.0A CN201910488990A CN110225110B CN 110225110 B CN110225110 B CN 110225110B CN 201910488990 A CN201910488990 A CN 201910488990A CN 110225110 B CN110225110 B CN 110225110B
Authority
CN
China
Prior art keywords
group
intelligent
intelligent contracts
contracts
determining
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
CN201910488990.0A
Other languages
Chinese (zh)
Other versions
CN110225110A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910488990.0A priority Critical patent/CN110225110B/en
Publication of CN110225110A publication Critical patent/CN110225110A/en
Priority to PCT/CN2020/093997 priority patent/WO2020244514A1/en
Application granted granted Critical
Publication of CN110225110B publication Critical patent/CN110225110B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a method and a device for splitting a block chain group, which are suitable for a block chain system with at least one group, wherein each group has an independent consensus mechanism and records transaction data through respective intelligent contracts, and the method comprises the following steps: determining a splitting principle of a first group, determining intelligent contracts belonging to a second group and intelligent contracts belonging to a third group from all the intelligent contracts of the first group according to the splitting principle, packaging the intelligent contracts of the second group into creation blocks of the second group, packaging the intelligent contracts of the third group into creation blocks of the third group, and starting the second group and the third group. The technical scheme is used for solving the problem that the hardware resources of the nodes in the group cannot meet the normal operation of the group, and the hardware modification cost is reduced.

Description

Method and device for splitting block chain group
Technical Field
The embodiment of the invention relates to the field of financial technology (Fintech), in particular to a method and a device for splitting a block chain group.
Background
A block chain (BlockChain) is a chain consisting of a series of blocks, each block records the data of the block and the hash value of the previous block, and all blocks are successively formed into a chain in this way. The cryptography and the decentralized idea on which the blockchain is based make it impossible to tamper with the historical information on the chain.
With the development of computer technology, more and more technologies are applied in the financial field, the traditional financial industry is gradually changing to financial technology, and the block chain technology is not an exception, but higher requirements are also put forward on the block chain technology due to the requirements of the financial and payment industries on safety and real-time performance.
The block chain system comprises a plurality of groups, and each group carries out independent data storage and consensus process. The group is composed of a plurality of block chain link points, and each block chain node is a group of physical networks and is composed of a computer, block chain application software and a database. The normal operation of the group depends on the hardware resources of the nodes in the group.
When the hardware resources of the nodes in the group cannot meet the operation requirement of the group, in the prior art, the problems are solved by improving the hardware resources of each node, such as increasing the disk memory of the node, increasing the network bandwidth, improving the operation rate of the node processor, and the like.
Disclosure of Invention
The embodiment of the invention provides a method and a device for splitting a block chain group, which are used for solving the problem that the hardware resources of nodes in the group cannot meet the normal operation of the group and reducing the cost of hardware modification.
The method for splitting the blockchain group provided by the embodiment of the invention is suitable for a blockchain system with at least one group, wherein each group has an independent consensus mechanism and records transaction data through respective intelligent contracts.
The method comprises the following steps:
determining a splitting principle of a first group; the splitting rule is used for indicating that the first group is split into at least a second group and a third group, wherein the first group is any group in the block chain system; each node of the second group and each node of the third group are not identical and are both nodes of the first group;
according to the splitting principle, determining the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group;
packaging the intelligent contracts of the second group into creation blocks of the second group, and packaging the intelligent contracts of the third group into creation blocks of the third group;
starting the second group and the third group, wherein the second group and the third group are both groups in the block chain system.
In the above technical solution, the first group is divided into at least a second group and a third group, and the ledger is divided, so that the data volume of the ledger of the second group and the third group is less than that of the ledger of the first group, and the problem that the disk capacity of the group node limits the data volume of the ledger is solved; the number of the common nodes of the second group and the third group is less than that of the common nodes of the first group, and the network bandwidths required by the broadcasting of the nodes in the second group and the third group are both less than that of the broadcasting of the nodes in the first group, so that the problem that the network bandwidth in the group limits the network scale of the group is solved; the calculation amount of the nodes in the second group and the third group is smaller than that of the nodes in the first group, so that the problem that the calculation capability of the group nodes limits the calculation capability of the group is solved, the normal operation of the group is ensured, the hardware of the group nodes does not need to be modified, and the modification cost is reduced.
Optionally, before the determining the splitting principle of the first group, the method further includes:
acquiring the resource condition of each node in the first group; and judging whether the resource condition of each node meets the requirement of the first group operation, if not, determining to split the first group and stop the operation of the first group.
Optionally, the step of determining that the resource condition of each node does not meet the requirement of the first group operation includes:
determining that the network bandwidth of each node is less than the network bandwidth required by the node broadcast in the first group; or
Determining that the storage space of each node is smaller than the space required by the account book in the first group; or
And determining that the computing capacity of each node is smaller than the computing capacity required by each node in the first group to run the intelligent contract.
According to the technical scheme, when the resource condition of each node in the first group is determined not to meet the requirement of the operation of the first group, the first group is determined to be split, and the splitting principle can be determined according to different resource conditions so as to solve the problem that the resource condition does not meet the requirement of the operation of the first group, ensure the normal operation of the group, and the hardware of the nodes of the group is not required to be modified, so that the modification cost is reduced.
Optionally, each intelligent contract of the first group is an intelligent contract created by the first group according to the period to which the received transaction data belongs, and the received transaction data is recorded in the intelligent contract corresponding to the period to which the received transaction data belongs;
the determining, according to the splitting principle, the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group includes:
determining a splitting time point corresponding to the splitting principle;
determining intelligent contracts belonging to a time period not greater than the split time point from the intelligent contracts of the first group as the intelligent contracts of the second group;
and determining the intelligent contracts belonging to the time period longer than the splitting time point from the intelligent contracts of the first group as the intelligent contracts of the third group.
In the above technical scheme, the first group stores the transaction data into the intelligent contracts corresponding to the affiliated time periods, when the first group is split, the first group can be effectively split according to the intelligent contracts corresponding to the time periods, the intelligent contracts determined to belong to the time periods not greater than the split time points in the intelligent contracts of the first group are used as the intelligent contracts of the second group, the intelligent contracts determined to belong to the time periods less than the split time points in the intelligent contracts of the first group are used as the intelligent contracts of the third group, and therefore the problems that the account book data in the first group are too large, the disk capacity of the group nodes limits the account book data, and the network bandwidth in the group in the first group limits the network scale of the group can be solved. That is to say, when it is determined that the network bandwidth of each node is smaller than the network bandwidth required by the node broadcast in the first group, or when it is determined that the storage space of each node is smaller than the space required by the account book in the first group, the first group may be split according to the principle of splitting according to time, so as to effectively solve the above problem.
Optionally, each intelligent contract of the first group is that the first group generates a corresponding intelligent contract according to the received transaction data, and records the received transaction data in the corresponding intelligent contract;
the determining the splitting principle of the first group includes:
determining the splitting principle according to the service types corresponding to the intelligent contracts of the first group; the splitting principle is used for indicating that the split intelligent contracts of each group correspond to the same service type.
In the technical scheme, the first group generates a corresponding intelligent contract according to the received transaction data, records the transaction data in the corresponding intelligent contract, and when the first group is split, the splitting principle can be determined according to the service type of each intelligent contract, so that the first group is effectively split according to the service type, and the problems that the storage capacity of the accounting book data is limited by the disk capacity of the group nodes, the network scale of the group is limited by the network bandwidth in the group in the first group, and the operational capability of the group nodes in the first group limits the operational capability of the group can be solved. That is to say, when it is determined that the network bandwidth of each node is smaller than the network bandwidth required by the node broadcast in the first group, or it is determined that the storage space of each node is smaller than the space required by the account book in the first group, or it is determined that the computing capacity of each node is smaller than the computing capacity required by each node running the intelligent contract in the first group, the first group may be split according to the principle of splitting according to the service, thereby effectively solving the above problems.
Optionally, after the determining the smart contracts belonging to the second group and the smart contracts belonging to the third group from the smart contracts of the first group, the method further includes:
traversing each block of the first group to obtain first block information of the second group, wherein the first block information is intelligent and comprehensive in each block; the first block information is used for representing historical operations of the second group in intelligent approximation in blocks of the first group;
traversing each block of the first group to obtain second block information of the third group, wherein the second block information is intelligent and comprehensive in each block; the second block information is used to characterize historical operations of the third group that are intelligent in approximating the blocks of the first group;
the packaging the intelligent contracts of the second group into the founder blocks of the second group and the intelligent contracts of the third group into the founder blocks of the third group comprises:
packaging the second group of intelligent contracts and first block information of the second group of intelligent contracts into at least one first new block; and determining a creation block of the second group from the at least one first new block;
packing the third group of intelligent contracts and second block information of the third group of intelligent contracts into at least one second new block; and determining a created block of the third group from the at least one second new block.
In the above technical solution, first block information used for representing the historical operation of the intelligent contract of the second group in each block of the first group and second block information used for representing the historical operation of the intelligent contract of the third group in each block of the first group are respectively obtained, the intelligent contract of the second group and the first block information are packaged into at least one first new block, the intelligent contract of the third group and the second block information are packaged into at least one second new block, that is, the historical operation information of the intelligent contract in each group after splitting is packaged into each group together, so as to ensure the credibility of the first group splitting into each subgroup.
Correspondingly, the embodiment of the invention also provides a splitting device of the blockchain group, which is suitable for a blockchain system with at least one group, wherein each group has an independent consensus mechanism and records transaction data through respective intelligent contracts;
the device comprises:
the first processing unit is used for determining a splitting principle of the first group; the splitting rule is used for indicating that the first group is split into at least a second group and a third group, wherein the first group is any group in the block chain system; each node of the second group and each node of the third group are not identical and are both nodes of the first group;
the second processing unit is used for determining the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group according to the splitting principle; packaging the intelligent contracts of the second group into creation blocks of the second group, and packaging the intelligent contracts of the third group into creation blocks of the third group; starting the second group and the third group, wherein the second group and the third group are both groups in the block chain system.
Optionally, the apparatus further comprises: an acquisition unit;
the first processing unit is further configured to:
before the splitting principle of the first group is determined, controlling the obtaining unit to obtain the resource condition of each node in the first group; and judging whether the resource condition of each node meets the requirement of the first group operation, if not, determining to split the first group and stop the operation of the first group.
Optionally, the first processing unit is specifically configured to:
determining that the network bandwidth of each node is less than the network bandwidth required by the node broadcast in the first group; or
Determining that the storage space of each node is smaller than the space required by the account book in the first group; or
And determining that the computing capacity of each node is smaller than the computing capacity required by each node in the first group to run the intelligent contract.
Optionally, each intelligent contract of the first group is an intelligent contract created by the first group according to the period to which the received transaction data belongs, and the received transaction data is recorded in the intelligent contract corresponding to the period to which the received transaction data belongs;
the second processing unit is specifically configured to:
determining a splitting time point corresponding to the splitting principle;
determining intelligent contracts belonging to a time period not greater than the split time point from the intelligent contracts of the first group as the intelligent contracts of the second group;
and determining the intelligent contracts belonging to the time period longer than the splitting time point from the intelligent contracts of the first group as the intelligent contracts of the third group.
Optionally, each intelligent contract of the first group is that the first group generates a corresponding intelligent contract according to the received transaction data, and records the received transaction data in the corresponding intelligent contract;
the first processing unit is specifically configured to:
determining the splitting principle according to the service types corresponding to the intelligent contracts of the first group; the splitting principle is used for indicating that the split intelligent contracts of each group correspond to the same service type.
Optionally, the second processing unit is further configured to:
after the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group are determined from the intelligent contracts of the first group, controlling the obtaining unit to traverse the blocks of the first group to obtain first block information of the intelligent contracts belonging to the second group in the blocks; the first block information is used for representing historical operations of the second group in intelligent approximation in blocks of the first group;
controlling the obtaining unit to traverse each block of the first group to obtain second block information of the third group, wherein the second block information is intelligent and comprehensive in each block; the second block information is used to characterize historical operations of the third group that are intelligent in approximating the blocks of the first group;
the second processing unit is specifically configured to:
packaging the second group of intelligent contracts and first block information of the second group of intelligent contracts into at least one first new block; and determining a creation block of the second group from the at least one first new block;
packing the third group of intelligent contracts and second block information of the third group of intelligent contracts into at least one second new block; and determining a created block of the third group from the at least one second new block.
Correspondingly, an embodiment of the present invention further provides a computing device, including:
a memory for storing program instructions;
and the processor is used for calling the program instruction stored in the memory and executing the splitting method of the block chain group according to the obtained program.
Accordingly, an embodiment of the present invention further provides a computer-readable non-volatile storage medium, which includes computer-readable instructions, and when the computer reads and executes the computer-readable instructions, the computer is caused to execute the method for splitting the blockchain group.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic diagram of a system architecture according to an embodiment of the present invention;
fig. 2 is a schematic flowchart of a method for splitting a blockchain group according to an embodiment of the present invention;
fig. 3 is a schematic diagram of splitting a group according to time according to an embodiment of the present invention;
fig. 4 is a schematic diagram illustrating splitting a group according to service types according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a device for splitting a blockchain group according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the present invention will be described in further detail with reference to the accompanying drawings, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments. All other embodiments, which can be obtained by a person skilled in the art without making any creative effort based on the embodiments in the present invention, belong to the protection scope of the present invention.
Fig. 1 illustrates an example of the present invention to provide a blockchain system that includes at least one group, each group having an independent consensus mechanism and recording transaction data via respective smart contracts. Each group may include not only a plurality of nodes, but also one node may belong to a plurality of different groups, i.e., a plurality of groups may share one node. Each node is a combination of a set of physical network, a computer, block chain application software and a database, and the nodes are connected with each other through a Transmission Control Protocol/Internet Protocol (TCP/IP).
Key indicators for a group may include: network size of the group, ledger data capacity of the group, and computing power of the group. Each key index of the group determines the hardware resources required by the group during normal operation.
The key indicators of the group are explained as follows:
network size of group
The group can comprise a plurality of blockchain nodes, the blockchain nodes in the group are divided into common nodes and observation nodes, and the sum of the number of the two nodes is the number of the blockchain nodes in the group. The number of the consensus nodes and the interconnection relation of all the consensus nodes determine the network scale of the group.
The embodiment of the invention provides a computing mode of network scale of a group, and the group is assumed to comprise N consensus nodes and M observation nodes, wherein R connections (R > N-1) can be established among the N consensus nodes. The network size (Scale) of the group can be shown as formula (1).
S=N 2 ×R×(1/(R-N))+M…………(1)
Wherein S is the network scale of the group; n, M, R are all positive integers.
Account book data capacity of group
Independent account book data are stored in the group, each block chain link point belonging to the group can store a complete account book data, and the size of a disk space occupied by the account book is the data capacity of the account book of the group.
An embodiment of the present invention provides a method for calculating a data capacity of an account book of a group, where assuming that a number of users in the account book is n, and each user stores m pieces of account information, a data capacity (Storage) of the account book of the group may be as shown in formula (2).
s=n 1.5 ×m…………(2)
Wherein s is the book data capacity of the group; n and m are positive integers.
Computing power of three groups
Different groups can process different business logics, the business logics are mainly realized by intelligent contracts, and the operational capacity of the groups is related to the types and the transaction quantity of the intelligent contracts.
The embodiment of the invention provides a computing mode of the operational capability of a group, and the intelligent contract in the group is assumed to be a precompiled intelligent contract, wherein the number of the precompiled intelligent contracts is a 1 The code amount of the precompiled intelligent contract is b 1 The computation capability (thuut) of the group can be shown as equation (3).
T 1 =a 1 ×b 1 …………(3)
Wherein, T 1 Computing power for the group; a is 1 、b 1 Are all positive integers.
The embodiment of the present invention provides another calculation mode for computing the computing power of the group, and it is assumed that the intelligent contracts in the group are EVM (environmental Virtual Machine) intelligent contracts, and the number of the EVM intelligent contracts is a 2 Code amount of EVM Smart contract is b 2 Then the operation capability of the group can be as shown in equation (4).
Figure BDA0002086340820000101
Wherein, T 2 Computing power for the group; a is 2 、b 2 Are all positive integers.
By combining the key indexes of the group, when the group runs, if the hardware resources of the nodes in the group are insufficient, the group cannot run normally, or the group cannot achieve the expected running effect in the running process. According to the key indexes of the group, the hardware resource indexes of the nodes which can meet the normal operation of the group are provided below.
One, minimum network bandwidth required by group
The nodes in the group need to perform transaction broadcast or block broadcast, each node needs network bandwidth in the broadcast, and the network bandwidth required by each node broadcast is the minimum network bandwidth required by the group. According to the method for calculating the network size of the group, if the network size of the group is S, the minimum network Bandwidth (Bandwidth) required by the group can be as shown in formula (5).
B=S×100Kbits…………(5)
Where B is the minimum network bandwidth required by the group.
For example, if there are 4 common nodes of blockchain and 0 blockchain observation nodes in the group, the minimum network bandwidth required for the group can be calculated to be 4.8Mbits according to equation (5).
Second, minimum disk capacity required by the group
According to the method for calculating the ledger data Capacity of the group, assuming that the ledger data Capacity is s, the minimum disk Capacity (Capacity) required by the group can be shown as formula (6).
C=s×100Kbyte…………(6)
Where C is the minimum disk capacity required for the group.
For example, if there are 1000 thousands of users in a group, each user has 100 pieces of account information, and the minimum disk capacity required by the group is 93G according to formula (6).
Third, minimum node computation capability required by group
According to the method for calculating the computing power of the group, if the computing power of the group is T, the core number of the processors of the nodes of the group is c, and the dominant frequency is f, the required computing power (c × f) of the minimum node can be as shown in formula (7).
Figure BDA0002086340820000111
It should be noted that, the above exemplary calculation method provides the key indexes in the group, such as the network scale of the group, the book data capacity of the group, and the calculation capability of the group, and correspondingly provides the calculation method of the minimum network bandwidth, the minimum disk capacity, and the minimum node calculation capability required by the normal operation of the group, but in the present invention, other parameters or calculation methods may also be adopted to obtain the key indexes and the hardware resource requirements in the group.
Based on the minimum network bandwidth, the minimum disk capacity and the minimum node computing capacity required by the group operation, the resource condition of each node in the current group can be obtained, whether the requirement of the group operation is met or not is judged according to the resource condition of each node, and if the requirement is not met, the group is determined to be required to be split and the group operation is stopped. For convenience of description, the group may be defined as a first group, which is any one of the groups in the blockchain system.
Specifically, the resource conditions of each node that do not satisfy the requirements of the first group operation mainly include:
determining that the network bandwidth of each node is smaller than the network bandwidth required by the node broadcasting in the group;
or determining that the storage space of each node is smaller than the space required by the account book in the group;
or determining that the computing capacity of each node is smaller than that required by each node in the group to run the intelligent contract.
Furthermore, when it is determined that the resource condition of each node does not meet the requirement of group operation, a corresponding solution is required to be taken to realize normal operation of the group. Aiming at the three situations, the normal operation of the group can be realized in a mode of splitting the group. Specifically, when it is determined that the network bandwidth of each node is smaller than the network bandwidth required by the node broadcast in the first group, the first group with a larger number of common nodes may be split into a plurality of subgroups with a smaller number of common nodes; when the storage space of each node is smaller than the space required by the account book in the first group, the first group with larger data capacity of the account book is divided into a plurality of sub-groups with smaller data capacity of the account book, so that the data capacity of the account book can be reduced; a first group with higher computing power requirement is divided into a plurality of subgroups with low computing power requirement, so that the computing power requirement can be reduced.
Based on the above description, as shown in fig. 2, the present invention exemplarily illustrates a flow of a method for splitting a blockchain group, which can be performed by a splitting apparatus of a blockchain group.
The process specifically comprises the following steps:
step 201, determining a splitting principle of the first group.
Step 202, according to the splitting principle, determining the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group.
Step 203, packaging the intelligent contracts of the second group into creation blocks of the second group, and packaging the intelligent contracts of the third group into creation blocks of the third group.
Step 204, starting the second group and the third group, wherein the second group and the third group are both groups in the block chain system.
In step 201, a first group is any group in a blockchain system, a splitting rule of the first group is determined, the first group is split into a second group and a third group according to the splitting rule, wherein, the nodes in the second and third groups are not identical and belong to the first group, for example, there are node 1, node 2, … … node 100 in the first group, according to the splitting principle, node 1, node 2, … …, node 50, node 51, … …, node 60 may be determined as nodes in the second group, and determining node 50, node 51, … …, node 60, node 61, … …, node 100 as nodes in a third group, in this example, node 50, node 51, … …, and node 60 are nodes in both the second and third groups, and are nodes in the first group.
In the embodiment of the present invention, different types of intelligent contracts may be created for different types of the first group, and may be created according to a time period or a service type.
First, create intelligent contract according to time interval
Establishing an intelligent contract corresponding to each time interval for each time interval, wherein optionally, the first group may establish the intelligent contract of the time interval according to the time interval to which the received transaction data belongs after receiving the transaction data; of course, the first group may also create intelligent contracts in different time periods in advance, for example, 30 intelligent contracts are preset, and the intelligent contracts correspond to 30 days, and are used for recording the transaction data of the first group in the intelligent contracts corresponding to the time periods to which the first group belongs after the first group receives the transaction data.
For example, the first group is an account checking system, after receiving an account data, the first group records a service flow number field in the account data, the service flow number field has a time date when the account data occurs, and the first group may determine to store the account data in the intelligent contract corresponding to the time period according to the time date of the account data, for example, receive an account data a with an account date of 2019, 5 and 25, create the intelligent contract if no intelligent contract corresponding to the date exists in the current first group, name the intelligent contract by the creation time, store the account data a in the intelligent contract, and directly store the account data B in the intelligent contract if an account data B with an account date of 2019, 5 and 25 is received.
Creating intelligent contract according to service type
The first group may generate a corresponding intelligent contract according to the received transaction data after receiving the transaction data, and record the received transaction data in the corresponding intelligent contract, specifically, the first group may create an intelligent contract corresponding to the business type of the transaction data according to the business type to which the transaction data belongs, for example, the first group is a verification system for storing an evidence, and each time the first group receives an evidence, the first group creates an intelligent contract corresponding to the business type according to the business type to which the evidence belongs, for example, if the evidence received by the first group is an evidence of an economic case, the first group creates an intelligent contract corresponding to the economic case for storing the evidence of the economic case; if the evidence received by the first group is evidence of a criminal case, the first group creates an intelligent contract corresponding to the criminal case and is used for storing the evidence of the criminal case.
Correspondingly, the splitting principle can be determined according to different types of created intelligent contracts. When the intelligent contracts in the first group are created according to time intervals, determining the splitting principle as splitting according to time; and when the intelligent contract in the first group is created according to the service type, determining the splitting principle as splitting according to the service type.
After determining the splitting principle of the first group, that is, after step 201, the first group is split into at least a second group and a third group according to the splitting principle, and for convenience of description, the splitting of the first group into the second group and the third group is taken as an example to be described below.
The invention provides a realizable mode which is suitable for intelligent contracts created according to time periods and determined splitting principles split according to time. The first group is divided into a second group and a third group, specifically, a dividing time point corresponding to the dividing principle may be determined first, an intelligent contract whose time period is not greater than the dividing time point is determined from each intelligent contract of the first group as an intelligent contract of the second group, and an intelligent contract whose time period is greater than the dividing time point is determined from each intelligent contract of the first group as an intelligent contract of the third group.
For example, the first group is divided into the second group and the third group according to the dividing time point, and the dividing time point is determined first, where the dividing time point may be set by a worker according to experience, or determined by the first group according to a preset rule according to a condition of data stored in each current node. And determining the intelligent contracts corresponding to the splitting time points as splitting intelligent contracts, wherein the creating time of the splitting intelligent contracts can be less than or equal to the splitting time points, determining the splitting intelligent contracts and the intelligent contracts before the splitting intelligent contracts as the intelligent contracts of the second group, and determining the intelligent contracts after the splitting intelligent contracts as the intelligent contracts of the third group. As shown in fig. 3, intelligent contracts are created in the first group every day, it is determined that the corresponding time point of the split intelligent contracts is 2018 year 1 month 1 day, that is, the intelligent contracts created 2018 year 1 month 1 day are used as split intelligent contracts, of course, it may also be an intelligent contract created before 2018 year 1 month 1 day and named as "2018 year 1 month 1 day", the intelligent contracts before the split intelligent contracts and the split intelligent contracts are determined as the intelligent contracts of the second group, and the intelligent contracts after the split intelligent contracts are determined as the intelligent contracts of the third group.
In a specific implementation, taking a bank reconciliation system in the bank field as an example, if the disk capacity of a node in a first group cannot satisfy the data capacity of an account book in the first group, a group with a large data capacity of the account book needs to be split into a plurality of groups with a small data capacity of the account book, if the current first group includes 100 nodes, 10000 pieces of data of the bank reconciliation system are stored on each node, and in order to ensure that the disk capacity of a node satisfies the data capacity of the account book, 2 nodes can be determined from the first group to form a second group, the second group is used for storing 8000 pieces of data in an intelligent contract with a period of time not greater than a split time point, and then the remaining 98 nodes form a third group, and the third group is used for storing 2000 pieces of data in the intelligent contract with a period of time less than the split time point.
In the embodiment of the present invention, obtaining the splitting time point is equivalent to determining a specific time point to be split, according to the splitting time point, performing binary search on the whole block chain of the first group, searching for the nearest intelligent contract smaller than the splitting time point, and using the searched intelligent contract as a split intelligent contract, where the flow of binary search is as in steps 301 to 304.
Step 301, obtaining a search interval. The first determined search interval is all blocks in a block chain of the first group, a block with a block height of a middle value is determined from all the blocks, the block with the block height of the middle value is determined as a current block, and all transactions for creating the intelligent contract are searched from the current block.
Step 302, if the intelligent contract meeting the conditions is found in the current block, ending the process and returning to the intelligent contract; if no eligible smart contract is found, either step 303 or step 304 is performed.
Step 303, if the split time point is greater than the date of the intelligent contract with the largest creation date in the current block, resetting the search interval, setting the starting position of the search interval as the current block, and setting the ending position of the search interval as the ending block of the block chain of the first group.
Step 304, if the splitting time point is less than the date of the intelligent contract with the minimum creation date in the current block, resetting the search interval, setting the starting position of the search interval as the starting block of the block chain of the first group, and setting the ending position of the search interval as the current block.
And repeating the steps 301 to 304 until the intelligent contract meeting the requirement is found.
In the above embodiment, for convenience of description, the first group is divided into two subgroups, that is, the second group and the third group, and of course, the first group may also be divided into a plurality of subgroups, K division time points may be set, and the first group is divided into K +1 subgroups, where K is greater than 1. The method can also set 1 splitting time point, after splitting the first group into the second group and the third group, set 1 splitting time point for the second group, split the second group into the fourth group and the fifth group, set 1 splitting time point for the third group, and split the third group into the sixth group and the seventh group.
In addition, although the foregoing embodiments provide that the data in the intelligent contract in the period before the splitting time point is grouped into the second group, and the data in the intelligent contract in the period after the splitting time point is grouped into the third group, the present invention is also applicable to the data in the intelligent contract in the period before the splitting time point is grouped into the second group, and the data in the intelligent contract in the period after the splitting time point is grouped into the third group, that is, any manner of splitting according to the period is within the protection scope of the present invention.
The invention provides another realizable mode which is suitable for intelligent contracts created according to service types and determined splitting principles split according to the service types. The first group is divided into a second group and a third group, specifically, the service type corresponding to each intelligent contract of the first group may be determined first, for example, 30 intelligent contracts are in the first group, wherein, 10 correspond to the first service type, 20 correspond to the second service type, then it can further determine that there are two kinds of intelligent contracts of service type in the first group, the two kinds of service type are the first service type and the second service type, then according to the two kinds of service type determined, determine the splitting principle, the splitting principle is used to indicate that the split intelligent contracts of each group correspond to the same service type, that is, the first group is split into a second group and a third group, specifically, data belonging to the first service type in the first group is stored in the second group, and data belonging to the second service type in the first group is stored in the third group.
As shown in fig. 4, if the service types corresponding to the intelligent contracts stored in the first group include an economic case type and a criminal case type, the first group may be divided into a second group corresponding to the intelligent contract of the economic case type and a third group corresponding to the intelligent contract of the criminal case type according to the two service types.
In the above embodiment, the first group is split into the second group and the third group according to two service types corresponding to the intelligent contract in the first group, and similarly, the first group may be split into subgroups corresponding to each service type according to a plurality of service types corresponding to the intelligent contract in the first group, or in other words, the service types corresponding to the intelligent contract in each subgroup after the first group is split are the same.
In addition, in some scenarios, when the first group is split according to the service type, it can be understood that the splitting principle is determined according to the association relationship between the intelligent contracts of the first group, the splitting principle is used to indicate that the intelligent contracts of each split group have no association relationship, for example, five types of intelligent contracts exist in the first group, wherein the first type and the second type of intelligent contracts belong to legal intelligent contracts, the third type and the fourth type of intelligent contracts belong to economic intelligent contracts, the fifth type of intelligent contracts belong to other intelligent contracts, the first group may be divided into three subgroups, and the first type intelligent contracts, the second type intelligent contracts, the third type intelligent contracts, the fourth type intelligent contracts, and the fifth type intelligent contracts are stored, where the intelligent contracts in each divided group have an association relationship, but the intelligent contracts between each group do not have an association relationship.
After the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group are determined from the intelligent contracts belonging to the first group, the determined intelligent contracts belonging to the second group can be packaged into creation blocks of the second group, and the determined intelligent contracts belonging to the third group can be packaged into creation blocks of the third group.
Further, in the above embodiment, the smart contracts in the first group are respectively packed into the creation blocks of the corresponding subgroups, but this process only stores the smart contracts in the first group, but the historical operations of the smart contracts in the blocks of the first group are lost, that is, to ensure the credibility of the first group being split into the subgroups in the above embodiment, the historical block information of the smart contracts in the first group and the smart contracts need to be stored into the subgroups together. In the implementation process, after the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group are determined from the intelligent contracts of the first group, first block information used for representing the historical operation of the intelligent contracts of the second group in the blocks of the first group and second block information used for representing the historical operation of the intelligent contracts of the third group in the blocks of the first group are respectively obtained, specifically, the blocks of the first group are traversed, the first block information of the intelligent contracts of the second group in the blocks is obtained, the blocks of the first group are traversed, and the second block information of the intelligent contracts of the third group in the blocks is obtained. After the history operation of each intelligent contract in each block of the first group is obtained, each intelligent contract and the history operation of each intelligent contract in each block of the first group can be packed into a corresponding subgroup together.
Optionally, the intelligent contracts of the second group and the first block information of the intelligent contracts of the second group are packaged into at least one first new block, and the creation block of the second group is determined from the at least one first new block; and packaging the intelligent contracts of the third group and the second block information of the intelligent contracts of the third group into at least one second new block, and determining the created block of the third group from the at least one second new block.
In this implementation process, after the first group is split into at least the second group and the third group, the split group can be restarted as a group in the block chain system, under certain specific conditions, a certain sub-group after the split is only used for storing account book data in the first group, new data does not need to be written in again, and then the work of nodes in the sub-group can be stopped, that is, the sub-group does not need to be started.
After splitting the first group, the embodiments of the present invention may further aggregate information after splitting, and specifically, may determine routing information according to nodes of each split sub-group, where the routing information is used to indicate that, after receiving the transaction request, the transaction request is routed to the corresponding split sub-group. For example, if the first group is divided into the second group and the third group, if an inquiry request is received, the inquiry request is used for inquiring some transaction data, and it is determined that the transaction data to be inquired is stored in the second group according to the routing information, the inquiry request may be routed to a node in the second group. For another example, if the first group is split into the second group corresponding to the economic case type and the third group corresponding to the criminal case type, and if an uplink request is received, and the transaction data included in the uplink request is a criminal case, it may be determined that the transaction data to be uplink stored in the third group corresponding to the criminal case type according to the routing information, and the uplink request may be routed to a node in the third group corresponding to the criminal case type.
To better explain the present invention, the following provides an embodiment under a specific scenario, and first, according to the operation condition of the first group, whether the resource condition of each node in the first group meets the requirement of normal operation of the first group may be determined, and different evaluation manners are adopted for different operation indexes. Specifically, using jnettop to check the outgoing flow and the incoming flow of the port used by each node in the current first group, and evaluating whether the network scale of the first group reaches the upper limit; using df to check the disk capacity of each node in the first group and evaluate whether the disk usage of the first group reaches an upper limit; and using top to check the utilization rate of the processor of each node in the first group and evaluate whether the operational capacity of the first group reaches an upper limit. If the upper limit is reached, the operation of the first group may be suspended, and key information of the first group, such as the block height in the current block chain of the first group, a list of common nodes, a network communication situation, a service classification of the intelligent contracts in the first group, the number of the intelligent contracts, whether there is a relationship between the intelligent contracts, and the total data capacity of the first group, is recorded. And designing a splitting strategy according to the organization mode of the intelligent contract, and splitting the first group.
When determining that the resource condition of each node in the first group does not meet the requirement of the first group for operation, the method can solve the problem by splitting the first group, and can also improve the network bandwidth of the outlets and/or inlets of all the block chain nodes, increase the network connection number of the nodes in the group, improve the disk capacity of the nodes in the group, reduce the number of accounts of each user, upgrade the processor of each node in the group, modify the intelligent contract logic and the like, so that the resource condition of each node in the first group meets the requirement of the first group for operation, and the normal operation of the first group is ensured.
In the above embodiment, the first group is divided into at least the second group and the third group, which not only can solve the problem that the data size of the account book in the first group is too large and the disk capacity of the group node limits the data size of the account book, but also can solve the problem that the network bandwidth in the first group limits the network scale of the group, and the explanation is that when 80 consensus nodes exist in the first group, any consensus node needs to broadcast the transaction information or the new area to other 79 consensus nodes, and after the division, for example, two groups are divided, and one group has 40 consensus nodes, any consensus node in one group broadcasts the transaction information or the new area to other 39 consensus nodes, thereby reducing the network bandwidth required by broadcasting in the block chain. Furthermore, the scheme can also solve the problem that the computing power of the group nodes limits the computing power of the group, for example, the first group needs to compute the transaction data of the economic case type and the criminal case type, if the first group is split according to the data type, the split two subgroups respectively compute the transaction data of the economic case type and the transaction data of the criminal case type, and the requirement of the groups on the computing power of each node is reduced.
Based on the same inventive concept, fig. 5 exemplarily shows a structure of a device for splitting a blockchain group, which can execute a flow of a method for splitting a blockchain group according to an embodiment of the present invention.
The device is suitable for a block chain system with at least one group, each group has an independent consensus mechanism and records transaction data through respective intelligent contracts; the device includes:
a first processing unit 501, configured to determine a splitting rule of a first group; the splitting rule is used for indicating that the first group is split into at least a second group and a third group, wherein the first group is any group in the block chain system; each node of the second group and each node of the third group are not identical and are both nodes of the first group;
a second processing unit 502, configured to determine, according to the splitting principle, an intelligent contract belonging to the second group and an intelligent contract belonging to the third group from the intelligent contracts of the first group; packaging the intelligent contracts of the second group into creation blocks of the second group, and packaging the intelligent contracts of the third group into creation blocks of the third group; starting the second group and the third group, the second group and the third group being both groups in the blockchain system.
Optionally, the apparatus further comprises: an acquisition unit 503;
the first processing unit 501 is further configured to:
before determining the splitting principle of the first group, controlling the obtaining unit 503 to obtain the resource condition of each node in the first group; and judging whether the resource condition of each node meets the requirement of the first group operation, if not, determining to split the first group and stop the operation of the first group.
Optionally, the first processing unit 501 is specifically configured to:
determining that the network bandwidth of each node is less than the network bandwidth required by the node broadcast in the first group; or
Determining that the storage space of each node is smaller than the space required by the account book in the first group; or
And determining that the computing capacity of each node is smaller than the computing capacity required by each node in the first group to run the intelligent contract.
Optionally, each intelligent contract of the first group is an intelligent contract created by the first group according to the affiliated period of the received transaction data, and the received transaction data is recorded in the intelligent contract corresponding to the affiliated period;
the second processing unit 502 is specifically configured to:
determining a splitting time point corresponding to the splitting principle;
determining intelligent contracts belonging to a time period not greater than the split time point from the intelligent contracts of the first group as the intelligent contracts of the second group;
and determining the intelligent contracts belonging to the time period longer than the splitting time point from the intelligent contracts of the first group as the intelligent contracts of the third group.
Optionally, each intelligent contract of the first group is that the first group generates a corresponding intelligent contract according to the received transaction data, and records the received transaction data in the corresponding intelligent contract;
the first processing unit 501 is specifically configured to:
determining the splitting principle according to the service types corresponding to the intelligent contracts of the first group; the splitting principle is used for indicating that the split intelligent contracts of each group correspond to the same service type.
Optionally, the second processing unit 502 is further configured to:
after determining the smart contracts belonging to the second group and the smart contracts belonging to the third group from the smart contracts of the first group, controlling the obtaining unit 503 to traverse the blocks of the first group, and obtaining first block information of the smart contracts belonging to the second group in the blocks; the first block information is used for representing historical operations of the second group in intelligent approximation in blocks of the first group;
controlling the obtaining unit 503 to traverse the blocks of the first group, and obtaining second block information of the intelligent approximation of the third group in the blocks; the second block information is used for representing historical operations of the third group in the blocks of the first group;
the second processing unit 502 is specifically configured to:
packaging the second group of intelligent contracts and first block information of the second group of intelligent contracts into at least one first new block; and determining a creation block of the second group from the at least one first new block;
packing the third group of intelligent contracts and second block information of the third group of intelligent contracts into at least one second new block; and determining a created block of the third group from the at least one second new block.
Based on the same inventive concept, an embodiment of the present invention further provides a computing device, including:
a memory for storing program instructions;
and the processor is used for calling the program instruction stored in the memory and executing the splitting method of the block chain group according to the obtained program.
Based on the same inventive concept, an embodiment of the present invention further provides a computer-readable non-volatile storage medium, which includes computer-readable instructions, and when the computer reads and executes the computer-readable instructions, the computer is caused to execute the splitting method of the blockchain group.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (10)

1. A method for splitting a blockchain group is characterized by being applicable to a blockchain system with at least one group, wherein each group has an independent consensus mechanism and records transaction data through respective intelligent contracts; the method comprises the following steps:
determining a splitting principle of a first group; the splitting rule is used for indicating that the first group is split into at least a second group and a third group, wherein the first group is any group in the block chain system; each node of the second group and each node of the third group are not identical and are both nodes of the first group; the splitting principle is determined based on a creating principle of the intelligent contracts in the first group, and the creating principle at least comprises creating according to a time interval and/or creating according to a service type;
according to the splitting principle, determining the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group;
packaging the intelligent contracts of the second group into creation blocks of the second group, and packaging the intelligent contracts of the third group into creation blocks of the third group;
starting the second group and the third group, wherein the second group and the third group are both groups in the block chain system;
before determining the splitting principle of the first group, the method further includes:
determining the computing capacity required by the nodes in the first group to run the intelligent contracts according to the number of the intelligent contracts deployed in the first group and the code amount of each intelligent contract; when the intelligent contract is precompiled, the required operational capability is the product of the number of the precompiled intelligent contracts and the code amount; when the intelligent contract is an EVM intelligent contract of an Ethernet virtual machine, the required operational capacity is the product of the 1.5 power and the number of the code quantity of the EVM intelligent contract;
determining the actual operational capability of the node according to the product of the core number of the processor of the node in the first group and the dominant frequency;
determining that the actual computing capacity of the nodes in the first group is less than the computing capacity required by the nodes in the first group to run the intelligent contract.
2. The method of claim 1, wherein each intelligent contract of the first group is an intelligent contract created by the first group according to the period to which the received transaction data belongs and records the received transaction data in the intelligent contract corresponding to the period to which the received transaction data belongs;
the determining, according to the splitting principle, the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group includes:
determining a splitting time point corresponding to the splitting principle;
determining intelligent contracts belonging to a time period not greater than the split time point from the intelligent contracts of the first group as the intelligent contracts of the second group;
and determining the intelligent contracts belonging to the time period greater than the splitting time point from the intelligent contracts of the first group as the intelligent contracts of the third group.
3. The method of claim 1, wherein each intelligent contract of the first group is a group that generates a corresponding intelligent contract from received transaction data and records the received transaction data in the corresponding intelligent contract;
the determining the splitting principle of the first group includes:
determining the splitting principle according to the service types corresponding to the intelligent contracts of the first group; the splitting principle is used for indicating that the split intelligent contracts of each group correspond to the same service type.
4. A method according to any one of claims 1 to 3, wherein after said determining from the smart contracts of the first group the smart contracts belonging to the second group and the smart contracts belonging to the third group, further comprising:
traversing each block of the first group to obtain first block information of the second group, wherein the first block information is intelligent and comprehensive in each block; the first block information is used for representing historical operations of the second group in intelligent approximation in blocks of the first group;
traversing each block of the first group to obtain second block information of the third group, wherein the second block information is intelligent and comprehensive in each block; the second block information is used to characterize historical operations of the third group that are intelligent in approximating the blocks of the first group;
the packing the intelligent contracts of the second group into the creation blocks of the second group and the packing the intelligent contracts of the third group into the creation blocks of the third group comprises:
packaging the second group of intelligent contracts and first block information of the second group of intelligent contracts into at least one first new block; and determining a creation block of the second group from the at least one first new block;
packing the third group of intelligent contracts and second block information of the third group of intelligent contracts into at least one second new block; and determining a founder block of the third group from the at least one second new block.
5. A device for splitting a blockchain group is characterized by being suitable for a blockchain system with at least one group, wherein each group has an independent consensus mechanism and records transaction data through respective intelligent contracts; the device comprises:
the first processing unit is used for determining a splitting principle of the first group; the splitting rule is used for indicating that the first group is split into at least a second group and a third group, and the first group is any one group in the block chain system; each node of the second group and each node of the third group are not identical and are both nodes of the first group; the splitting principle is determined based on a creating principle of the intelligent contracts in the first group, and the creating principle at least comprises creating according to a time interval and/or creating according to a service type;
the second processing unit is used for determining the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group from the intelligent contracts of the first group according to the splitting principle; packaging the intelligent contracts of the second group into creation blocks of the second group, and packaging the intelligent contracts of the third group into creation blocks of the third group; starting the second group and the third group, wherein the second group and the third group are both groups in the block chain system;
the first processing unit is further configured to:
before determining a splitting principle of a first group, determining the computing capacity required by the nodes in the first group to run intelligent contracts according to the number of intelligent contracts deployed in the first group and the code amount of each intelligent contract; when the intelligent contract is precompiled, the required operational capability is the product of the number of the precompiled intelligent contracts and the code amount; when the intelligent contract is an EVM intelligent contract of an Ethernet virtual machine, the required operational capacity is the product of the 1.5 power and the number of the code quantity of the EVM intelligent contract;
determining the actual operational capability of the node according to the product of the core number of the processor of the node in the first group and the dominant frequency;
determining that an actual computing capacity of the nodes within the first group is less than a computing capacity required by the nodes within the first group to run an intelligent contract.
6. The apparatus of claim 5, wherein each intelligent contract of the first group is an intelligent contract created by the first group according to the period to which the received transaction data belongs and records the received transaction data in the intelligent contract corresponding to the period to which the received transaction data belongs;
the second processing unit is specifically configured to:
determining a splitting time point corresponding to the splitting principle;
determining intelligent contracts belonging to a time period not greater than the split time point from the intelligent contracts of the first group as the intelligent contracts of the second group;
and determining the intelligent contracts belonging to the time period longer than the splitting time point from the intelligent contracts of the first group as the intelligent contracts of the third group.
7. The apparatus of claim 5, wherein each intelligent contract of the first group is a group that generates a corresponding intelligent contract from received transaction data and records the received transaction data in the corresponding intelligent contract;
the first processing unit is specifically configured to:
determining the splitting principle according to the service types corresponding to the intelligent contracts of the first group; the splitting principle is used for indicating that the split intelligent contracts of each group correspond to the same service type.
8. The apparatus of any of claims 5 to 7, wherein the second processing unit is further to:
after the intelligent contracts belonging to the second group and the intelligent contracts belonging to the third group are determined from the intelligent contracts of the first group, the control acquisition unit traverses all blocks of the first group to acquire first block information of the intelligent contracts belonging to the second group in all the blocks; the first block information is used for representing historical operations of the second group in intelligent approximation in blocks of the first group;
controlling the obtaining unit to traverse each block of the first group to obtain second block information of the third group, wherein the second block information is intelligent and comprehensive in each block; the second block information is used to characterize historical operations of the third group that are intelligent in approximating the blocks of the first group;
the second processing unit is specifically configured to:
packaging the second group of intelligent contracts and first block information of the second group of intelligent contracts into at least one first new block; and determining a creation block of the second group from the at least one first new block;
packing the third group of intelligent contracts and second block information of the third group of intelligent contracts into at least one second new block; and determining a created block of the third group from the at least one second new block.
9. A computing device, comprising:
a memory for storing program instructions;
a processor for calling program instructions stored in said memory to execute the method of any one of claims 1 to 4 in accordance with the obtained program.
10. A computer-readable non-transitory storage medium including computer-readable instructions which, when read and executed by a computer, cause the computer to perform the method of any one of claims 1 to 4.
CN201910488990.0A 2019-06-06 2019-06-06 Method and device for splitting block chain group Active CN110225110B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910488990.0A CN110225110B (en) 2019-06-06 2019-06-06 Method and device for splitting block chain group
PCT/CN2020/093997 WO2020244514A1 (en) 2019-06-06 2020-06-02 Method and apparatus for splitting blockchain group

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910488990.0A CN110225110B (en) 2019-06-06 2019-06-06 Method and device for splitting block chain group

Publications (2)

Publication Number Publication Date
CN110225110A CN110225110A (en) 2019-09-10
CN110225110B true CN110225110B (en) 2022-08-12

Family

ID=67819525

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910488990.0A Active CN110225110B (en) 2019-06-06 2019-06-06 Method and device for splitting block chain group

Country Status (2)

Country Link
CN (1) CN110225110B (en)
WO (1) WO2020244514A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110225110B (en) * 2019-06-06 2022-08-12 深圳前海微众银行股份有限公司 Method and device for splitting block chain group
US20240007857A1 (en) * 2021-01-29 2024-01-04 NEC Laboratories Europe GmbH Method and system for scaling blockchains via secure chain division

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560270B2 (en) * 2017-05-03 2020-02-11 International Business Machines Corporation Optimal data storage configuration in a blockchain
CN107528886B (en) * 2017-07-25 2020-07-31 中国科学院计算技术研究所 Block chain full-network splitting method and system
CN108023729B (en) * 2017-10-13 2020-06-23 中国银联股份有限公司 Block chain network and transaction method thereof
CN109818993B (en) * 2017-11-20 2021-08-24 西南交通大学 Efficient block chain consensus and exchange system
CN108492550B (en) * 2018-05-17 2020-01-31 浪潮集团有限公司 V2X high-speed fleet self-organization system based on block chain
CN108769264B (en) * 2018-07-09 2021-06-04 中国联合网络通信集团有限公司 Block chain domain division method
CN109285005A (en) * 2018-08-16 2019-01-29 北京京东尚科信息技术有限公司 Method for dividing and processing, device, block chain node and the storage medium of block chain
CN110225110B (en) * 2019-06-06 2022-08-12 深圳前海微众银行股份有限公司 Method and device for splitting block chain group

Also Published As

Publication number Publication date
CN110225110A (en) 2019-09-10
WO2020244514A1 (en) 2020-12-10

Similar Documents

Publication Publication Date Title
CN108305056B (en) Block chain-based data processing method and device and block chain node network
CN109639521B (en) Block chain performance testing method, device, equipment and storage medium
CN111061769B (en) Consensus method of block chain system and related equipment
CN110225110B (en) Method and device for splitting block chain group
CN112465615B (en) Method, device and system for processing bill data
CN111966289A (en) Partition optimization method and system based on Kafka cluster
CN106375360A (en) Method, device and system for updating graph data
CN109413202B (en) System and method for sorting block chain transaction information
CN102904824A (en) Service providing entity selection method and device
CN113867957A (en) Method and device for realizing elastic expansion of number of cross-cluster containers
CN108845869A (en) Concurrent request control method, device, computer equipment and storage medium
CN107276912B (en) Memory, message processing method and distributed storage system
CN111770150B (en) Access flow control method and device and electronic equipment
CN113486118A (en) Consensus node selection method and device
CN113342526A (en) Dynamic management and control method, system, terminal and medium for cloud computing mobile network resources
CN113128998B (en) Service processing method, device and system of block chain system
CN116703601A (en) Data processing method, device, equipment and storage medium based on block chain network
CN111177262A (en) Block chain consensus method, related device and system
CN109308219B (en) Task processing method and device and distributed computer system
CN108664322A (en) Data processing method and system
CN110662188B (en) Charging method and system
CN111046102A (en) High-performance block chain service system based on ether house
CN112037023B (en) Bank outlet management method and related device
US20210149746A1 (en) Method, System, Computer Readable Medium, and Device for Scheduling Computational Operation Based on Graph Data
CN114116908A (en) Data management method and device and electronic equipment

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