CN112488833A - Transaction processing method and device, electronic equipment and readable storage medium - Google Patents

Transaction processing method and device, electronic equipment and readable storage medium Download PDF

Info

Publication number
CN112488833A
CN112488833A CN202011335333.1A CN202011335333A CN112488833A CN 112488833 A CN112488833 A CN 112488833A CN 202011335333 A CN202011335333 A CN 202011335333A CN 112488833 A CN112488833 A CN 112488833A
Authority
CN
China
Prior art keywords
cache
transaction
processing
current transaction
data
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
CN202011335333.1A
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.)
Chengdu Quality Starker Technology Co Ltd
Original Assignee
Chengdu Quality Starker Technology 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 Chengdu Quality Starker Technology Co Ltd filed Critical Chengdu Quality Starker Technology Co Ltd
Priority to CN202011335333.1A priority Critical patent/CN112488833A/en
Publication of CN112488833A publication Critical patent/CN112488833A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Abstract

The embodiment of the invention provides a transaction processing method, a transaction processing device, electronic equipment and a readable storage medium, and aims to improve the transaction processing speed. The method is applied to any node in a block chain network, and comprises the following steps: obtaining a current transaction, and processing the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache; if the current transaction is successfully processed, processing data in the first cache is persisted to an account book database; if the current transaction processing fails, then the processing data in the first cache is not persisted to the ledger database. In the invention, under the condition that the current transaction execution fails, the range of the processing data which needs to be invalidated is smaller, so that the processing data can be ensured to be efficiently recorded into the ledger database on the whole, thereby improving the transaction processing speed.

Description

Transaction processing method and device, electronic equipment and readable storage medium
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a transaction processing method and apparatus, an electronic device, and a readable storage medium.
Background
The block chain technology is realized on a block chain network, distributed node equipment (hereinafter referred to as nodes) in the block chain network realizes generation and consensus of block data by operating a block chain program, finally realizes a tamper-proof mechanism of the data, and provides a safe and reliable new technical idea for business development.
The block chain technology can be applied to various service scenes, such as the financial field, the electronic commerce field, the commodity or raw material tracing field, the electronic evidence storage field and the like.
In the related art, in order to develop a service via a blockchain network, one or more transactions related to the service need to be constructed and submitted to the blockchain network for processing. During the transaction processing of each node of the blockchain network, processing data is generated and then persisted to the ledger database, so that the data is equivalently regarded as blockdata and recorded in the blockchain. It can be seen that in the related art, the processing speed of the node for the transaction determines the development speed of the whole service. Therefore, how to further increase the transaction processing speed is always a matter of great consideration in the field of blockchain technology.
Disclosure of Invention
Embodiments of the present invention provide a transaction processing method, a transaction processing apparatus, an electronic device, and a readable storage medium, which are intended to increase a transaction processing speed. The specific technical scheme is as follows:
in a first aspect of the embodiments of the present invention, there is provided a transaction processing method applied to any node in a blockchain network, the method including:
obtaining a current transaction, and processing the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache;
under the condition that the current transaction is successfully processed, processing data in the first cache is persisted to an account book database;
in the event of a current transaction processing failure, not persisting processing data in the first cache to the ledger database.
In a second aspect of the embodiments of the present invention, there is provided a transaction processing apparatus applied to any node in a blockchain network, the apparatus including:
the transaction processing module is used for obtaining the current transaction and processing the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache;
the data persistence module is used for persisting the processing data in the first cache to an account book database under the condition that the current transaction processing is successful, and not persisting the processing data in the first cache to the account book database under the condition that the current transaction processing is failed.
In a third aspect of the embodiments of the present invention, an electronic device is provided, which includes a processor, a communication interface, a memory, and a communication bus, where the processor, the communication interface, and the memory complete communication with each other through the communication bus;
the memory is used for storing a computer program;
the processor is used for realizing the transaction processing method provided by any embodiment of the invention when the program stored on the memory is executed.
In a fourth aspect of the embodiments of the present invention, there is provided a computer-readable storage medium on which a computer program is stored, the program, when executed by a processor, implementing the transaction processing method provided by any of the embodiments of the present invention.
In the invention, a first cache corresponding to the current transaction independently is arranged in front of the ledger database, in other words, the first cache serves the current transaction independently. During the period that the node processes the current transaction, the first cache is used for the node to inquire the target data and is used for recording the processing data corresponding to the current transaction. And under the condition that the current transaction is successfully processed, the node persists the processing data in the first cache to the ledger database. And in the case of a failure of the current transaction processing, the node does not persist the processing data in the first cache to the ledger database.
In the invention, the node inquires the target data from the first cache during the current transaction processing period, so that the method has higher inquiry efficiency and is beneficial to improving the transaction processing speed. More importantly, because the first cache serves the current transaction independently, the first cache only records the processing data corresponding to the current transaction, and does not record the processing data corresponding to each of the multiple transactions simultaneously, only the processing data corresponding to the current transaction cannot be persisted to the ledger database, and the processing data corresponding to other transactions cannot be affected under the condition that the current transaction processing fails. Therefore, in the invention, under the condition that the current transaction execution fails, the range of the processing data which needs to be invalidated is smaller, so that the processing data can be ensured to be efficiently recorded into the ledger database on the whole, and the transaction processing speed is further improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the invention, and that for a person skilled in the art, other drawings can be derived from them without inventive effort.
Fig. 1 is a schematic diagram of a transaction processing method proposed in the related art;
FIG. 2 is a flow chart of a transaction processing method according to an embodiment of the invention;
FIG. 3 is a schematic diagram of a transaction processing method according to another embodiment of the invention;
FIG. 4 is a schematic diagram of a transaction processing device according to an embodiment of the invention;
fig. 5 is a schematic diagram of an electronic device according to an embodiment of the invention.
Detailed Description
The technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. It is to be understood that the embodiments described are only a few embodiments of the present invention, and not all 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 invention.
The block chain technology is realized on a block chain network, distributed node equipment (hereinafter referred to as nodes) in the block chain network realizes generation and consensus of block data by operating a block chain program, finally realizes a tamper-proof mechanism of the data, and provides a safe and reliable new technical idea for business development.
In the related art, in order to develop a service via a blockchain network, one or more transactions related to the service need to be constructed and submitted to the blockchain network for processing. During the transaction processing of each node of the blockchain network, processing data is generated and then persisted to the ledger database, so that the data is equivalently regarded as blockdata and recorded in the blockchain.
Referring to fig. 1, fig. 1 is a schematic diagram of a transaction processing method proposed in the related art, and it should be noted that the transaction processing method shown in fig. 1 is not prior art, and there is no current evidence that the transaction processing method shown in fig. 1 is prior art.
It should be noted that, in order to simplify the drawing, all the steps that each node needs to participate in are shown only schematically in fig. 1, and not all the nodes are shown to participate in the steps.
As shown in fig. 1, after receiving a transaction, any node of the blockchain network submits the transaction to a sorting node of the blockchain network. The sequencing node sequences and packages a plurality of transactions received in a current period of time, so as to generate a transaction packet, wherein the transaction packet comprises a plurality of transactions with a sequence relation, and the transaction packet also comprises a height value. Specifically, the height value of the transaction package is equal to the height value of the previous transaction package of the transaction package plus 1. And after the sequencing node generates the transaction packet, distributing the transaction packet to each node in the block chain network.
For ease of understanding, it is illustratively assumed that the ordering node orders the transactions in the order in which they were received. When the ordered transactions reach 20, the 20 transactions are packaged into a transaction package.
Or, for example, assume that the ordering node orders the transactions in the order in which they were received. And the sequencing node packages a plurality of sequenced transactions into a transaction package every 30 seconds.
As shown in fig. 1, after the node receives the transaction packet, it reads the transactions from the transaction packet in sequence according to the sequence relationship of multiple transactions in the transaction packet, and processes the transactions. The node takes each transaction in the transaction package and the processing data corresponding to the transaction as block data, and arranges the block data in sequence in a block, so as to generate a block, and the block height of the block is set as the height value of the transaction package. It should be noted that the block data is recorded in the accounting database of the node.
For ease of understanding, assume for example that transaction packages include transactions 1 through 10 having a sequential relationship, the height value of the transaction package is equal to 1059. After receiving the transaction package, each node first reads transaction 1 from the transaction package, processes transaction 1, and records processing data corresponding to transaction 1 into the ledger database. Then reading transaction 2 from the transaction package, processing transaction 2, and recording the processing data corresponding to transaction 2 into the ledger database. And so on, finally reading the transaction 10 from the transaction package, processing the transaction 10, and recording the processing data corresponding to the transaction 10 into the ledger database. Thereafter, the node takes transaction 1 and its corresponding processing data, node 2 and its corresponding processing data …, and node 10 and its corresponding processing data as tile data, generating a tile having a tile height equal to 1059.
As shown in fig. 1, after the nodes generate the blocks, the nodes will recognize the blocks generated by the nodes. If the node confirms that the block generated by itself passes the consensus, the node continues to process the next transaction packet. And if the node confirms that the block generated by the node does not pass the consensus, the node automatically goes off the line, namely, the node automatically exits the blockchain network.
Optionally, in some embodiments, when the nodes mutually agree on the respective generated blocks, the following agreement may be adopted: after generating a block, the node calculates a hash value for all block data of the block, and broadcasts the hash value to other nodes in the block chain network; meanwhile, the nodes also receive the hash values broadcast by other nodes, and after receiving the hash values broadcast by each node, the nodes compare the total hash value calculated by the nodes with the hash values broadcast by other nodes respectively; if the total hash value calculated by the node per se is equal to other hash values exceeding the preset number, the node confirms that the block generated by the node per se passes the consensus, otherwise, the node confirms that the block generated by the node per se does not pass the consensus. Illustratively, the preset number may be equal to 51% of the total number of nodes of the blockchain network.
The common mode of the above-described embodiments is merely an example, and should not be construed as limiting the present invention. During the implementation of the invention, the nodes can adopt other consensus modes to perform consensus on the blocks.
By implementing the transaction processing mode shown in fig. 1, since the sequencing node uniformly sequences and packages a plurality of transactions and distributes the generated transaction package to each node, when each node reads the transactions from the transaction package and executes the transactions, each transaction can be executed in sequence according to the same transaction sequence, and the transactions and the processing data thereof are recorded into the block according to the same sequence. Thus, under normal conditions, each node will generate the same block. The same block specifically means: the tiles are of equal height, each tile includes the same transactions and their processing data, and the transactions are arranged in the tiles in the same order, and the processing data of the transactions are also arranged in the tiles in the same manner. Since each node generates the same block, when the nodes agree with each other about the block generated, the agreement can be passed relatively smoothly. In this way, the entire blockchain network can stably operate.
As described above, in the related art, when a service is developed using a blockchain network, one or more transactions related to the service actually need to be constructed and submitted to the blockchain network for processing. It can be seen that in the related art, the processing speed of the node for the transaction determines the development speed of the whole service. Therefore, how to further increase the transaction processing speed is always a matter of great consideration in the field of blockchain technology.
In view of the above, the present invention provides a transaction processing method, a transaction processing apparatus, an electronic device and a readable storage medium through the following embodiments, which are intended to improve the transaction processing speed.
Referring to fig. 2, fig. 2 is a flowchart of a transaction processing method according to an embodiment of the present invention, the transaction processing method is applied to any node in a blockchain network. As shown in fig. 2, the transaction processing method includes the following steps:
step S21: obtaining a current transaction, and processing the current transaction; during the process of processing the current transaction, target data required when the current transaction is processed is read from a first cache corresponding to the current transaction independently, and generated processing data is written into the first cache.
Wherein, the current transaction means: the transaction that the node is currently processing. The first cache corresponding to the current transaction alone refers to: the first cache is solely used for data reading and writing when the node processes the current transaction, and is emptied or released after the node processes the current transaction.
In the invention, before the node processes the current transaction, the node can allocate the first cache for the current transaction in advance. As mentioned above, the first cache separately corresponds to the current transaction, in other words, the first cache separately services the current transaction.
In the present invention, in order to allocate the first cache for the current transaction, a cache allocation manner proposed in any one of the following embodiments may be adopted by the node.
Optionally, in some specific embodiments, before processing the current transaction, the node empties the first cache corresponding to the previous transaction of the current transaction separately, and uses the first cache after emptying as the first cache corresponding to the current transaction separately.
For ease of understanding, assume, by way of example, that the current transaction is transaction 6 and the previous transaction to the current transaction is transaction 5. After the node finishes processing the transaction 5, the first cache corresponding to the transaction 5 alone is emptied. The node allocates the emptied first cache to transaction 6 before processing transaction 6. This first cache serves transaction 6 alone during processing of transaction 6 by the node. Similarly, when the node has finished processing transaction 6, the first cache is again emptied and allocated to the next transaction (i.e., transaction 7).
Optionally, in other embodiments, before processing the current transaction, the node creates a first cache for the current transaction separately, and uses the first cache as the first cache corresponding to the current transaction separately.
For ease of understanding, assume, by way of example, that the current transaction is transaction 6 and the previous transaction to the current transaction is transaction 5. After the node processes transaction 5, the first cache corresponding to transaction 5 alone is released. The node again creates a first cache for transaction 6 before processing transaction 6. The recreated first cache serves transaction 6 alone during processing of transaction 6 by the node. Similarly, when the node has processed transaction 6, the first cache corresponding to transaction 6 is also released, and a second cache is created for transaction 7 before processing the next transaction (i.e., transaction 7).
Among the two cache allocation methods, the first cache allocation method is preferable. The reason for this is that in the first cache allocation manner, before the current transaction is processed, it is not necessary to create a new first cache for the current transaction again, but only the first cache used by the previous transaction needs to be emptied, and the emptied first cache is allocated to the current transaction. Thus, the step of creating the cache can be saved, thereby further improving the transaction processing speed.
In the present invention, processing threads may be run within a node, each processing thread being used to process a transaction during a time period.
Alternatively, in some embodiments, if only one processing thread is running in a node, the node can only process one transaction for a period of time. Accordingly, there is only one first cache within a node that serves the transaction alone.
Alternatively, in other embodiments, if there are N (N ≧ 2) processing threads in the node, the node can process N transactions simultaneously within a time period. Accordingly, there are N first caches within the node, each serving a transaction individually.
In the present invention, in order to obtain the current transaction, the node may adopt a transaction obtaining manner proposed in any of the following embodiments.
Optionally, in some embodiments, as described above, after obtaining the transaction package distributed by the sorting node, the node may sequentially read the transaction from the multiple transactions in the transaction package according to the sequential relationship of the multiple transactions in the transaction package. The transaction that the node currently reads, i.e. is the current transaction.
Alternatively, in other embodiments, a node may receive a single transaction sent by other nodes within the blockchain network to obtain a current transaction.
Alternatively, in other embodiments, the node may receive the transaction sent by the client or the out-of-chain middleware directly, so as to obtain the current transaction.
In the invention, the node reads the target data required by processing the current transaction from the first cache which is independently corresponding to the current transaction during processing the current transaction, and the read-write speed of the cache is very high, so that the speed of reading the target data by the node is high, and the transaction processing speed is further improved. Exemplary target data required in processing the current transaction include, but are not limited to: account balance, user identity information, user permissions, and the like.
Optionally, in some embodiments, if the node fails to read the target data from the first cache, the node may read the target data directly from the ledger database. After the node reads the target data from the account book database, the target data can be backed up to the first cache. In this way, the node can quickly read the target data directly from the first cache if the target data is needed again during the continued processing of the current transaction.
Step S22: and in the case that the current transaction is successfully processed, processing data in the first cache is persisted to an account book database.
In other words, when the current transaction is successfully processed, the processing data in the first cache (i.e., the processing data corresponding to the current transaction) is saved in the ledger database. The processing data corresponding to the current transaction is added to the block as block data.
Step S23: in the event of a current transaction processing failure, not persisting processing data in the first cache to the ledger database.
In other words, when the current transaction process fails, the processing data in the first cache (i.e., the processing data corresponding to the current transaction) will not be saved in the ledger database. The processing data corresponding to the current transaction will not be treated as tile data and thus will not be added to the tile.
To facilitate understanding of the above-described steps S21 to S23, it is exemplarily assumed that the current transaction includes the following transaction contents: (1) transferring 1000 yuan to account A; (2) 8000 yuan is transferred from account a.
The node allocates a first cache for the current transaction in advance before processing the current transaction, the first cache serves the current transaction separately as described above, and the first cache is temporarily empty.
When the node processes the transaction content (1) of the current transaction, the balance information of the account A needs to be acquired. The node first attempts to read the balance information of account a from the first cache, however, because the first cache is temporarily empty, the node fails to read the balance information of account a from the first cache. The node in turn reads the balance information of account a from the ledger database. Assuming that the balance of the account a is 6050 yuan, after the node reads the balance information of the account a from the account book database, the balance information of the account a is backed up to the first cache. In addition, the node adds 1000 yuan to the balance of the account a, so that the balance information of the account a is updated, and the updated balance is equal to 7050 yuan. And the node refreshes the first cache by using the updated balance information, and in the refreshed first cache, the balance information of the account A is equal to 7050 yuan. Note that the balance information (7050 element) of the account a is a piece of processing data corresponding to the current transaction.
When the node processes the transaction content (2) of the current transaction, the balance information of the account A needs to be acquired. The node firstly tries to read the balance information of the account A from the first cache, and the node can quickly read the balance information of the account A from the first cache because the balance information of the account A exists in the first cache. And after the node reads the balance information of the account A from the first cache, 8000 yuan is subtracted from the balance of the account A. However, since the balance of account a is equal to 7050 nt, the balance of account a is insufficient to subtract 8000 nt, and thus the current transaction execution fails. Thus, the node will not persist the processing data in the first cache to the ledger database, and the balance information of account a in the ledger database is still 6050 yuan.
By performing the above steps S21 to S23, a first buffer corresponding to the current transaction alone is set before the ledger database, in other words, the first buffer serves the current transaction alone. During the period that the node processes the current transaction, the first cache is used for the node to inquire the target data and is used for recording the processing data corresponding to the current transaction. And under the condition that the current transaction is successfully processed, the node persists the processing data in the first cache to the ledger database. And in the case of a failure of the current transaction processing, the node does not persist the processing data in the first cache to the ledger database.
The node queries the target data from the first cache during the process of the current transaction, so that the method has higher query efficiency and is beneficial to improving the transaction processing speed. More importantly, because the first cache serves the current transaction independently, the first cache only records the processing data corresponding to the current transaction, and does not record the processing data corresponding to each of the multiple transactions simultaneously, only the processing data corresponding to the current transaction cannot be persisted to the ledger database, and the processing data corresponding to other transactions cannot be affected under the condition that the current transaction processing fails. Therefore, in the invention, under the condition that the current transaction execution fails, the range of the processing data which needs to be invalidated is smaller, so that the processing data can be ensured to be efficiently recorded into the ledger database on the whole, and the transaction processing speed is further improved.
Referring to fig. 3, fig. 3 is a schematic diagram of a transaction processing method according to another embodiment of the invention. As shown in fig. 3, the multi-level cache at least includes: a first cache and a second cache. As previously described, the first cache serves the current transaction alone. In the present invention, the second cache serves the current transaction package individually. A transaction processing method according to another embodiment of the present invention will be described with reference to fig. 3.
Referring to the foregoing, in order to obtain a current transaction, a node may read pending transactions from a current transaction package and treat one of the currently read transactions as the current transaction.
Wherein one transaction package corresponds to one block generated in the future. Optionally, in some embodiments, as mentioned above, the transaction packet has a height value, and after the node generates a block for the transaction packet, the block height of the block is equal to the height value of the transaction packet.
Wherein, the current transaction package is: the transaction package that the node is currently processing. As shown in fig. 3, the current transaction packet corresponds to a second cache separately. In other words, the second cache serves the current transaction packet separately, the second cache is only used for data reading and writing when the node processes the current transaction packet, and after the node processes the current transaction packet, the second cache is emptied or released.
In the case that the current transaction is successfully processed, in order to persist the processing data in the first cache (i.e., the processing data corresponding to the current transaction) to the ledger database, as shown in fig. 3, the node may refresh, by using the processing data in the first cache, a second cache corresponding to the current transaction packet separately, so as to update the processing data in the second cache (e.g., 2-1 in fig. 3).
In addition, when the current transaction processing fails, the node does not refresh the second cache corresponding to the current transaction package alone by using the processing data in the first cache in order to not persist the processing data in the first cache to the ledger database. In other words, if the execution of the current transaction fails, the processing data in the first cache corresponding to the current transaction alone will not be updated to the second cache corresponding to the current transaction package alone. To simplify the drawing, the case where the current transaction processing fails is not shown in fig. 3.
In addition, as shown in fig. 3, after the last transaction in the current transaction package is processed, the node will persist the processed data in the second cache to the ledger database (e.g., 2-2 in fig. 3). Specifically, if the last transaction in the current transaction package is successfully processed, the processing data in the second cache is persisted to the ledger database after the second cache corresponding to the current transaction package is refreshed by using the first cache corresponding to the transaction. If the last transaction in the current transaction package fails to be processed, the second cache corresponding to the current transaction package is not refreshed by the first cache corresponding to the transaction, but the processing data in the second cache is still persisted to the ledger database.
For ease of understanding, it is assumed, by way of example, that after processing of the current transaction (e.g., transaction 8) is successful, the following processing data is included in the first cache: account B balance 8500 yuan, new account Y balance 10000 yuan. Further assume that the following processing data is included in the second cache at this time: account B balance 6500 yuan and account C balance 28000 yuan. The process data in the second cache is updated after the second cache is refreshed with the process data in the first cache. After updating, the second cache includes the following processing data: account B balance 8500 yuan, account C balance 28000 yuan, new account Y balance 10000 yuan.
Thereafter, the node reads transaction 9 from the current transaction package and treats transaction 9 as the current transaction. The node allocates a first cache for transaction 9, which first cache serves transaction 9 alone, which first cache is temporarily empty. Assume that transaction 9 includes the following transaction contents: (1) transfer 2000 yuan to account B; (2) the 15000 dollar is transferred out of account B.
When processing the transaction content (1) of the transaction 9, the node needs to acquire the balance information of the account B. The node first attempts to read the balance information of account B from the first cache, however, because the first cache is temporarily empty, the node fails to read the balance information of account B from the cache. The node in turn reads the balance information for account B from the second cache. And after reading the balance information of the account B from the second cache, the node backs up the balance information of the account B to the first cache. In addition, the node adds 2000 yuan to the balance of account B, thereby updating the balance information of account B, and the updated balance is equal to 10500 yuan. And the node refreshes the first cache by using the updated balance information, and in the refreshed first cache, the balance information of the account B is equal to 10500 yuan.
When the node processes the transaction content (2) of the transaction 9, the node needs to acquire the balance information of the account B. The node first attempts to read the balance information of the account B from the first cache, and since the balance information of the account B exists in the first cache, the node can quickly read the balance information of the account B from the first cache. After the node reads the balance information of the account B from the first cache, the node subtracts 15000 yuan from the balance of the account B. However, since the balance of account B is equal to 10500 dollars, the balance of account B is insufficient to subtract 15000 dollars, and transaction 9 fails to execute. Thus, the node does not persist the processing data in the first cache to the second cache, which includes processing data maintained as: account B balance 8500 yuan, account C balance 28000 yuan, new account Y balance 10000 yuan.
Thereafter, the node reads transaction 10 from the current transaction package and treats transaction 10 as the current transaction, with transaction 10 being the last transaction in the current transaction package. The node allocates a first cache for transaction 10, which first cache serves transaction 10 alone, which first cache is temporarily empty. Assume that transaction 10 includes the following transaction contents: (1) 3000 dollars are transferred from account Y.
When processing the transaction content (1) of the transaction 10, the node needs to acquire the balance information of the account Y. The node first attempts to read the balance information of account Y from the first cache, however, because the first cache is temporarily empty, the node fails to read the balance information of account Y from the cache. The node in turn reads the balance information for account Y from the second cache. And after reading the balance information of the account Y from the second cache, the node backs up the balance information of the account Y to the first cache. In addition, the node subtracts 3000 yuan from the balance of account Y, thereby updating the balance information of account Y, and the updated balance is 7000 yuan. And the node refreshes the first cache by using the updated balance information, and in the refreshed first cache, the balance information of the account Y is equal to 7000 yuan.
The node then flushes the second cache with the process data in the first cache, and the process data in the second cache is updated. After updating, the second cache includes the following processing data: account B balance 8500 yuan, account C balance 28000 yuan, new account Y balance 7000 yuan.
After the node refreshes the second cache by using the processing data corresponding to the last transaction (i.e., transaction 10) in the current transaction package, the node persists the processing data in the second cache to the ledger database.
In addition, in the invention, under the condition that the current transaction packet processing fails, the node does not persist the processing data in the second cache to the ledger database.
For ease of understanding, it is exemplarily assumed that when a transaction is read from a current transaction packet, the transaction read fails, however, the node cannot skip the transaction and instead read the next transaction, resulting in the node being unable to continue processing the current transaction packet. In this case, the node may determine that the current transaction packet processing failed. In this way, the node does not persist the processed data in the second cache to the ledger database.
Or, for example, assuming that the data format of the current transaction packet does not conform to the data format required by the blockchain procedure, the node cannot continue processing the current transaction packet. In this case, the node may determine that the current transaction packet processing failed. In this way, the node does not persist the processed data in the second cache to the ledger database.
By executing the transaction processing method shown in fig. 3, since the second cache serves the current transaction alone, and only the processing data corresponding to the current transaction package is recorded by the second cache, and the processing data corresponding to each of the multiple transaction packages is not recorded at the same time, only the processing data corresponding to the current transaction package is not persisted to the ledger database, and the processing data corresponding to other transaction packages is not affected when the current transaction package fails to be processed. And one transaction packet corresponds to one block, so that the node can still smoothly generate the blocks corresponding to other transaction packets. Therefore, in the invention, under the condition that the execution of the current transaction packet fails, the node is not influenced to generate the corresponding blocks for other transaction packets. Therefore, the block generation rate can be ensured on the whole, and the service development speed is improved.
In the invention, before the node processes the current transaction packet, a second cache can be allocated to the current transaction packet in advance. As mentioned above, the second cache separately corresponds to the current transaction packet, in other words, the second cache separately serves the current transaction packet.
In the present invention, in order to allocate a second cache for the current transaction packet, a cache allocation method proposed in any one of the following embodiments may be adopted by the node.
Optionally, in some specific embodiments, before processing the current transaction packet, the node empties the second cache separately corresponding to the previous transaction packet of the current transaction packet, and uses the second cache after emptying as the second cache separately corresponding to the current transaction packet.
For ease of understanding, it is assumed, by way of example, that the current transaction package is transaction package 1059, and the previous transaction package to the current transaction package is transaction package 1058. After the node has processed the transaction packet 1058, the second cache corresponding to the transaction packet 1058 alone is emptied. The node allocates the emptied second cache to the transaction package 1059 before processing the transaction package 1059. This second cache serves transaction package 1059 alone during processing of transaction package 1059 by the node. Similarly, when the node has finished processing transaction package 1059, the second cache is again emptied and allocated to a subsequent transaction package (i.e., transaction package 1060).
Optionally, in other embodiments, before processing the current transaction package, the node separately creates a second cache for the current transaction package, and uses the second cache as a second cache corresponding to the current transaction package separately.
For ease of understanding, it is assumed, by way of example, that the current transaction package is transaction package 1059, and the previous transaction package to the current transaction package is transaction package 1058. After the node processes the transaction package 1058, the second cache corresponding to the transaction package 1058 alone is released. The node again creates a second cache for the transaction package 1059 before processing the transaction package 1059. The re-created second cache serves transaction package 1059 alone during processing of transaction package 1059 by the node. Similarly, when the node has processed transaction package 1059, the second cache associated with transaction package 1059 alone is released, and a second cache is created for transaction package 1060 before processing the next transaction package (i.e., transaction package 1060).
Among the two cache allocation methods, the first cache allocation method is preferable. The reason for this is that, in the first cache allocation manner, before the current transaction packet is processed, a new second cache does not need to be created for the current transaction packet again, and only the second cache used by the previous transaction packet needs to be emptied, and the second cache after being emptied is allocated to the current transaction packet. Therefore, the steps of creating the cache can be saved, and the processing speed of the transaction packet is further improved.
Optionally, in some specific embodiments, as shown in fig. 3, the multi-level cache further includes: and the third cache corresponds to the ledger database. As shown in fig. 3, after the last transaction in the current transaction packet is processed, the node also uses the processing data in the second cache to refresh the third cache (2-2 in fig. 3) corresponding to the ledger database.
For ease of understanding, it is exemplarily assumed that the second cache includes the following processing data: account B balance 8500 yuan, account C balance 28000 yuan, new account Y balance 7000 yuan. Further assume that the third cache includes the following data: account a balance 6050 yuan, account B balance 10400 yuan, account C balance 36000 yuan. The processing data in the third cache is updated after the third cache is refreshed with the processing data in the second cache. After updating, the third cache includes the following processing data: account a balance 6050 yuan, account B balance 8500 yuan, account C balance 28000 yuan, new account Y balance 7000 yuan.
Furthermore, as mentioned above, during the processing of the current transaction, the node needs to read the target data (e.g. 1-1 in fig. 3) required for processing the current transaction from the first cache corresponding to the current transaction individually. As shown in fig. 3, in the case that the processing thread of the node fails to read the target data from the first cache, the processing thread reads the target data from the second cache (as 1-2 in fig. 3) corresponding to the current transaction package; under the condition that the target data cannot be read from the second cache, reading the target data from a third cache corresponding to the account book database (such as 1-3 in fig. 3); reading the target data from the account book database (such as 1-4 in fig. 3) under the condition that the target data cannot be read from the third cache; and after the target data is read, the node processes the current transaction according to the target data.
It should be noted that, in the above specific embodiment, the second cache is refreshed by using the processing data in the first cache, and the third cache is refreshed by using the processing data in the second cache, so that the processing data recorded in each cache is continuously in a new state. And by means of querying the first cache, the second cache, the third cache and the account book database step by step until the target data is read, time consumed for reading the target data can be effectively shortened, and therefore the transaction processing speed is further improved.
Optionally, in some embodiments, some hotspot data, for example, balance data of a hotspot account, may be fixedly stored in the third cache. By hotspot account, it is meant an account that is frequently involved in transactions, such as accounts of some enterprise users who are relatively frequent in the pipeline. It should be noted that, because the hot data is fixedly stored in the third cache, it is probably necessary to query the hot data during the period that the node processes the current transaction. If the node fails to read the hot spot data from the first cache and the second cache, the hot spot data can also be read from the third cache. Therefore, the data reading speed can be further improved, and the transaction processing speed is further improved.
Optionally, in some embodiments, during the processing of the current transaction by the node, after the node reads the target data, the node may backup the target data in a cache that does not contain the target data. This process is not shown in fig. 3 to simplify the drawing.
For convenience of understanding, it is assumed that the node reads the target data from the ledger database in a manner of querying the first cache, the second cache, the third cache, and the ledger database step by step until the ledger database is queried. Thus, the node needs to backup the target data in the first cache, the second cache, and the third cache.
Or exemplarily, it is assumed that the node reads the target data from the third cache only by querying the first cache, the second cache, the third cache, and the ledger database step by step until the third cache is queried. As such, the node needs to backup the target data in the first cache and the second cache.
It should be noted that target data required during execution of the current transaction, which is usually hot data in the current time period, may be read in a nearby cache by backing up the target data in the cache that does not contain the target data, so that the target data may be read in the cache when the target data needs to be read again later. Therefore, the data reading speed can be further improved, and the transaction processing speed is further improved.
Based on the same inventive concept, the embodiment of the invention also provides a transaction processing device. Referring to fig. 4, fig. 4 is a schematic diagram of a transaction processing device according to an embodiment of the present invention, which is applied to any node in a blockchain network. As shown in fig. 4, the apparatus includes:
a transaction processing module 41, configured to obtain a current transaction and process the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache;
and a data persistence module 42, configured to persist, if the current transaction processing is successful, the processing data in the first cache to the ledger database, and if the current transaction processing is unsuccessful, not persist, to the ledger database, the processing data in the first cache.
Optionally, in some embodiments, the apparatus further comprises:
and the first cache emptying module is used for emptying a first cache corresponding to a previous transaction of the current transaction before the transaction processing module processes the current transaction, and taking the emptied first cache as the first cache corresponding to the current transaction.
Or optionally, in other embodiments, the apparatus further comprises:
and the first cache creating module is used for creating a first cache for the current transaction independently before the transaction processing module processes the current transaction, and using the first cache as a first cache corresponding to the current transaction independently.
Optionally, in some embodiments, the transaction processing module is specifically configured to: reading the transaction to be processed from the current transaction packet, and taking the currently read transaction as the current transaction, wherein one transaction packet corresponds to a block generated in the future;
the data persistence module is specifically configured to: under the condition that the current transaction is successfully processed, refreshing a second cache corresponding to the current transaction packet independently by using the processing data in the first cache so as to update the processing data in the second cache; after the last transaction in the current transaction package is processed, persisting the processing data in the second cache to the ledger database;
the data persistence module is further specifically configured to: and under the condition that the current transaction processing fails, refreshing a second cache corresponding to the current transaction packet independently without using the processing data in the first cache.
Optionally, in some specific embodiments, the data persistence module is further specifically configured to: and in the case of failure of processing of the current transaction packet, not persisting the processing data in the second cache to the ledger database.
Optionally, in some embodiments, the apparatus further comprises:
the second cache emptying module is used for emptying a second cache which is separately corresponding to a previous transaction packet of the current transaction packet before the transaction processing module reads the transaction to be processed from the current transaction packet, and the second cache after being emptied is used as a second cache which is separately corresponding to the current transaction packet;
or optionally, in other embodiments, the apparatus further comprises:
and the second cache creating module is used for creating a second cache for the current transaction packet before the transaction processing module reads the transaction to be processed from the current transaction packet, and using the second cache as a second cache corresponding to the current transaction packet.
Optionally, in some embodiments, the apparatus further comprises:
the third cache refreshing module is used for refreshing a third cache corresponding to the account book database by utilizing the processing data in the second cache after the last transaction in the current transaction packet is processed;
the transaction processing module is further specifically configured to: under the condition that the target data cannot be read from the first cache, reading the target data from a second cache which is respectively corresponding to the current transaction package; reading the target data from a third cache corresponding to the book database under the condition that the target data cannot be read from the second cache; reading the target data from the ledger database if the target data cannot be read from the third cache; and processing the current transaction according to the target data after reading the target data.
Optionally, in some embodiments, the apparatus further comprises:
and the data backup module is used for backing up the target data in a cache which does not contain the target data after the target data is read by the transaction processing module.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
Based on the same inventive concept, an embodiment of the present invention further provides an electronic device, as shown in fig. 5, including a processor 501, a communication interface 502, a memory 503, and a communication bus 504, where the processor 501, the communication interface 502, and the memory 503 complete communication with each other through the communication bus 504.
The memory 503 is used for storing computer programs;
the processor 501 is configured to implement the following steps when executing the program stored in the memory 503:
obtaining a current transaction, and processing the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache;
under the condition that the current transaction is successfully processed, processing data in the first cache is persisted to an account book database;
in the event of a current transaction processing failure, not persisting processing data in the first cache to the ledger database.
Alternatively, the processor 501 is configured to implement the steps of the transaction processing method provided by the above other method embodiments of the present invention when executing the program stored in the memory 503.
The communication bus mentioned in the electronic device may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The communication interface is used for communication between the electronic equipment and other equipment.
The Memory may include a Random Access Memory (RAM) or a non-volatile Memory (non-volatile Memory), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; the Integrated Circuit may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, a discrete Gate or transistor logic device, or a discrete hardware component.
In yet another embodiment of the present invention, there is also provided a computer-readable storage medium having stored therein instructions, which when run on a computer, cause the computer to execute the transaction processing method of any one of the above embodiments.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the invention to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
It is noted that, herein, 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.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be 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.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (10)

1. A transaction processing method applied to any node in a blockchain network, the method comprising:
obtaining a current transaction, and processing the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache;
under the condition that the current transaction is successfully processed, processing data in the first cache is persisted to an account book database;
in the event of a current transaction processing failure, not persisting processing data in the first cache to the ledger database.
2. The method of claim 1, wherein prior to processing the current transaction, the method further comprises:
emptying a first cache corresponding to a previous transaction of the current transaction independently, and taking the first cache after emptying as the first cache corresponding to the current transaction independently;
alternatively, the first and second electrodes may be,
and independently creating a first cache for the current transaction, and taking the first cache as the first cache corresponding to the current transaction independently.
3. The method of claim 1, wherein obtaining the current transaction comprises:
reading the transaction to be processed from the current transaction packet, and taking the currently read transaction as the current transaction, wherein one transaction packet corresponds to a block generated in the future;
the persisting the processing data in the first cache to an ledger database if the current transaction processing is successful includes:
under the condition that the current transaction is successfully processed, refreshing a second cache corresponding to the current transaction packet independently by using the processing data in the first cache so as to update the processing data in the second cache;
after the last transaction in the current transaction package is processed, persisting the processing data in the second cache to the ledger database;
the not persisting the processing data in the first cache to the ledger database in the event of a failure of current transaction processing includes:
and under the condition that the current transaction processing fails, refreshing a second cache corresponding to the current transaction packet independently without using the processing data in the first cache.
4. The method of claim 3, further comprising:
and in the case of failure of processing of the current transaction packet, not persisting the processing data in the second cache to the ledger database.
5. The method of claim 3, wherein prior to reading the pending transaction from the current transaction package, the method further comprises:
clearing a second cache which is separately corresponding to a previous transaction packet of the current transaction packet, and taking the cleared second cache as a second cache which is separately corresponding to the current transaction packet;
alternatively, the first and second electrodes may be,
and independently creating a second cache for the current transaction package, and taking the second cache as a second cache which is independently corresponding to the current transaction package.
6. The method of claim 3, wherein after the last transaction in the current transaction package is processed, the method further comprises:
refreshing a third cache corresponding to the account book database by utilizing the processing data in the second cache;
during processing of the current transaction, the method further comprises:
under the condition that the target data cannot be read from the first cache, reading the target data from a second cache which is respectively corresponding to the current transaction package;
reading the target data from a third cache corresponding to the book database under the condition that the target data cannot be read from the second cache;
reading the target data from the ledger database if the target data cannot be read from the third cache;
and processing the current transaction according to the target data after reading the target data.
7. The method of claim 6, wherein after reading the target data, the method further comprises:
backing up the target data in a cache that does not contain the target data.
8. A transaction processing apparatus, for use at any node in a blockchain network, the apparatus comprising:
the transaction processing module is used for obtaining the current transaction and processing the current transaction; during processing of the current transaction, reading target data required in processing of the current transaction from a first cache corresponding to the current transaction independently, and writing generated processing data into the first cache;
the data persistence module is used for persisting the processing data in the first cache to an account book database under the condition that the current transaction processing is successful, and not persisting the processing data in the first cache to the account book database under the condition that the current transaction processing is failed.
9. An electronic device is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface are used for realizing mutual communication by the memory through the communication bus;
the memory is used for storing a computer program;
the processor, when executing a program stored in the memory, is adapted to perform the method steps of any of claims 1-7.
10. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 1 to 7.
CN202011335333.1A 2020-11-24 2020-11-24 Transaction processing method and device, electronic equipment and readable storage medium Pending CN112488833A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011335333.1A CN112488833A (en) 2020-11-24 2020-11-24 Transaction processing method and device, electronic equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011335333.1A CN112488833A (en) 2020-11-24 2020-11-24 Transaction processing method and device, electronic equipment and readable storage medium

Publications (1)

Publication Number Publication Date
CN112488833A true CN112488833A (en) 2021-03-12

Family

ID=74933915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011335333.1A Pending CN112488833A (en) 2020-11-24 2020-11-24 Transaction processing method and device, electronic equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN112488833A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114596092A (en) * 2022-02-24 2022-06-07 成都质数斯达克科技有限公司 Charging method, device and equipment based on block chain and readable storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829350A (en) * 2018-05-31 2018-11-16 阿里巴巴集团控股有限公司 Data migration method and device based on block chain
CN109144414A (en) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 The multistage storage method and device of block chain data
CN109726229A (en) * 2018-11-30 2019-05-07 深圳市元征科技股份有限公司 A kind of block chain date storage method and device
CN111383031A (en) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 Intelligent contract execution method and system in block chain and electronic equipment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829350A (en) * 2018-05-31 2018-11-16 阿里巴巴集团控股有限公司 Data migration method and device based on block chain
CN109144414A (en) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 The multistage storage method and device of block chain data
CN111897498A (en) * 2018-07-27 2020-11-06 创新先进技术有限公司 Multi-level storage method and device for block chain data
CN109726229A (en) * 2018-11-30 2019-05-07 深圳市元征科技股份有限公司 A kind of block chain date storage method and device
CN111383031A (en) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 Intelligent contract execution method and system in block chain and electronic equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114596092A (en) * 2022-02-24 2022-06-07 成都质数斯达克科技有限公司 Charging method, device and equipment based on block chain and readable storage medium

Similar Documents

Publication Publication Date Title
CN108829350B (en) Data migration method and device based on block chain
US10986177B2 (en) Systems and methods of self-forking blockchain protocol
CN109949111B (en) Electronic bill identification distribution method, electronic bill generation method, device and system
KR101959153B1 (en) System for efficient processing of transaction requests related to an account in a database
US20230283473A1 (en) Computer-implemented systems and methods relating to a binary blockchain comprising a pair of coupled blockchains
WO2020015533A1 (en) Transaction processing method and apparatus, and blockchain system
CN105787733B (en) Service information processing method and device
CN106462601A (en) Atomic writes for multiple-extent operations
CN106462544A (en) Session management in distributed storage systems
CN103970807B (en) Method and system for managing database connection
CN109783204A (en) A kind of distributed transaction processing method, device and storage medium
CN110008041B (en) Message processing method and device
CN112162846B (en) Transaction processing method, device and computer readable storage medium
CN103942011A (en) Differential snapshot system and use method thereof
CN111291062B (en) Data synchronous writing method and device, computer equipment and storage medium
CN112488833A (en) Transaction processing method and device, electronic equipment and readable storage medium
WO2016169420A1 (en) Method, device and system for querying service request execution state
CN110659303A (en) Read-write control method and device for database nodes
CN113626404B (en) Control method, device and medium for nested directory quota of distributed file system
CN113342274B (en) Data processing method and device
CN113450224B (en) Transaction processing method, device, equipment and storage medium based on UTXO model
CN114493598A (en) Computing resource management method, device, computer equipment and storage medium
CN109376001A (en) A kind of method and apparatus of resource allocation
CN113269625A (en) Work order processing method and device
CN111857548A (en) Data reading method, device and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination