CN112860786A - Data processing method and device, computing node and storage medium - Google Patents

Data processing method and device, computing node and storage medium Download PDF

Info

Publication number
CN112860786A
CN112860786A CN201911182669.6A CN201911182669A CN112860786A CN 112860786 A CN112860786 A CN 112860786A CN 201911182669 A CN201911182669 A CN 201911182669A CN 112860786 A CN112860786 A CN 112860786A
Authority
CN
China
Prior art keywords
node
data
computing
calculation
target node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911182669.6A
Other languages
Chinese (zh)
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.)
Alibaba Health Information Technology Ltd
Original Assignee
Alibaba Health Information Technology 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 Alibaba Health Information Technology Ltd filed Critical Alibaba Health Information Technology Ltd
Priority to CN201911182669.6A priority Critical patent/CN112860786A/en
Publication of CN112860786A publication Critical patent/CN112860786A/en
Pending legal-status Critical Current

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
    • 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/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

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

Abstract

The application provides a data processing method, a device, a computing node and a storage medium, wherein the method comprises the following steps: receiving a calculation request; responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result; the target node stores the processing result as blockchain data in a database of the blockchain system. Through the scheme, the technical problem that the TPS is too low in the existing consensus algorithm is solved, and the technical effect of effectively improving the TPS is achieved.

Description

Data processing method and device, computing node and storage medium
Technical Field
The present application belongs to the field of block chain technology, and in particular, to a data processing method, apparatus, computing node, and storage medium.
Background
The blockchain is an application mode of computer technologies such as distributed data storage, point-to-point transmission, a consensus mechanism, an encryption algorithm and the like. The consensus mechanism refers to a mathematical algorithm for establishing trust between different nodes in the blockchain system, obtaining rights and interests and achieving consensus. The consensus algorithm is an algorithm for completing verification and confirmation of the transaction in a short time through voting of special nodes. For a transaction, if several nodes with irrelevant interests can reach a consensus, the whole network is considered to reach the consensus on the transaction.
However, the TPS (Transaction Per Second) of the conventional consensus algorithm is low, and no effective solution is provided for how to effectively improve the TPS of the consensus algorithm.
Disclosure of Invention
The application aims to provide a data processing method, a data processing device, a computing node and a storage medium, so as to improve TPS of a common recognition algorithm in a block chain system.
The application provides a data processing method, a device, a computing node and a storage medium, which are realized as follows:
a method of data processing, the method comprising:
receiving a calculation request;
responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
the target node stores the processing result as blockchain data in a database of the blockchain system.
A data processing apparatus comprising:
the receiving module is used for receiving a calculation request;
the response module is used for responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
a write module for storing the processing result as block data in a database of the blockchain system.
A method of prescription data processing, comprising:
acquiring a cochain request of prescription data, wherein the prescription data carries prescription information;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform single-machine computing operation to obtain block data, wherein the block data carries the prescription information;
the target node stores the block data in a database of the blockchain system.
A diagnostic data processing method, comprising:
acquiring an uplink request of diagnostic data, wherein the diagnostic data carries a disease diagnosis result of a user;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform single-machine computing operation to obtain block data, wherein the block data carries the disease diagnosis result;
the target node stores the block data in a database of the blockchain system.
A surgical data processing method, comprising:
acquiring a cochain request of surgical data, wherein the surgical data carries a surgical file of a user;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform single-machine computing operation to obtain block data, wherein the block data carries the operation file;
the target node stores the block data in a database of the blockchain system.
A hospitalization data processing method comprising:
acquiring an uplink request of hospitalization data, wherein the hospitalization data carries a hospitalization file of a user;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform stand-alone computing operation to obtain block data, wherein the block data carries the hospitalization file;
the target node stores the block data in a database of the blockchain system.
A drug data processing method, comprising:
acquiring an uplink request of medicine selling data;
responding to the uplink request, and taking the node with the strongest computing capability in the block chain system as a target node to perform single-machine computing operation to obtain block data;
the target node stores the block data in a database of the blockchain system.
A processing device comprising a processor and a memory for storing processor-executable instructions, the instructions when executed by the processor implementing the steps of the above method.
A computer readable storage medium having stored thereon computer instructions which, when executed, implement the steps of the above-described method.
According to the data processing method, the calculation operation is carried out through the node with the strongest calculation capability in the block chain system, so that the TPS of the consensus algorithm can be effectively improved, the technical problem that the TPS is too low in the existing consensus algorithm is solved through the method, and the technical effect of effectively improving the TPS is achieved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only some embodiments described in the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without any creative effort.
FIG. 1 is a block chain system architecture diagram provided herein;
FIG. 2 is a schematic diagram of a variation of the ranked list of computing capabilities provided herein;
FIG. 3 is a timing diagram of computing based on computing power as provided herein;
FIG. 4 is a data flow diagram in a prescription drug purchase scenario provided herein;
FIG. 5 is a method flow diagram of a data processing method provided herein;
fig. 6 is a schematic block diagram of an embodiment of a computer terminal provided in the present application.
Detailed Description
In order to make those skilled in the art better understand the technical solutions in the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Consensus, it can be understood that consensus is agreed upon. In real life, there are many scenarios that require consensus to be reached, such as: a meeting discussion, two or more parties entering into a collaborative agreement, etc. However, in the blockchain system, the necessary thing each node has to do is to keep its own account consistent with the accounts of other nodes. Because the blockchain system is decentralized, data can not be unified by a central server as in the conventional software structure. The blockchain system is a distributed peer-to-peer network structure, in which no node is a control node, and a set of consensus algorithm needs to be established in order to make each node keep respective data consistent through a rule.
The consensus algorithm is essentially a rule according to which each node validates its data. For example, suppose a group of people meet, no leader or decision maker exists in the group, and everyone publishes own opinions, in order to finally determine a unified rule, in the actual processing, one person can be selected in a certain time period, and is responsible for summarizing the contents of everyone, and then publishes the complete opinions, and the others vote, and everyone has a chance to summarize and publish, and finally, most supporters of whom use his opinions as final opinions, which is the concept of consensus algorithm. However, in the actual implementation, if the number of people is not large and the number is determined, the method is feasible, and if the number of people is too large and the number is not fixed, the voting decision in the method is difficult to be inefficient. In order to determine the most representative person, a representative node is screened in the consensus algorithm, and the data given by the representative node is the finally agreed data which needs to be maintained by other nodes, so that the consensus among the chain link points of each block is achieved.
At present, common consensus algorithms mainly include PoW, PoA and RAFT, and the following three consensus algorithms are specifically described as follows:
1) the PoW (Proof of Work) consensus algorithm, a PoW mechanism is used in the generation process of the bit currency, a Block Hash value (Block Hash) meeting the requirement is composed of N leading zeros, and the number of the zeros depends on the difficulty value of the network. If a reasonable block hash value is to be obtained, multiple trial calculations are required. The time to compute the chunk hash value depends on the hash operation speed of the machine. When a node calculates a reasonable block hash value, it indicates that the node does perform a large number of trial calculations, and certainly, the absolute value of the number of trial calculations cannot be calculated, because finding a reasonable hash value is a probabilistic event.
2) The PoA (Proof of Authority) consensus algorithm relies on preset Authority nodes (signers) to generate blocks. In the implementation, a new authorized node may be elected by an authorized node, for example, if the vote exceeds 50%, the new authorized node may be added. Even if a malicious authorized node exists, the authorized node can only attack 1 of the consecutive blocks ((SIGNER _ COUNT/2) +1), during which the malicious authorized node can be voted out by other authorized nodes. In the PoA mechanism, the time at which a block is generated can be specified.
3) The RAFT consensus algorithm is that if the initial states of a plurality of databases are consistent, the subsequent data can be ensured to be consistent as long as the subsequent operations are consistent. RAFT uses Log for synchronization and separates servers into three roles: leader, Follower, Candidate, three roles can be switched with each other. RAFT can be divided into two processes from a large perspective: electing a Leader, and generating a Log by the Leader and carrying out header synchronization with a Follower.
However, the above calculation operation based on the PoW consensus algorithm results in a lot of resource waste, network performance is too low, multiple acknowledgments need to be waited, forking is easy to occur, and the period for achieving the block acknowledgement consensus is long. The authorization process of the PoA consensus algorithm is complex, and TPS (computational systems protocol) operation performed by the authorization nodes in turn is low. The RAFT consensus algorithm has a complex election process, no process proved by calculation is available, and Leader efficiency is low.
In view of the problem of low TPS in the above consensus algorithm, in this example, a block chain system is provided, as shown in fig. 1, which may include: a plurality of compute nodes (compute node 1, compute node 2 … compute node N). Data interaction among the multiple computing nodes can be carried out through a P2P communication mechanism.
The computing nodes with the strongest computing capability in the blockchain system are the nodes with the computing capability in the blockchain system, and the efficiency is highest when the computing nodes with the strongest computing capability in the blockchain perform single-machine computing operation, so that in order to ensure that the blockchain system has higher TPS, each computing node in the blockchain system reports or calculates the respective computing capability, a computing capability ranking is maintained among the nodes, the computing nodes with the strongest computing capability in a plurality of computing nodes can be known through the ranking, and thus, under the condition of receiving computing operation requests, the computing nodes with the strongest computing capability are preferentially used for performing computing operation, and the blockchain system is ensured to have the highest TPS.
It is contemplated that the computational power of a node may be determined at the time of startup of the node. In a specific implementation, the node may report its own computing capability by itself, for example, the capability of the node may be determined by calculating the Hash times completed in the same time. If the computing power reported by the node itself is not trusted, the capability certification can be performed in a black box manner, for example, the computing power can be calculated through a segment of black box code to determine whether the computing power reported by the node is correct, and the computing power calculated by the black box can be encrypted through a private key.
For nodes added into the block chain, the calculation capacity needs to be determined, and after the calculation capacity of each node in the block chain is determined, the calculation capacity of each node can be sequenced to obtain a calculation capacity ranking list. Suppose there are five nodes, which are: node 1, node 2, node 3, node 4, and node 5. The results of the computational power ranking are: the first node 5, the second node 2, the third node 1, the fourth node 3 and the fifth node 4.
Then the computing power of node 5 is strongest as can be seen from this ranking result. Considering that the TPS is the largest when the stand-alone computing operation is performed, in order to obtain the largest TPS, the computing node with the highest computing capability may be selected to perform the stand-alone computing operation, so that the largest TPS may be obtained.
When a computing operation requirement exists or a transaction computing requirement is generated, the computing capacity ranking can be called, then, the computing node with the first computing capacity is selected to perform computing operation preferentially, and when the computing node with the first computing capacity finds itself to be the node with the first computing capacity, the computing operation is started immediately.
If the block update exists in the blockchain system, a new block is generated, the capability ranking and the preset time can be recalculated, the timing is stopped, the next transaction is determined to be processed by which computing node through the new computing capability ranking, namely, the next transaction is processed by the node with the strongest computing capability, and the ranked node continues to wait.
Because the nodes are ranked according to the computing power of the computing nodes, the nodes with stronger computing power are ranked more front, and the nodes with weaker computing power are ranked more back.
In order to avoid the failure of the node with the strongest capacity in the operation process, the node with the second capacity can be used as a standby node, each ranked node maintains a timer, the time length of the timer of the node with the second capacity is one waiting period, the time length of the timer of the node with the third capacity is two waiting periods, the time length of the timer of the node with the fourth capacity is three waiting periods, and the like. When the first node fails or exits, the timer of each node starts running, the timer of the second node ends first, and then the second node starts to perform calculation operation.
That is, the node with the strongest capability in the block chain is guaranteed to perform single-machine calculation operation through capability certification, other nodes are only verified, and meanwhile, the problem of single-point failure can be avoided through a capability ranking and timer waiting mechanism, and when the strongest node exits or a stronger node enters a network, the current node with the strongest network capability can be automatically adjusted to serve as a calculation node.
By the method, the node with the strongest computing capability can be kept in computing operation all the time, and the computing operation can be performed by the computing node with the second computing capability under the condition that the node with the strongest computing capability has a fault, so that the problem of single machine fault can be avoided under the condition that the highest TPS is ensured.
The above-mentioned ranked list of computing power of each node may be maintained at each node, and in particular, may be maintained between each computing node through a P2P communication mechanism.
As described below with reference to a specific scenario, as shown in fig. 2, it is assumed that there are three authorized nodes in the blockchain system, which are: node a, node B and node C. Each node performs a computation of its own computation capability when it joins the blockchain system, or it actively provides its own computation capability, assuming that the computation capability of node a is 2000, the computation capability of node B is 1000, and the computation capability of node C is 500.
Then a capability ranking table as shown in fig. 2 may be maintained among node a, node B, and node C, i.e., node a ranked first, node B ranked second, and node C ranked third. The capability ranking table can be maintained by P2P communication mechanism among several nodes, and the table is automatically updated once in case of adding new node or exiting node.
When a calculation request is received, a node with the strongest calculation capability, namely a node with the first rank, can be determined according to the capability ranking table, then the calculation request is processed through the node with the first rank to perform calculation operation, a new block is generated, the block is added into the block chain system, the capability ranking table is automatically refreshed under the condition that the node in the block chain system receives the new block, and the node with the first rank processes the new calculation request.
Further, it is considered that if a single node performs a computing operation, the node fails or exits, which results in that the current computing request cannot be completed. In order to avoid the single-machine failure, timers may be set for the respective computing nodes in the order in the capability ranking table, and the timing time corresponding to the computing node that is ranked further back is longer, for example, the timing time of the node B is 60s, and the timing time of the node C is 120 s. As shown in fig. 3, when node a exits or fails, a timer is started, node B performs a calculation operation when it reaches 60s, and if node B does not perform the calculation operation yet by 120s, it indicates that node B fails, at this time, node C starts the calculation operation, so as to ensure that the current calculation request can be executed, and preferentially selects the calculation node with the highest current calculation capability to perform the calculation operation, so as to ensure that TPS is the highest.
Assuming that the node B starts the calculation operation within 60s, after the calculation operation is completed, the node B generates new block data to be added to the block chain, and the node C can also receive the block data, so that the node B is known to finish the calculation. A new computing power ranking may be triggered because node a has exited, as shown in fig. 2, with no node a in the new computing power ranking, and if no new computing node has joined, then node B is the current strongest computing power node through which the next computing operation is performed.
That is, upon receiving new tile data, the statistical ranking and timing time are refreshed, when node B and node C receive the tile data calculated by node a, the timer is stopped and a new capability ranking is maintained through the P2P communication mechanism, and if a new transaction arrives at that time, the next round of waiting is started. When the strongest node exits, other nodes start to perform calculation operation after the timer is waited for, thereby avoiding the problem of single machine failure. For example, after the node a exits, the node B first stops waiting and starts to perform the calculation operation, and this mechanism can ensure that when the capacity is first offline, the capacity is second and the calculation operation is performed preferentially, thereby ensuring that the first online capacity can perform data calculation on the stand-alone. After block data calculated by the node B is received, the statistical ranking and the delay time are refreshed in the same way, the node A is found to exit at the moment, the node B becomes the strongest calculating node in the network, and the subsequent node B immediately starts calculating operation. When a node with stronger computing power is added, the node with stronger computing power can start computing operation preferentially according to the refreshed statistical ranking.
The computing nodes can adopt a alliance chain mode, namely, only aiming at members of a specific group and limited third parties, a plurality of preselected nodes are internally designated as bookkeepers, and the generation of each block data is jointly determined by all the preselected nodes. On the basis of the alliance chain, the node with the strongest capacity processes the calculation request to generate block data, and then other nodes only exist as verification nodes.
As shown in fig. 4, the data processing method may be applied to an online purchase scenario of prescription drugs, in a case that a patient purchases the prescription drugs in an online mall, the online mall may upload a request of the user to a corresponding internet hospital, a doctor docked in the internet hospital may prescribe a prescription for the user, the prescribed prescription may be stored in a block chain system in an uplink manner and synchronized to all block chain nodes, the prescription information is received by the pharmacy block chain nodes, the pharmacy transfers the prescription information to a pharmacist block chain node, the pharmacist performs audit on the prescription information, the audit result is stored in the block chain system in the uplink manner and synchronized to all block chain nodes, after the audit is passed, the user is ordered according to the prescription, after the order is ordered, the mall block chain node performs an approval process on the prescription, and the approval information is stored in the block chain system in the uplink manner, and synchronized to all blockchain nodes.
In the processes of the prescription uplink storage in the block chain system, the audit result uplink storage in the block chain system, and the audit result uplink storage in the block chain system, the data processing method can be used for performing data calculation through the strongest computing capability node to realize the uplink storage of data.
In the above example, the above processing method is exemplified to be applied to an online purchase scenario of prescription drugs, and when the method is actually implemented, the method may also be applied to other medical health scenarios, for example, a diagnostic data processing may be applied, and then the data that needs to be linked up is diagnostic data, and the diagnostic data may include, but is not limited to, at least one of the following: electronic examination report, medical history recorded by doctor, blood test result. It can also be applied in the surgical data processing, and the data needing to be linked up is surgical data, and the surgical data can include but is not limited to at least one of the following: pre-operative diagnostic data, pre-operative surgical preparation data, surgical procedure data, surgical medication data, and surgical outcome data. It may also be applied in hospitalization data processing, which may include, but is not limited to, at least one of: personal profiles of the user, care data during the hospital stay, cost data during the hospital stay. It can also be applied in the drug data processing, where the data to be linked is the drug selling data, and the drug selling data can include but is not limited to at least one of the following: drug inventory, drug selling amount, drug stocking and selling party information and drug selling party information.
However, it should be noted that the above-mentioned implementation scenario is only an exemplary description, and in practical implementation, all scenarios that need to perform data uplink processing may be processed by using the data processing method provided in this example, and the application does not limit the specific implementation scenario.
FIG. 5 is a flow chart of a method of one embodiment of a data processing method described herein. Although the present application provides method operational steps or apparatus configurations as illustrated in the following examples or figures, more or fewer operational steps or modular units may be included in the methods or apparatus based on conventional or non-inventive efforts. In the case of steps or structures which do not logically have the necessary cause and effect relationship, the execution sequence of the steps or the module structure of the apparatus is not limited to the execution sequence or the module structure described in the embodiments and shown in the drawings of the present application. When the described method or module structure is applied in an actual device or end product, the method or module structure according to the embodiments or shown in the drawings can be executed sequentially or executed in parallel (for example, in a parallel processor or multi-thread processing environment, or even in a distributed processing environment).
As shown in fig. 5, the data processing method may include the steps of:
step 501: receiving a calculation request;
the calculation request may be a data processing request, or may be a transaction data, and the data form or data form is not limited in this application.
Step 502: responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
in order to accurately and efficiently determine whether the node is the node with the strongest capability, a calculation capability ordering table can be maintained among the nodes, so that each node can know whether the node is the node with the strongest calculation capability through the ordering table, and whether the node needs to perform calculation operation or not can be quickly determined when a calculation request is received.
That is, the node with the strongest computing capability in the blockchain system as the target node to perform the stand-alone computing operation may include: a target node calls a pre-established calculation capacity ranking table, wherein the calculation capacity ranking table records the calculation capacity ranking of each node in the block chain system; and the target node determines the node with the first calculation capacity rank according to the calculation capacity ranking table, so that the single-computer calculation operation is immediately carried out.
Step 503: the target node stores the processing result as block data in a database of the blockchain system.
After the calculation is finished and the processing result is obtained, if the processing result can be used as Block data (i.e., Block), the target node may write the Block into the blockchain system, i.e., perform a chaining operation, and store the processing result as the Block data in a database of the blockchain system. This write operation is perceptible to each node in the blockchain system.
Considering that the number of nodes varies for the blockchain system, in order to ensure that each time a node with computing power is selected, after the target node writes a block into the blockchain system, the target node may trigger to reorder the computing power of each node in the blockchain system to generate an updated computing power ordered table, so that if there is an exiting node or a newly added node, the node may enter the computing power ordered table to participate in the computing operation.
Specifically, each node in the blockchain system may maintain the ordered list of computing capabilities through the P2P communication mechanism.
In an actual computing operation, because the above is a stand-alone computing operation, if the target node exits or fails in the process of processing the computing request, the computing operation cannot be completed smoothly. Therefore, the computing node with the computing capability next to the target node in the system can be controlled to perform computing operation, namely, whether the target node fails or not can be determined in the process of performing single-machine computing operation by taking the node with the strongest computing capability in the block chain system as the target node; and in the case of failure of the target node, the node with the second highest computing capability in the block chain system performs stand-alone computing operation.
In order to enable the nodes to be switched in order to perform calculation operations, the node with the second highest calculation capability in the blockchain system performs a stand-alone calculation operation, and the method can include the following steps: starting timers respectively arranged for all nodes in the block chain under the condition that a target node has a fault, wherein the time length of the node timer with stronger computing power is shorter; and taking the node with the first timing end of the timer as the node with the second highest computing capability to perform the stand-alone computing operation.
In the actual implementation process, before responding to the calculation request and performing a stand-alone calculation operation by using a node with the strongest calculation capability in the block chain system as a target node to obtain block data, the calculation capability value reported by each node in the block chain system when starting can be received, wherein the calculation capability value is determined by the number of hash calculations completed by each node within the same time; and sequencing the computing power of each node according to the computing power value reported by each node.
The method embodiments provided in the above description of the present application may be executed in a mobile terminal, a computer terminal, or a similar computing device. Taking the example of being operated on a computer terminal, fig. 6 is a hardware structure block diagram of the computer terminal of a data processing method according to an embodiment of the present invention. As shown in fig. 6, the computer terminal 10 may include one or more (only one shown) processors 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission module 106 for communication functions. It will be understood by those skilled in the art that the structure shown in fig. 6 is only an illustration and is not intended to limit the structure of the electronic device. For example, the computer terminal 10 may also include more or fewer components than shown in FIG. 6, or have a different configuration than shown in FIG. 6.
The memory 104 may be used to store software programs and modules of application software, such as program instructions/modules corresponding to the data processing method in the embodiment of the present application, and the processor 102 executes various functional applications and data processing by executing the software programs and modules stored in the memory 104, that is, implementing the data processing method of the application program. The memory 104 may include high speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory located remotely from the processor 102, which may be connected to the computer terminal 10 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission module 106 is used to receive or transmit data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the computer terminal 10. In one example, the transmission module 106 includes a Network adapter (NIC) that can be connected to other Network devices through a base station to communicate with the internet. In one example, the transmission module 106 may be a Radio Frequency (RF) module, which is used for communicating with the internet in a wireless manner.
In the software aspect, the data processing apparatus may include:
the receiving module is used for receiving a calculation request;
the response module is used for responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
and the writing module is used for storing the processing result as block data in a database of the block chain system.
In one embodiment, the response module may specifically call a pre-established calculation capability ranking table, where the calculation capability ranking table records the calculation capability ranking of each node in the blockchain system; and determining the node which is the first node of the calculation capacity ranking according to the calculation capacity ranking table.
In one embodiment, after the target node writes the block into the blockchain system, reordering of the computing capabilities of the nodes in the blockchain system may be triggered to generate an updated ranked list of computing capabilities.
In one embodiment, each node in the blockchain system maintains the sorted list of computing capabilities through a P2P communication mechanism.
In one embodiment, in the process of performing single-machine computing operation by taking a node with the strongest computing capability in a block chain system as a target node, determining whether the target node fails; and under the condition that the target node fails, performing stand-alone computing operation on the node with the second highest computing capability in the block chain system.
In one embodiment, the performing of the stand-alone computing operation by the node with the second highest computing power in the blockchain system may include: starting timers respectively arranged for all nodes in the block chain under the condition that the target node has a fault, wherein the time length of the node timer with stronger computing power is shorter; and taking the node with the first timing end of the timer as the node with the second highest computing capability to perform the stand-alone computing operation.
In one embodiment, in response to the computation request, performing a stand-alone computation operation by using a node with the strongest computation capability in the blockchain system as a target node, and before obtaining a computation result, the method may further include: receiving a calculation capacity value reported by each node in a block chain system when the node is started, wherein the calculation capacity value is determined by the number of times of Hash calculation completed by each node in the same time; and sequencing the computing power of each node according to the computing power value reported by each node.
An embodiment of the present application further provides a specific implementation manner of an electronic device, which is capable of implementing all steps in the data processing method in the foregoing embodiment, where the electronic device specifically includes the following contents: a processor (processor), a memory (memory), a communication Interface (Communications Interface), and a bus; the processor, the memory and the communication interface complete mutual communication through the bus; the processor is configured to call a computer program in the memory, and when executing the computer program, the processor implements all the steps in the data processing method in the foregoing embodiments, for example, when executing the computer program, the processor implements the following steps:
step 1: receiving a calculation request;
step 2: responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
and step 3: the target node stores the processing result as blockchain data in a database of the blockchain system.
As can be seen from the above description, in the embodiment of the present application, the computation operation is performed through the node with the strongest computation capability in the block chain system, so that the TPS of the consensus algorithm can be effectively improved, the technical problem that the TPS in the existing consensus algorithm is too low is solved through the above manner, and the technical effect of effectively improving the TPS is achieved.
Embodiments of the present application further provide a computer-readable storage medium capable of implementing all steps in the data processing method in the foregoing embodiments, where the computer-readable storage medium stores thereon a computer program, and when the computer program is executed by a processor, the computer program implements all steps of the data processing method in the foregoing embodiments, for example, when the processor executes the computer program, the processor implements the following steps:
step 1: receiving a calculation request;
step 2: responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
and step 3: the target node stores the processing result as blockchain data in a database of the blockchain system.
As can be seen from the above description, in the embodiment of the present application, the computation operation is performed through the node with the strongest computation capability in the block chain system, so that the TPS of the consensus algorithm can be effectively improved, the technical problem that the TPS in the existing consensus algorithm is too low is solved through the above manner, and the technical effect of effectively improving the TPS is achieved.
It is noted that, in this document, relational terms such as "first" and "second," and the like, may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the hardware + program class embodiment, since it is substantially similar to the method embodiment, the description is simple, and the relevant points can be referred to the partial description of the method embodiment.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
Although the present application provides method steps as described in an embodiment or flowchart, additional or fewer steps may be included based on conventional or non-inventive efforts. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. When an actual apparatus or client product executes, it may execute sequentially or in parallel (e.g., in the context of parallel processors or multi-threaded processing) according to the embodiments or methods shown in the figures.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a vehicle-mounted human-computer interaction device, a cellular telephone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
Although embodiments of the present description provide method steps as described in embodiments or flowcharts, more or fewer steps may be included based on conventional or non-inventive means. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. When an actual apparatus or end product executes, it may execute sequentially or in parallel (e.g., parallel processors or multi-threaded environments, or even distributed data processing environments) according to the method shown in the embodiment or the figures. The terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, the presence of additional identical or equivalent elements in a process, method, article, or apparatus that comprises the recited elements is not excluded.
For convenience of description, the above devices are described as being divided into various modules by functions, and are described separately. Of course, in implementing the embodiments of the present description, the functions of each module may be implemented in one or more software and/or hardware, or a module implementing the same function may be implemented by a combination of multiple sub-modules or sub-units, and the like. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Those skilled in the art will also appreciate that, in addition to implementing the controller as pure computer readable program code, the same functionality can be implemented by logically programming method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers and the like. Such a controller may therefore be considered as a hardware component, and the means included therein for performing the various functions may also be considered as a structure within the hardware component. Or even means for performing the functions may be regarded as being both a software module for performing the method and a structure within a hardware component.
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.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
As will be appreciated by one skilled in the art, embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, embodiments of the present description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present description may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and so forth) having computer-usable program code embodied therein.
The embodiments of this specification may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The described embodiments may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment. In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of an embodiment of the specification. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
The above description is only an example of the embodiments of the present disclosure, and is not intended to limit the embodiments of the present disclosure. Various modifications and variations to the embodiments described herein will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the embodiments of the present specification should be included in the scope of the claims of the embodiments of the present specification.

Claims (20)

1. A method of data processing, the method comprising:
receiving a calculation request;
responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
the target node stores the processing result as blockchain data in a database of the blockchain system.
2. The method of claim 1, wherein the most computationally intensive node in the blockchain system performs stand-alone computation as a target node, comprising:
the target node calls a pre-established calculation capacity ranking table, wherein the calculation capacity ranking table records the calculation capacity ranking of each node in the block chain system;
and the target node determines the node with the first calculation capacity rank according to the calculation capacity ranking table.
3. The method of claim 2, further comprising, after the target node stores the processing result as blockchain data in a database of the blockchain system:
and triggering to reorder the computing power of each node in the block chain system so as to generate an updated computing power ordering table.
4. The method of claim 2, wherein each node in the blockchain system maintains the ordered list of computing capabilities via a P2P communication mechanism.
5. The method of claim 1, wherein during the stand-alone computing operation of the node with the highest computing power in the blockchain system as the target node, the method further comprises:
determining whether the target node fails;
and under the condition that the target node fails, performing stand-alone computing operation on the node with the second highest computing capability in the block chain system.
6. The method of claim 5, wherein the node with the second highest computational power in the blockchain system performs stand-alone computational operations, comprising:
starting timers respectively arranged for all nodes in the block chain under the condition that the target node has a fault, wherein the time length of the node timer with stronger computing power is shorter;
and taking the node with the first timing end of the timer as the node with the second highest computing capability to perform the stand-alone computing operation.
7. The method according to any one of claims 1 to 6, wherein in response to the computation request, the node with the highest computation capability in the blockchain system performs a stand-alone computation operation as a target node, and before obtaining a processing result, the method further comprises:
receiving a calculation capacity value reported by each node in a block chain system when the node is started, wherein the calculation capacity value is determined by the number of times of Hash calculation completed by each node in the same time;
and sequencing the computing power of each node according to the computing power value reported by each node.
8. A data processing apparatus, comprising:
the receiving module is used for receiving a calculation request;
the response module is used for responding to the calculation request, and taking the node with the strongest calculation capability in the block chain system as a target node to perform single-machine calculation operation to obtain a processing result;
and the storage module is used for storing the processing result as block data in a database of the block chain system.
9. A method of prescription data processing, comprising:
acquiring a cochain request of prescription data, wherein the prescription data carries prescription information;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform single-machine computing operation to obtain block data, wherein the block data carries the prescription information;
the target node stores the block data in a database of the blockchain system.
10. The method of claim 9, wherein the prescription data comprises at least one of: prescription made by doctor, audit result of pharmacist on prescription drug, and verification and cancellation information after purchasing prescription drug.
11. A diagnostic data processing method, comprising:
acquiring an uplink request of diagnostic data, wherein the diagnostic data carries a disease diagnosis result of a user;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform single-machine computing operation to obtain block data, wherein the block data carries the disease diagnosis result;
the target node stores the block data in a database of the blockchain system.
12. The method of claim 11, wherein the diagnostic data comprises at least one of: electronic examination report, medical history recorded by doctor, blood test result.
13. A method of surgical data processing, comprising:
acquiring a cochain request of surgical data, wherein the surgical data carries a surgical file of a user;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform single-machine computing operation to obtain block data, wherein the block data carries the operation file;
the target node stores the block data in a database of the blockchain system.
14. The method of claim 13, wherein the surgical data includes at least one of: pre-operative diagnostic data, pre-operative surgical preparation data, surgical procedure data, surgical medication data, and surgical outcome data.
15. A hospitalization data processing method comprising:
acquiring an uplink request of hospitalization data, wherein the hospitalization data carries a hospitalization file of a user;
responding to the uplink request, and taking a node with the strongest computing capability in a block chain system as a target node to perform stand-alone computing operation to obtain block data, wherein the block data carries the hospitalization file;
the target node stores the block data in a database of the blockchain system.
16. The method of claim 15, wherein the hospitalization data comprise at least one of: personal profiles of the user, care data during the hospital stay, cost data during the hospital stay.
17. A method for processing drug data, comprising:
acquiring an uplink request of medicine selling data;
responding to the uplink request, and taking the node with the strongest computing capability in the block chain system as a target node to perform single-machine computing operation to obtain block data;
the target node stores the block data in a database of the blockchain system.
18. The method of claim 17, wherein the drug vending data comprises at least one of: drug inventory, drug selling amount, drug stocking and selling party information and drug selling party information.
19. A computing node comprising a processor and a memory for storing processor-executable instructions which, when executed by the processor, implement the steps of the method of any one of claims 1 to 7.
20. A computer readable storage medium having stored thereon computer instructions which, when executed, implement the steps of the method of any one of claims 1 to 7.
CN201911182669.6A 2019-11-27 2019-11-27 Data processing method and device, computing node and storage medium Pending CN112860786A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911182669.6A CN112860786A (en) 2019-11-27 2019-11-27 Data processing method and device, computing node and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911182669.6A CN112860786A (en) 2019-11-27 2019-11-27 Data processing method and device, computing node and storage medium

Publications (1)

Publication Number Publication Date
CN112860786A true CN112860786A (en) 2021-05-28

Family

ID=75984731

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911182669.6A Pending CN112860786A (en) 2019-11-27 2019-11-27 Data processing method and device, computing node and storage medium

Country Status (1)

Country Link
CN (1) CN112860786A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114520810A (en) * 2022-01-27 2022-05-20 山东浪潮工业互联网产业股份有限公司 Block chain-based block data transmission method, equipment and medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018037148A1 (en) * 2016-08-22 2018-03-01 Nokia Technologies Oy Method and apparatus for blockchain verification of healthcare prescriptions
CN108512939A (en) * 2018-04-17 2018-09-07 深圳市元征科技股份有限公司 A kind of block chain common recognition method, apparatus and relevant device
CN108665953A (en) * 2018-05-08 2018-10-16 北京金山云网络技术有限公司 A kind of prescription executes method, apparatus, equipment and storage medium
CN108717630A (en) * 2018-05-19 2018-10-30 上海分布信息科技有限公司 One kind going out block method and its realizes system
CN108961110A (en) * 2018-06-27 2018-12-07 深圳市乘法信息技术有限公司 A kind of method and system for negotiating encryption handling intellectual property based on block chain
CN109509530A (en) * 2018-11-12 2019-03-22 上海观谷科技有限公司 Electronic prescription memory management method and device based on block chain technology
CN110046521A (en) * 2019-04-24 2019-07-23 成都派沃特科技股份有限公司 Decentralization method for secret protection
KR102041720B1 (en) * 2018-07-20 2019-11-06 숭실대학교산학협력단 Implementing system of flexible blockchain framework and p2p network constructing method thereof, recording medium for performing the method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018037148A1 (en) * 2016-08-22 2018-03-01 Nokia Technologies Oy Method and apparatus for blockchain verification of healthcare prescriptions
CN108512939A (en) * 2018-04-17 2018-09-07 深圳市元征科技股份有限公司 A kind of block chain common recognition method, apparatus and relevant device
CN108665953A (en) * 2018-05-08 2018-10-16 北京金山云网络技术有限公司 A kind of prescription executes method, apparatus, equipment and storage medium
CN108717630A (en) * 2018-05-19 2018-10-30 上海分布信息科技有限公司 One kind going out block method and its realizes system
CN108961110A (en) * 2018-06-27 2018-12-07 深圳市乘法信息技术有限公司 A kind of method and system for negotiating encryption handling intellectual property based on block chain
KR102041720B1 (en) * 2018-07-20 2019-11-06 숭실대학교산학협력단 Implementing system of flexible blockchain framework and p2p network constructing method thereof, recording medium for performing the method
CN109509530A (en) * 2018-11-12 2019-03-22 上海观谷科技有限公司 Electronic prescription memory management method and device based on block chain technology
CN110046521A (en) * 2019-04-24 2019-07-23 成都派沃特科技股份有限公司 Decentralization method for secret protection

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114520810A (en) * 2022-01-27 2022-05-20 山东浪潮工业互联网产业股份有限公司 Block chain-based block data transmission method, equipment and medium

Similar Documents

Publication Publication Date Title
US20210295321A1 (en) Methods for decentralized digital asset transfer and smart contract state transition
US11362887B2 (en) Monitoring method based on internet of things, fog computing terminal and internet of things system
US20200082398A1 (en) Proof-of-Devotion Blockchain Consensus Algorithm
EP3565219B1 (en) Service execution method and device
CN108765159B (en) Block chain-based uplink and state processing method and device and interconnection system
CN108848148B (en) Transaction information confirmation method and device based on block chain
CN114244835B (en) Block chain-based decentralization self-adaptive collaborative training method and device
CN112612856B (en) Block chain-based data processing method and device
WO2021129004A1 (en) Blockchain data access control method and apparatus based on intelligent contract
CN112347184A (en) Bifurcation processing method and block link point
CN114710507B (en) Consensus method, blockchain node, medium and consensus node
US11222011B2 (en) Blockchain-based transaction processing
Goren et al. Silence
CN112860786A (en) Data processing method and device, computing node and storage medium
CN113434906B (en) Data query method, device, computer equipment and storage medium
Jacob et al. Analysis of the matrix event graph replicated data type
Wang et al. A brief survey on secure multi-party computing in the presence of rational parties
CN111310945B (en) Operation and maintenance management method and device and electronic equipment
CN115145702A (en) Information processing method and device based on secure multi-party computing
CN112291321A (en) Service processing method, device and system
WO2023179056A1 (en) Consensus processing method and apparatus of block chain network, device, storage medium, and program product
KR20210109767A (en) A method for providing asset backup services based on blockchain monitoring
Arya et al. Blockchain: Basics, applications, challenges and opportunities
WO2019145799A1 (en) System and method for decentralized validation of data exchange in a computer network
CN112131602B (en) Method, device and related product for quickly expanding trust relationship between nodes based on trusted computing

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