CN109359222B - Data storage method and system, equipment and storage medium - Google Patents

Data storage method and system, equipment and storage medium Download PDF

Info

Publication number
CN109359222B
CN109359222B CN201810884035.4A CN201810884035A CN109359222B CN 109359222 B CN109359222 B CN 109359222B CN 201810884035 A CN201810884035 A CN 201810884035A CN 109359222 B CN109359222 B CN 109359222B
Authority
CN
China
Prior art keywords
index table
tree
global index
node
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810884035.4A
Other languages
Chinese (zh)
Other versions
CN109359222A (en
Inventor
王志文
吴思进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei 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 Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN201810884035.4A priority Critical patent/CN109359222B/en
Publication of CN109359222A publication Critical patent/CN109359222A/en
Priority to PCT/CN2019/099337 priority patent/WO2020029932A1/en
Application granted granted Critical
Publication of CN109359222B publication Critical patent/CN109359222B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Abstract

The invention provides a data storage method, a system, equipment and a storage medium, wherein the method comprises the following steps: a global index table corresponding to the mercker tree of each tile, and the mercker tree of each tile, is stored locally at each node of the blockchain network. The version number of the version is the block height, and the global index table is used for carrying out data query according to the block height. The invention provides a data query way for the system, which can directly query the global index table through the block height and can complete the query through one-time reading operation by configuring the corresponding global index table which takes the block height as the version number for the Mercker tree, thereby greatly improving the data reading performance of the system; and further optimizes the robustness of the system in the event of transaction congestion or node crash.

Description

Data storage method and system, equipment and storage medium
Technical Field
The present application relates to the field of block chaining technologies, and in particular, to a data storage method, system, device, and storage medium.
Background
In the current solution for reading and writing data in a block chain system, a Merkle Tree (Merkle Tree) structure is usually adopted, for example, spv verification is performed through the Merkle Tree in a bitcoin system, data reading and writing is performed through a Merkle Prefix Tree (MPT) in an etherhouse system, and the like.
The current scheme for data storage using the structure of the merkel tree has the drawbacks that:
the stored data limits the reading performance of the system, and the data of one transaction needs to be inquired through multiple reading operations. For example, for a 20-layer merkel tree, the query for the data of a leaf node needs 20 read operations to complete, resulting in that the efficiency of data query is only 1/20 of the query efficiency of a common database, and for a system capable of completing 10 ten thousand read operations per second, only 5000 transactions per second can be read.
Furthermore, the prior art needs to write the data of the mercker tree in the local database of the node before block consensus can be performed, which causes transaction congestion easily when the number of transactions increases dramatically.
In addition, if the data of the merkel tree is written in the local database of the node in the conventional scheme, the block cannot be generated.
Disclosure of Invention
In view of the above-mentioned deficiencies or inadequacies in the prior art, it would be desirable to provide a data storage method, system, device, and storage medium that improves system read performance by optimizing stored data structures, and further to optimize system robustness in the event of a transaction congestion or node crash.
In a first aspect, the present invention provides a data storage method, including:
a global index table corresponding to the mercker tree of each tile, and the mercker tree of each tile, is stored locally at each node of the blockchain network.
The global index table uses the block height as a version number and is used for carrying out data query according to the block height.
In a second aspect, the present invention provides a data storage system configured in a node of a blockchain network, including a first storage unit and a second storage unit.
The first storage unit is configured to locally store a global index table corresponding to a Mercker tree of each tile at a node;
the second storage unit is configured to store the merkel tree for each block locally at the node.
The global index table uses the block height as a version number and is used for carrying out data query according to the block height.
In a third aspect, the present invention also provides an apparatus comprising one or more processors and a memory, wherein the memory contains instructions executable by the one or more processors to cause the one or more processors to perform a data storage method provided according to embodiments of the present invention.
In a fourth aspect, the present invention also provides a storage medium storing a computer program that causes a computer to execute the data storage method provided according to the embodiments of the present invention.
The data storage method, the system, the equipment and the storage medium provided by the embodiments of the invention provide a data query path for the system, which can directly query the global index table through the block height and can complete the query through one-time reading operation, by configuring the corresponding global index table which takes the block height as the version number for the Merckel tree, thereby greatly improving the data reading performance of the system;
the data storage method, the system, the equipment and the storage medium provided by some embodiments of the invention further pack the block consensus after storing the data of the complete office index table and asynchronously store the data of the corresponding Mercker tree, so that the block congestion problem when the transaction amount is sharply increased can be greatly relieved, and the risk that the block cannot be generated due to node breakdown during data storage is reduced;
the data storage method, system, device and storage medium provided by some embodiments of the present invention further recover the merkel tree of each block through the global index table when the node crashes, so that it is not necessary to recover by synchronizing data with other nodes, thereby relieving the communication pressure between nodes;
the data storage method, the system, the device and the storage medium provided by some embodiments of the present invention further construct a tacle tree of the latest version by querying data obtained by the global index table, and perform hash packing consensus on root nodes, thereby ensuring the security of the global index table without performing consensus on the global index table;
the data storage method, system, device and storage medium provided by some embodiments of the present invention further record only the added or modified leaf nodes of the mercker tree in the global index table, thereby greatly reducing the data redundancy caused by configuring the global index table for multi-version mercker trees.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
FIG. 1 is a diagram illustrating a correspondence relationship between a multi-version Mercker tree and a global index table according to an embodiment of the present invention.
Fig. 2 is a flowchart of a data storage method according to a preferred embodiment of the present invention.
FIG. 3 is a flow chart of a preferred embodiment of the method shown in FIG. 2.
Fig. 4 is a schematic structural diagram of a data storage system according to an embodiment of the present invention.
Fig. 5 is a schematic diagram of a preferred embodiment of the system of fig. 4.
Fig. 6 is a schematic structural diagram of an apparatus according to an embodiment of the present invention.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the present invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
In this embodiment, the present invention provides a data storage method, including:
s10: a global index table corresponding to the mercker tree of each tile, and the mercker tree of each tile, is stored locally at each node of the blockchain network.
The global index table uses the block height as a version number and is used for carrying out data query according to the block height.
Specifically, in this embodiment, the merkel Tree is specifically configured as a merkel State Tree (Merkle State Tree), is highly configured as 20 layers, and is stored in a key-value database local to a node, and the global index table is stored in another database local to the node; in further embodiments, the merkel tree may be configured as a merkel tree of other different types commonly used in the art, with different heights, stored in a database of other different types commonly used in the art local to the node, and the merkel tree and the global index table may also be stored in the same database, all of which may achieve the same technical effect.
FIG. 1 is a diagram illustrating a correspondence relationship between a multi-version Mercker tree and a global index table according to an embodiment of the present invention.
As shown in fig. 1, taking a 3-level merkel binary state tree as an example, in the node a, when a block with a block height H of 9 is packed with a stroke K4Account making payment (or receipt)Money), balance is V4Becomes V4When trading of' is:
in step S10, on the one hand, a leaf node H is newly added to the kv database local to the a node4', and adding the corresponding index node H34' and root node H1234', wherein H4' is (K)4,V4') a hash value;
on the other hand, the global index table is updated in another database local to the node A, and a record (K) with the version number of 9 is added4,V4′)。
The above-mentioned memory of the merkel tree and the global index table may be performed synchronously or asynchronously, and the preferred scheme of asynchronously performing memory will be described in detail below with reference to fig. 2 to 4.
In this embodiment, the replaced leaf node and index node are retained in the database, so as to facilitate data rollback in scenarios such as block chain branching; in other embodiments, the replaced leaf node and index node may be configured to be directly deleted or cleaned after passing through several block heights according to different schemes of actual configuration, so that the same technical effect may be achieved.
Obviously, after the corresponding global index table is configured for the merkel tree of each block through the storage method, the required data can be directly queried in the global index table through the height of the block without reading and querying the merkel tree layer by layer according to the root node hash of the merkel tree.
As shown in fig. 1, in this embodiment, the global index table is configured to record, in each version, only new or modified leaf nodes in the current version of the merkel tree, and no longer repeatedly record leaf nodes that are not modified; if the target data is not found at the height of the searched block by the query, the target data can be searched in a sliding manner through a pointer of the database;
in another embodiment, the global index table may also be configured to record in each version all leaf nodes of the current version of the merkel tree; in this embodiment, the query may directly find the target data through the block height.
In the embodiment, the corresponding global index table which takes the block height as the version number is configured for the Mercker tree, so that a data query way which can directly query the global index table through the block height and can complete the query through one-time reading operation is provided for the system, and the data reading performance of the system is greatly improved; and further, only the newly added or modified leaf nodes of the Mercker tree are recorded in the global index table, so that the data redundancy caused by configuring the global index table for a multi-version Mercker tree is greatly reduced.
Fig. 2 is a flowchart of a data storage method according to a preferred embodiment of the present invention.
As shown in fig. 2, in a preferred embodiment, step S10 includes:
s101: constructing the Mercker tree of the latest version;
s103: generating or updating a global index table in a first database local to the node according to the Mercker tree of the latest version, and generating storage completion information of the global index table, so that a consensus unit in the node hashes and packages root nodes of the Mercker tree of the latest version into a block for consensus;
s105: the merkel tree for each block is generated or updated in a second database local to the node according to the merkel tree of the latest version.
Preferably, step S101 includes: inquiring business data required by transaction through the global index table; and constructing the latest version of the Mercker tree according to the business data and the transaction.
Specifically, in step S101, when a transaction adds a leaf node in the merkel tree, for example, when the block height H is 22, the user a opens a new account K11Without making a balance V11The query is that the leaf nodes and the corresponding index nodes are added in the memory directly;
when a transaction modifies a leaf node in the Mercker tree, e.g., block height H23, account K of user B4Account K with user c6When a transaction occurs, the account K needs to be inquired through the global index table4Balance V of4And account K6Balance V of6(ii) a Then according to V4And V6And calculating the amount of the transaction to obtain a post-transaction account K4Balance V of4', and account K6Balance V of6' and then adding corresponding leaf nodes and index nodes in the memory to complete the construction of the Mercker tree of the latest version.
In step S103, a global index table is generated or updated in the first database local to the node according to the latest version of the mercker tree constructed in the memory in step S101, and after the first database writes the full local index table, storage completion information is generated, so as to notify the consensus unit in the node that the block packing can be performed. After receiving the notification, the consensus unit hashes and packages the root node of the Mercker tree of the latest version into the block, and then performs consensus on the packaged block broadcast.
If the global index table stored locally in the node is tampered to cause the inquired balance before transaction to be incorrect, the calculated balance after transaction and the root node hash of the latest version of the Mercker tree are incorrect, so that the packed blocks cannot pass the consensus; therefore, the method can ensure that the global index table stored locally by the node does not need to be identified by common knowledge, but only the blocks generated according to the correct global index table can be identified by common knowledge.
In step S105, when the number of transactions that need to be packaged and identified is less, the data storage of step S105 may be performed synchronously with step S103; when the number of transactions is large and the amount of data of the merkel tree to be stored exceeds the storage performance bottleneck of the system, the data storage of step S105 may be performed asynchronously with step S103.
For example, the system may store 5000 transactions per second of data of the mercker tree, but the node receives 20000 transactions per second in the peak period, because the data volume of the global index table is small, the data storage of step S103 may be completed in real time and the block may be packed for consensus, and the data storage of step S105 may be performed asynchronously after the peak period.
Meanwhile, the data volume of the global index table is small, the storage time consumption is short, and the probability of node crash before the storage of the global index table is completed is low, so that the risk that a block cannot be generated due to node crash when data is stored can be greatly reduced.
The embodiment further packages the block consensus after storing the data of the complete office index table, and asynchronously stores the data of the corresponding Mercker tree, so that the block congestion problem when the transaction amount is increased greatly can be relieved, and the risk that the block cannot be generated due to node breakdown during data storage is reduced; and furthermore, a latest version of the Merck tree is constructed by querying data obtained by the global index table, and the root nodes are subjected to Hash packaging consensus, so that the safety of the global index table can be ensured without performing consensus on the global index table.
FIG. 3 is a flow chart of a preferred embodiment of the method shown in FIG. 2. As shown in fig. 3, in a preferred embodiment, step S103 is followed by:
s107: and after the node crashes, restoring the Merckel tree of each block in the second database according to the global index table.
Specifically, when a node crash occurs before the data storage of the mercker tree after the data storage of the global index table is completed, or the node crash occurs during the data storage of the mercker tree, the mercker tree of each block can be recovered in the second database through the global index table.
The above embodiment further relieves the communication pressure between nodes by restoring the merkel tree of each block through the global index table when the nodes crash, thereby eliminating the need for restoring by synchronizing data to other nodes.
Fig. 4 is a schematic structural diagram of a data storage system according to an embodiment of the present invention. The system shown in fig. 4 may correspondingly perform the method including step S10 described above.
As shown in fig. 4, in the present embodiment, the present invention provides a data storage system 10, configured in a node 20 of a blockchain network, and including a first storage unit 101 and a second storage unit 103.
The first storage unit 101 is configured to locally store, at a node, a global index table corresponding to the merkel tree of each tile;
the second storage unit 103 is configured to store the mercker tree of each block locally at the node.
The global index table uses the block height as a version number and is used for carrying out data query according to the block height.
The data storage principle of the system shown in fig. 4 can refer to the method including step S10, and is not described herein again.
Fig. 5 is a schematic diagram of a preferred embodiment of the system of fig. 4. The system shown in fig. 5 may perform the methods shown in fig. 2-3, respectively.
As shown in FIG. 5, in a preferred embodiment, data storage system 10 further includes build unit 105.
The building unit 105 is configured to build the latest version of the merkel tree;
the first storage unit 101 is further configured to generate or update a global index table in a first database local to the node 20 according to the latest version of the merkel tree, and generate storage completion information of the global index table, so that the consensus unit in the node 20 hashes and packages the root node of the merkel tree of the latest version into a block for consensus;
the second storage unit 103 is further configured to generate or update the mercker tree of each block in a second database local to the node 20 according to the latest version of the mercker tree.
Preferably, the second storage unit 103 is further configured to recover the mercker tree of each block in the second database according to the global index table after the node 20 crashes.
Preferably, the building unit 105 is further configured to query the business data required for the transaction through the global index table, and build the latest version of the mercker tree according to the business data and the transaction.
Preferably, the first storage unit 101 is further configured to record, in each version of the global index table, only leaf nodes newly added or modified in the merkel tree of the current version.
The data storage principle of the system shown in fig. 5 can refer to the methods shown in fig. 2-3, and the details are not repeated here.
Fig. 6 is a schematic structural diagram of an apparatus according to an embodiment of the present invention.
As shown in fig. 6, as another aspect, the present application also provides an apparatus 600 including one or more Central Processing Units (CPUs) 601 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)602 or a program loaded from a storage section 608 into a Random Access Memory (RAM) 603. In the RAM603, various programs and data necessary for the operation of the apparatus 600 are also stored. The CPU601, ROM602, and RAM603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
The following components are connected to the I/O interface 605: an input portion 606 including a keyboard, a mouse, and the like; an output portion 607 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage section 608 including a hard disk and the like; and a communication section 609 including a network interface card such as a LAN card, a modem, or the like. The communication section 609 performs communication processing via a network such as the internet. The driver 610 is also connected to the I/O interface 605 as needed. A removable medium 611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 610 as necessary, so that a computer program read out therefrom is mounted in the storage section 608 as necessary.
In particular, according to an embodiment of the present disclosure, the data storage method described in any of the above embodiments may be implemented as a computer software program. For example, embodiments of the present disclosure include a computer program product comprising a computer program tangibly embodied on a machine-readable medium, the computer program containing program code for performing a data storage method. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 609, and/or installed from the removable medium 611.
As yet another aspect, the present application also provides a computer-readable storage medium, which may be the computer-readable storage medium included in the apparatus of the above-described embodiment; or it may be a separate computer readable storage medium not incorporated into the device. The computer readable storage medium stores one or more programs for use by one or more processors in performing the data storage methods described herein.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units or modules described in the embodiments of the present application may be implemented by software or hardware. The described units or modules may also be provided in a processor, for example, each of the described units may be a software program provided in a computer or a mobile intelligent device, or may be a separately configured hardware device. Wherein the designation of a unit or module does not in some way constitute a limitation of the unit or module itself.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the present application. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (10)

1. A method of storing data, comprising:
inquiring business data required by transaction through the global index table;
constructing a latest version of the Mercker tree according to the business data and the transaction;
generating or updating a global index table in a first database local to a node according to the Mercker tree of the latest version, and generating storage completion information of the global index table, so that a consensus unit in the node hashes and packages root nodes of the Mercker tree of the latest version into a block for consensus;
generating or updating the Merck tree of each block in a second database local to the node according to the Merck tree of the latest version;
the global index table takes the block height as a version number and is used for carrying out data query according to the block height.
2. The method according to claim 1, wherein the generating or updating a global index table in a first database local to a node according to the latest version of the merkel tree and generating storage completion information of the global index table for a consensus unit in the node to hash and pack a root node of the latest version of the merkel tree into a block for consensus further comprises:
and after the node crashes, restoring the Mercker tree of each block in the second database according to the global index table.
3. The method according to any of claims 1-2, wherein the global index table records in each version only leaf nodes that are added or modified in the merkel tree of the current version.
4. The method according to any of claims 1-2, characterized in that the merkel tree is a merkel state tree, stored in a key-value database.
5. A data storage system configured in a node of a blockchain network, comprising:
the construction unit is configured to query business data required by transaction through a global index table, and construct a Merck tree of the latest version according to the business data and the transaction;
a first storage unit, configured to generate or update a global index table in a first database local to a node according to the latest version of the merkel tree, and generate storage completion information of the global index table, so that a consensus unit in the node hashes and packages a root node of the latest version of the merkel tree into a block for consensus;
a second storage unit configured to generate or update the mercker tree of each block in a second database local to the node according to the mercker tree of the latest version;
the global index table takes the block height as a version number and is used for carrying out data query according to the block height.
6. The system according to claim 5, wherein the second storage unit is further configured to recover the Mercker tree of each chunk in the second database according to the global index table after the node crashes.
7. The system according to any one of claims 5 to 6, wherein the first storage unit is further configured to record, in each version of the global index table, only leaf nodes newly added or modified in the Mercker tree of the current version.
8. The system according to any of claims 5-6, characterized in that the Mercker tree is a Mercker state tree, stored in a key-value database.
9. An electronic device, characterized in that the electronic device comprises:
one or more processors;
a memory for storing one or more programs,
the one or more programs, when executed by the one or more processors, cause the one or more processors to perform the method recited in any of claims 1-4.
10. A storage medium storing a computer program, characterized in that the program, when executed by a processor, implements the method according to any one of claims 1-4.
CN201810884035.4A 2018-08-06 2018-08-06 Data storage method and system, equipment and storage medium Active CN109359222B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810884035.4A CN109359222B (en) 2018-08-06 2018-08-06 Data storage method and system, equipment and storage medium
PCT/CN2019/099337 WO2020029932A1 (en) 2018-08-06 2019-08-06 Method for data storage, system, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810884035.4A CN109359222B (en) 2018-08-06 2018-08-06 Data storage method and system, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN109359222A CN109359222A (en) 2019-02-19
CN109359222B true CN109359222B (en) 2021-07-06

Family

ID=65349829

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810884035.4A Active CN109359222B (en) 2018-08-06 2018-08-06 Data storage method and system, equipment and storage medium

Country Status (2)

Country Link
CN (1) CN109359222B (en)
WO (1) WO2020029932A1 (en)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359222B (en) * 2018-08-06 2021-07-06 杭州复杂美科技有限公司 Data storage method and system, equipment and storage medium
CN109933592B (en) * 2019-03-22 2021-06-01 杭州复杂美科技有限公司 Data storage method, data rollback method, device and storage medium
CN109977274B (en) * 2019-03-31 2021-05-11 杭州复杂美科技有限公司 Data query and verification method, system, equipment and storage medium
CN109992998A (en) * 2019-03-31 2019-07-09 杭州复杂美科技有限公司 A kind of information storage means and system, equipment and storage medium
CN110096505B (en) * 2019-03-31 2021-05-11 杭州复杂美科技有限公司 Data storage method, system, equipment and storage medium
CN110008233A (en) * 2019-03-31 2019-07-12 杭州复杂美科技有限公司 A kind of information inquiry and know together method, system, equipment and storage medium
US10789222B2 (en) 2019-06-28 2020-09-29 Alibaba Group Holding Limited Blockchain-based hierarchical data storage
CN110334154B (en) * 2019-06-28 2020-07-21 阿里巴巴集团控股有限公司 Block chain based hierarchical storage method and device and electronic equipment
US11036720B2 (en) 2019-06-28 2021-06-15 Advanced New Technologies Co., Ltd. Blockchain-based hierarchical data storage
CN110287170B (en) * 2019-06-28 2021-05-11 杭州复杂美科技有限公司 Database upgrading method, state data calling method, device and storage medium
CN110442577A (en) * 2019-07-15 2019-11-12 杭州复杂美科技有限公司 A kind of storage of status data, inquiry and management method, equipment and storage medium
CN110557277A (en) * 2019-07-25 2019-12-10 北京清红微谷技术开发有限责任公司 method and system for searching nearest common ancestor of two blocks in block chain system
CN110493325B (en) * 2019-07-31 2020-12-29 创新先进技术有限公司 Block chain state data synchronization method and device and electronic equipment
US11113272B2 (en) 2019-07-31 2021-09-07 Advanced New Technologies Co., Ltd. Method and apparatus for storing blockchain state data and electronic device
CN110704506B (en) * 2019-09-24 2022-05-24 杭州复杂美科技有限公司 State data storage method and data query method
CN110716965B (en) * 2019-09-25 2022-02-25 蚂蚁区块链科技(上海)有限公司 Query method, device and equipment in block chain type account book
CN113329031B (en) * 2019-10-10 2023-06-13 深圳前海微众银行股份有限公司 Method and device for generating state tree of block
CN111026770B (en) * 2019-10-29 2023-08-04 京东科技信息技术有限公司 Ledger processing method and device of blockchain node, server and storage medium
CN111488611B (en) * 2020-04-08 2021-06-22 北京瑞策科技有限公司 Relation data storage method and device of business data block chain
CN111488343A (en) * 2020-04-08 2020-08-04 北京瑞策科技有限公司 E-commerce data uplink method and device based on business data block chain
CN111523896B (en) * 2020-05-06 2023-05-30 杭州复杂美科技有限公司 Attack prevention method, apparatus and storage medium
CN111756639B (en) * 2020-06-19 2022-05-10 杭州芯讯科技有限公司 Mirror image data transmission method based on Merckel tree and broadcast self-request
CN112269791B (en) * 2020-11-30 2024-04-05 上海特高信息技术有限公司 Block chain account book processing method
CN112364209B (en) * 2020-12-09 2023-11-28 杭州复杂美科技有限公司 Distributed data storage method, data query method, device and storage medium
CN113419973B (en) * 2021-06-17 2023-05-26 杭州迪普科技股份有限公司 Message forwarding method and device
CN113704271A (en) * 2021-09-03 2021-11-26 杭州复杂美科技有限公司 Mercker tree generation method, illegal node identification method, equipment and storage medium
CN114356927A (en) * 2021-12-31 2022-04-15 杭州趣链科技有限公司 Data storage method and device, computer equipment and storage medium

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201511964D0 (en) * 2015-07-08 2015-08-19 Barclays Bank Plc Secure digital data operations
US9960920B2 (en) * 2016-01-26 2018-05-01 Stampery Inc. Systems and methods for certification of data units and/or certification verification
CN105630609B (en) * 2016-02-24 2021-05-11 杭州复杂美科技有限公司 Block chain packing storage method
CN106372533B (en) * 2016-09-14 2020-04-21 中国银联股份有限公司 Content storage method based on block chain technology
CN107040582B (en) * 2017-02-17 2020-08-14 创新先进技术有限公司 Data processing method and device
CN107562775B (en) * 2017-07-14 2020-04-24 创新先进技术有限公司 Data processing method and device based on block chain
CN107807951B (en) * 2017-09-18 2020-10-13 联动优势科技有限公司 Block chain generation method, data verification method, node and system
CN108023896B (en) * 2017-12-28 2020-09-08 江苏通付盾科技有限公司 Block synchronization method and system
CN108197226A (en) * 2017-12-29 2018-06-22 山大地纬软件股份有限公司 MPTC account status tree and MPTC block chain method for quickly retrieving
CN108345485B (en) * 2018-01-30 2021-05-07 口碑(上海)信息技术有限公司 Identification method and device for interface view
CN109408551B (en) * 2018-08-06 2021-07-06 杭州复杂美科技有限公司 Data query method and system, consensus method and system, device and storage medium
CN109359222B (en) * 2018-08-06 2021-07-06 杭州复杂美科技有限公司 Data storage method and system, equipment and storage medium

Also Published As

Publication number Publication date
CN109359222A (en) 2019-02-19
WO2020029932A1 (en) 2020-02-13

Similar Documents

Publication Publication Date Title
CN109359222B (en) Data storage method and system, equipment and storage medium
CN109408551B (en) Data query method and system, consensus method and system, device and storage medium
CN110471795B (en) Block chain state data recovery method and device and electronic equipment
US9367598B2 (en) Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation
US11442920B2 (en) Graph database system
CN111444196B (en) Method, device and equipment for generating Hash of global state in block chain type account book
US10761948B1 (en) Method, apparatus, and electronic device for restoring state data of blockchain
TWI730690B (en) Method and device for simultaneously executing transactions in block chain, computer readable storage medium and computing equipment
JP6491605B2 (en) Manage operations on stored data units
CN111444192B (en) Method, device and equipment for generating Hash of global state in block chain type account book
JP2016517066A (en) Manage operations on stored data units
US11223471B2 (en) Blockchain-type data storage
US20170371571A1 (en) Efficient erasure coding of large data objects
CN106776795B (en) Data writing method and device based on Hbase database
US10423625B2 (en) Exactly-once semantics for streaming analytics in non-idempotent output operations
CN114780285A (en) Block chain data recovery method and device and electronic equipment
CN109614411B (en) Data storage method, device and storage medium
KR102179669B1 (en) Checkpointing a collection of data units
EP4244731B1 (en) Storing and searching for data in data stores
WO2024082693A1 (en) Data processing method, and apparatus
CN117785900A (en) Data updating method, device, computer equipment and storage medium
AU2022203716A1 (en) Storing and searching for data In data stores
GB2615317A (en) Storing and searching for data in data stores
WO2023073414A1 (en) Storing and searching for data in data stores
EP4193267A1 (en) Storing and searching for data in data stores

Legal Events

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