CN111209341B - Data storage method, device, equipment and medium of block chain - Google Patents

Data storage method, device, equipment and medium of block chain Download PDF

Info

Publication number
CN111209341B
CN111209341B CN202010014310.4A CN202010014310A CN111209341B CN 111209341 B CN111209341 B CN 111209341B CN 202010014310 A CN202010014310 A CN 202010014310A CN 111209341 B CN111209341 B CN 111209341B
Authority
CN
China
Prior art keywords
node
data
tree structure
determining
processed
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
CN202010014310.4A
Other languages
Chinese (zh)
Other versions
CN111209341A (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.)
Beijing Peersafe Technology Co ltd
Original Assignee
Beijing Peersafe 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 Beijing Peersafe Technology Co ltd filed Critical Beijing Peersafe Technology Co ltd
Priority to CN202010014310.4A priority Critical patent/CN111209341B/en
Publication of CN111209341A publication Critical patent/CN111209341A/en
Application granted granted Critical
Publication of CN111209341B publication Critical patent/CN111209341B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2219Large Object storage; Management thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application discloses a data storage method, a device, equipment and a medium of a block chain, wherein the method comprises the following steps: calculating an abstract value of the obtained data to be processed; determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure; and storing the data to be processed to the storage position in the tree structure. The method can calculate the abstract value of the data to be processed, and directly determine the storage position of the data to be processed in the tree structure according to the abstract value and the node type, so that the data to be processed is stored, the addressing process of the data is simplified to a great extent, the storage position of the data to be processed can be rapidly determined, and the storage efficiency of the data in the block chain is improved.

Description

Data storage method, device, equipment and medium of block chain
Technical Field
The present invention relates generally to the field of blockchain technology, and more particularly, to a method, an apparatus, a device, and a medium for storing blockchain data.
Background
The block chain is a novel application mode of computer technologies such as distributed data storage, point-to-point transmission, a consensus mechanism, an encryption algorithm and the like, is essentially a decentralized database and consists of a series of data blocks which are generated by correlation through a cryptography method, each data block contains data information of a batch of transactions, and efficient management and storage of block data are very important in order to ensure that each transaction is carried out orderly.
Different data storage structures are adopted in the current block chain network to store node data in different blocks, for example, a merkel Tree (Merkle Tree) structure is adopted in a bitcoin system, and a merkel prefix Tree (Merkle Patricia Tree, abbreviated as MPT) is adopted in an etherhouse system to read and write data.
However, all data of the merkel tree structure are stored in the leaf node at the bottom layer, the more data, the more tree levels, the more intermediate nodes, and the position of the data cannot be located only by the digest value, while each node of the MPT tree has both the digest value and the value, and the digest value of the next node is included in the value, and since the digest value is not separated from the data, the position of the data in the tree structure cannot be quickly determined.
Disclosure of Invention
In view of at least one of the above-mentioned drawbacks and deficiencies in the prior art, it is desirable to provide a method, an apparatus, a device, and a medium for storing data in a block chain, which can determine a storage location of data to be processed in a tree structure directly according to a digest value, and greatly simplify an addressing process of the data.
In a first aspect, the present invention provides a data storage method for a block chain, where the method includes:
calculating a summary value of the acquired data to be processed;
determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure;
and storing the data to be processed to the storage position in the tree structure.
In one embodiment, determining the storage location of the data to be processed in the tree structure according to the digest value and the node type in the tree structure includes:
grouping the abstract values according to a preset rule, and determining a plurality of grouping values and a sequence number corresponding to each grouping value, wherein the sequence numbers correspond to layer numbers of the tree structure one by one;
sequentially comparing the packet value corresponding to the sequence number with a position identifier corresponding to at least one node in a tree structure according to the sequence from small to large of the sequence number, and determining whether a first position identifier exists in the position identifier, wherein the position identifier corresponding to the at least one node is positioned on the same layer in the tree structure, and the first position identifier is equal to the packet value corresponding to the sequence number;
when the first position identification exists, determining the node type of a first node corresponding to the first position identification, and determining the storage position of the data to be processed in the tree structure based on the node type.
In one embodiment, determining the node type of the first node corresponding to the first location identity comprises:
judging whether a child node exists in the first node;
when the first node does not have a child node, determining that the node type is a leaf node;
and when the child node exists in the first node, determining that the node type is an intermediate node.
In one embodiment, when the first node is a leaf node, determining a storage location of the to-be-processed data in the tree structure based on the node type includes:
determining whether the leaf node stores data;
when the leaf node stores data, the leaf node is used as a father node to generate two child nodes;
and determining the storage position of the data to be processed in the tree structure based on the two child nodes.
In one embodiment, when the first node is an intermediate node, determining a storage location of the to-be-processed data in the tree structure based on the node type includes:
adding one to the layer number corresponding to the intermediate node to determine the current layer number;
determining a grouping value corresponding to a sequence number equal to the current layer number in the digest value;
comparing the grouping value corresponding to the sequence number with a position identifier corresponding to at least one node in the tree structure, wherein the position identifier corresponding to the at least one node is positioned at the current layer of the tree structure;
and when the position identifier corresponding to at least one node in the current layer has a first position identifier and the node type of the node corresponding to the first position identifier is a leaf node, determining the storage position of the data to be processed in the tree structure.
In one embodiment, after determining whether the first location identifier exists in the location identifiers, the method further comprises:
when the first position identification does not exist in the position identification, generating branch nodes in a tree structure layer corresponding to the layer number with the same sequence number value;
and determining the position of the branch node as the storage position of the data to be processed in the tree structure.
In a second aspect, the present invention provides a block chain storage device, comprising:
the calculation module is used for calculating a summary value of the acquired data to be processed;
the determining module is used for determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure;
and the storage module is used for storing the data to be processed to the storage position in the tree structure.
In a third aspect, an embodiment of the present application provides a computer device, which includes a memory and a processor, where the memory stores a computer program, and the processor implements the data storage method of the block chain when executing the computer program.
In a fourth aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the data storage method of the block chain.
To sum up, in the data storage method for the block chain provided by the present application, the digest value is calculated for the obtained to-be-processed data, the storage location of the to-be-processed data in the tree structure is determined according to the digest value and the node type in the tree structure, and the to-be-processed data is stored in the storage location in the tree structure. According to the technical scheme, the abstract value of the data to be processed can be calculated, the storage position of the data to be processed in the tree structure is determined directly according to the abstract value and the node type, and therefore the data to be processed is stored.
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 schematic flowchart of a data storage method for a block chain according to an embodiment of the present disclosure;
fig. 2 is a schematic structural diagram of a tree structure provided in an embodiment of the present application;
fig. 3 is a schematic flowchart of a data storage method for a block chain according to an embodiment of the present disclosure;
FIG. 4 is a schematic structural diagram illustrating a determination of storage locations of data A and data B in a tree structure according to an embodiment of the present application;
fig. 5 is a schematic flowchart of a data storage method for a block chain according to an embodiment of the present application;
FIG. 6 is a schematic structural diagram illustrating a determination of storage locations of data A and data C in a tree structure according to an embodiment of the present application;
FIG. 7 is a schematic structural diagram of a data storage device of a blockchain according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a computer system according to an embodiment of the present application.
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 invention and are not to be construed as limiting 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.
As mentioned in the background art, each transaction data and each user data in the blockchain network exist in the form of key value pairs { key, value }, the current blockchain network stores node data of different blocks by using different data storage structures, for example, a bitcoin system is realized by a blockway and a chain structure based on a Merkel tree structure, stores transaction records in data blocks, and an ethernet system uses an MPT tree structure. However, the data in the Merkel tree structure is stored in the leaf node at the bottom layer, and the number of intermediate nodes is too many, so that the tree structure has many levels, and the storage position of the data in the tree structure cannot be located only according to the abstract value of a certain data node; each node of the MPT tree stores both a digest value and a value, and the value includes the digest value of the next-level node, and the storage location of the data in the tree structure cannot be determined because the digest value is not separated from the data.
Based on the above defects, the present application provides a data storage method for a block chain, which calculates a digest value of acquired to-be-processed data, determines a storage location of the to-be-processed data in a tree structure according to the digest value and a node type in the tree structure, and stores the to-be-processed data to the storage location in the tree structure. Compared with the prior art, the method can directly calculate the abstract value of the data to be processed, and quickly determine the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure, thereby greatly reducing the existence of intermediate nodes, simplifying the addressing process of the data to a great extent, and improving the storage efficiency of the data in the block chain.
For convenience of understanding and explanation, a data storage method, an apparatus, a device, and a medium of a block chain according to an embodiment of the present application are described in detail below with reference to fig. 1 to 8.
Fig. 1 is a schematic flow chart of a data storage method of a block chain according to an embodiment of the present application.
As shown in fig. 1, the method includes:
and step S101, calculating a summary value of the acquired data to be processed.
Specifically, when data of a single node in the blockchain network needs to be stored, to-be-processed data is acquired first, where the to-be-processed data may be a transaction record, and optionally, one or more data to be processed may be acquired. And after the data to be processed is obtained, carrying out hash algorithm operation on the data to be processed, and calculating to obtain an abstract value.
The abstract value is usually represented by a short character string composed of random letters and numbers, is a group of data fingerprints obtained by hashing algorithm for input information with any length, is also called a hash value, is represented by a binary form in a bottom machine code of a computer, can convert input data to be processed with any length into output data with a fixed length by using a hash function, and obtains the abstract value corresponding to the data to be processed by the output data. Alternatively, common hash functions may be: direct addressing, numerical analysis, square-of-middle, random number, etc. The digest length of the obtained digest value is 256 bits, and 32 bytes in total.
And S102, determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure.
And step S103, storing the data to be processed to a storage position in the tree structure.
Specifically, after calculating the digest value of the acquired data to be processed, the data to be processed is stored in the tree structure according to the digest value, and the storage location of the data to be processed in the tree structure may be determined according to the digest value and the node type corresponding to the node in the tree structure.
Referring to fig. 2, the tree structure is an inverted tree structure and may include a root node, an intermediate node, and a leaf node, where the root node has no parent node, a node having a child node is referred to as an intermediate node, the root node is a special intermediate node, a node having no child node is referred to as a leaf node, and data is stored in the leaf node. The tree structure can have 65 layers at most, the root node is the 0 th layer, the node layer number can be sequentially increased and can be increased to the 64 th layer at most, the number of child nodes of the middle node can be more than or equal to 2 and less than or equal to 16, the abstract value in the tree structure is 256 bits, and each character represents 4 bits.
It should be noted that each node in the tree structure has a corresponding digest value, also referred to as a key value, which is expressed in a form of { depth, id }, where depth represents a layer number of the current node in the tree structure, id represents a location identifier of a location where the current node is located in the tree structure, and the length of the id value may be 256 bits, and each 8 bits is one byte, which is 32 bytes in total. The root node is a special intermediate node, and the key value of the root node is {0, uint256 (0) }, i.e., depth of the root node is 0, id is 0, and the root node is located at the 0 th level of the tree structure. The id value of the leaf node is determined by the id value of the father node and the branch where the leaf node is located.
After the digest value of the data to be processed is determined, the node type corresponding to the digest value and the node in the tree structure may be searched layer by layer from the root node of the tree structure, so as to determine the storage location of the data to be processed in the tree structure, and store the data to be processed in the tree structure, where the time complexity of addressing the data is O (log (n)), and n is the number of data stored in the tree structure.
In the embodiment of the application, the abstract value is calculated for the acquired data to be processed, the storage position of the data to be processed in the tree structure is determined according to the abstract value and the node type in the tree structure, and the data to be processed is stored in the storage position in the tree structure. According to the technical scheme, the abstract value of the data to be processed can be calculated, and the storage position of the data to be processed in the tree structure is directly determined according to the abstract value and the node type, so that the data to be processed is stored.
As an implementation manner, on the basis of the foregoing embodiment, fig. 3 is a schematic flowchart of a method for determining a storage location of to-be-processed data in a tree structure according to an embodiment of the present application, and as shown in fig. 3, the method includes:
step S201, grouping the digest values according to a preset rule, and determining a plurality of group values and a sequence number corresponding to each group value, where the sequence numbers correspond to the layer numbers of the tree structure one by one.
Specifically, the digest value obtained by calculating the data to be processed through the hash algorithm may be 256 bits, and the expression form of the digest value is { depth, id }, and after the digest value of the data to be processed is determined, the digest value may be grouped according to a preset rule to obtain a plurality of grouping values and a sequence number corresponding to each grouping value, where the preset rule may be a group of 4 bits, and the sequence number of each grouping value in the digest value corresponds to a layer number in the tree structure.
Illustratively, when the digest value of the data to be processed is 1010 0001 0010 01000000.. 0000, the digest value has 256 bits in total, the group values obtained by grouping the digest value are 1010, 0001, 0010, 0100, 0000.. And 0000, respectively, the sequence number corresponding to each group value is 1,2,3,4, 5.. And 64 in sequence, and the group values correspond to the 1 st, 2 nd, 3 rd, 4 th, 5 th, 64 th layers of the tree structure in sequence, the highest four bits represent the 1 st layer, the lowest four bits represent the 64 th layer, and each group value corresponds to the branch value of its parent node.
For example, when the parent node is the root node, the current node is in the first layer and belongs to the 13 th branch of the root node, and the corresponding id value is 0x1101000000000000000000000000000000000000000000000000000000000000, if the id of the 10 th child node of the node is to be determined, the node id is used as a basis, and if the layer where the child node is located is the 2 nd layer, the second group of data is changed to a, and the final id value is: 0x1101101000000000000000000000000000000000000000000000000000000000。
Step S202, comparing the grouping value corresponding to the serial number with the position identification corresponding to at least one node in the tree structure in sequence according to the sequence from small to large of the serial number, and determining whether a first position identification exists in the position identification, wherein the position identification corresponding to the at least one node is positioned in the same layer in the tree structure, and the grouping values corresponding to the first position identification and the serial number are equal.
Step S203, when the first position identification exists, determining the node type of the first node corresponding to the first position identification, and determining the storage position of the data to be processed in the tree structure based on the node type.
It should be noted that after the digest values are grouped and a plurality of group values and corresponding sequence numbers are determined, the group values corresponding to the sequence numbers and the position identifier corresponding to at least one node in the same layer of the tree structure may be sequentially compared in order from the smaller sequence numbers to the larger sequence numbers to determine whether a first position identifier exists in the position identifier, where a layer number corresponding to the position identifier of at least one node in the same layer of the tree structure is the same as the sequence number corresponding to the group value, and the first position identifier is the same as the group value corresponding to the sequence number.
Further, when it is determined that the first location identifier does not exist in the location identifiers, a branch node is generated in the tree structure layer corresponding to the layer number equal to the sequence number, and the location of the branch node is determined as the storage location of the data to be processed in the tree structure.
When the first position identification exists, determining the node type of a first node corresponding to the first position identification, and determining the storage position of the data to be processed in the tree structure based on the node type of the first node, wherein the first node is the node which has the same sequence number corresponding to the packet value in the tree structure and the position identification is equal to the packet value corresponding to the sequence number.
The node type of the first node corresponding to the first location identity may be determined first, whether a child node exists in the first node is determined first, if the child node does not exist in the first node, the node type corresponding to the first node is determined to be a leaf node, and if the child node exists in the first node, the node type corresponding to the first node is an intermediate node.
Optionally, when it is determined that the first node is a leaf node, it may be determined whether data is stored in the leaf node, if data is stored in the leaf node, the digest values of the data and the data to be processed are represented, after the data is divided into a group by every 4 bits, the data in the group corresponding to the current layer is the same, the data is used as old data, a node position of the old data is used as a middle node position, and a position identifier corresponding to the position is used as a position identifier of the middle node, the leaf node is used as the middle node, and the middle node is used as a parent node to generate two child nodes, and the storage positions of the data to be processed and the old data are determined based on the two child nodes, if the storage positions of the old data and the data to be processed are still overlapped, that is, a current branch calculated by the old data and the data to be processed is the same, a current position node corresponding to the branch is continuously changed into one middle node, and the position of the data to be processed in the tree structure is further determined until the old data and the data to be processed are stored in different storage positions of the tree structure, respectively.
Illustratively, as shown in fig. 4, when data a and data B need to be stored in the tree structure, the digest value of the data a is 0x819648500000000 0000000000000000000000000000000000000000000000000000 00000000, and the digest value of data B is 0x839648500000000 0000000000000000 000000000000, wherein each digital character of the digest represents a 4-bit numerical value, each digest is 256 bits, the tree structure is an empty tree, the 1 st bit characters of the digest values of the data a and the data B are the same and are 8, the 2 nd bit characters are different, the 2 nd bit character of the data a is 0, the 2 nd bit character of the data B is 3, and data needs to be stored from the root node of the tree structure, for example, the data a is stored first, and then the data B is stored.
The process of storing the data a includes firstly grouping the digest values of the data a, grouping every four bits into a group, determining the group value and a sequence number corresponding to each group value, that is, each group value of the data a is 8,1,9,6, a,4,8, 5.. And 0, each sequence number corresponding to each group value is 1,2,3,4,5,6,7, 8.. And 64, and sequentially comparing the group values 8,1, 9.. And 0 corresponding to the sequence numbers 1,2, 3.. And 64 with a position identifier corresponding to at least one node in the tree structure in a sequence of searching from small to large, that is, firstly, according to the first bit character 8 of the data a, determining an 8 th branch corresponding to the root node, and determining that the storage position of the data a is at the 8 th branch corresponding to the root node, and storing the data a at the position.
Further, after the data a is stored in the tree structure, the storage location of the data B continues to be addressed in the tree structure, and similarly, the digest values of the data B are grouped, every four bits are grouped, the group value and the sequence number corresponding to each group value are determined, that is, each group value of the data B is 8,3,9,6, a,4,8,5, 9, 0, and the sequence number corresponding to each group value is 1,2,3,4,5,6,7,8, 64, and the sequence numbers 1,2,3, 7,8 are sequentially searched in the sequence of small-to-large numbers, and the sequence numbers 1,2,3, 7, 64 are sequentially searched in the sequence order of small-to-large numbers 64, i.e. determining, according to the first character 8 of the data B, an 8 th branch corresponding to the root node of the data B, where the branch node is located at a leaf node and the leaf node stores data a, temporarily taking out the data a, changing the node of the 8 th branch corresponding to the root node into an intermediate node, and where the intermediate node is located at 0x, the intermediate node is located at a position corresponding to at least one node in the tree structure8000000000000000000000000000000000000000000000000000000000000000. And sequentially generating two child nodes for the parent node by the intermediate node, taking the intermediate node as the parent node of the data A and the data B, and determining which branch of the parent node the data A and the data B are respectively at by using the 2 nd characters of the data A and the data B. The 2 nd character of the data A is 1, and the 1 st branch belonging to the parent node is marked as 0x in the position of the tree structure810000000000000000000000000000000000000000000000000000000000 0000(ii) a The 2 nd character of the data B is 3, and belongs to the 3 rd branch of the parent node, and the position in the tree structure is marked as 0x8 300000000000000000000000000000000000000000000000000000000000000。And respectively storing the data A and the data B in a second layer of the tree structure, wherein the 9 th branch and the 3 th branch are positioned at the middle nodes of the first layer.
In the embodiment of the application, when the storage position of the data to be processed in the tree structure is determined, whether the leaf node stores the data or not is determined, when the leaf node stores the data, the leaf node is used as a middle node to generate two sub nodes, and the storage position of the data to be processed in the tree structure is determined based on the sub nodes, so that the addressing of the data can be simplified, the positioning speed of the data is accelerated, and the storage efficiency of the data is further improved.
Optionally, on the basis of the foregoing embodiment, fig. 5 is a flowchart of a method for determining a storage location of to-be-processed data in a tree structure according to a node type when it is determined that the first node is an intermediate node. As shown in fig. 5, the method includes:
and S301, adding one to the layer number corresponding to the intermediate node to determine the current layer number.
Step S302, determining the grouping value corresponding to the serial number equal to the current layer number in the abstract value.
Step S303, comparing the grouping value corresponding to the serial number with a position identifier corresponding to at least one node in the tree structure, wherein the position identifier corresponding to the at least one node is located at the current layer of the tree structure.
Step S304, if the position identification corresponding to at least one node in the current layer has a first position identification and the node type of the node corresponding to the first position identification is a leaf node, determining the storage position of the data to be processed in the tree structure.
Specifically, when the packet values corresponding to the respective packet values in the digest values are sequentially compared with the position identifier corresponding to at least one node in the tree structure in the descending order of the sequence numbers corresponding to the respective packet values in the digest values, it is determined that a first position identifier equal to the packet value corresponding to the sequence number exists in the tree structure, and it is determined that the first node corresponding to the first position identifier is an intermediate node, then it is possible to determine the layer number corresponding to the intermediate node, and add one to the layer number to obtain the current layer number, and further determine the packet value corresponding to the sequence number equal to the current layer number in the digest value, and compare the packet value corresponding to the sequence number with the position identifier corresponding to at least one node in the tree structure, and determine whether the first position identifier equal to the packet value corresponding to the sequence number exists in the position identifier, where the at least one node is located in the same layer corresponding to the current layer number in the tree structure.
If the first position identifier exists in the position identifier corresponding to at least one node in the current layer and the node type of the node corresponding to the first position identifier is a leaf node, whether data are stored in the leaf node can be continuously judged, and when the data are stored in the leaf node, the leaf node is used as a middle node to generate two child nodes, and the branch of the parent node of the two child nodes is determined to determine the storage position of the data to be processed in the tree structure. If the node type of the node corresponding to the first position identification is the middle node, continuously determining the layer number corresponding to the middle node, adding one to the layer number to obtain the current layer number, further determining the grouping value corresponding to the sequence number which is equal to the current layer number in the abstract value, comparing the grouping value corresponding to the sequence number with the position identification corresponding to at least one node in the tree structure, determining whether the first position identification which is equal to the grouping value corresponding to the sequence number exists in the position identification, and so on until the data to be processed is determined not to be overlapped with the storage positions in other data tree structures, and determining the storage position of the data to be processed.
For example, on the basis of the tree structure formed as shown in fig. 4, the data C continues to be stored in the tree structure, at which time the data a and the data B have been already stored, and the digest value of the data C is 0x as shown in fig. 68185758500000000 0000000000000000 0000000000000000 00000000, wherein each digital character of the digest represents 4-bit numerical value, each digest is 256 bits, the digest of the data C is first grouped, each four bits are grouped, the sequence number corresponding to the group value and each group value is determined, that is, each group value of the data C is 8,1,8,5,7,5,8,5, 9, 0, the sequence number corresponding to each group value is 1,2,3,4,5,6,7,8, 64, the sequence number of the group value corresponding to the sequence number 1,2,3,4, 8,5, 6,7,8, 64 is sequentially searched from small to large, and the group value corresponding to the sequence number 1,2,3,4, 8,5, 1,8, 0, at least one node in the same layer in the tree structure corresponding to the sequence number is sequentially searched for the sequence numberComparing corresponding position marks, namely determining that the data C belongs to the 8 th branch corresponding to the root node according to the first character 8 of the data C, determining that the layer number corresponding to the intermediate node is 1 if the position of the branch node is the intermediate node, adding one to the layer number to determine that the current layer number is 2, comparing the position mark of at least one node corresponding to the 2 nd layer in the tree structure with the packet value 1 corresponding to the sequence number 2 of the data C, finding that the packet value corresponding to the sequence number 2 of the data A is equal to the packet value corresponding to the sequence number 2 of the data C, storing the data A in a leaf node, temporarily taking the data A out, taking the position of the data A as the intermediate node, and setting the position mark of the intermediate node to be 0x8100000000000000000000000000000000000000000000000000000000000000。
Further, the intermediate nodes generate two child nodes for the parent node in turn, the intermediate nodes are taken as the parent nodes of the data A and the data C, and the 3 rd characters of the data A and the data C are used for determining which branch of the parent node of the data A and the data C respectively exists. The 3 rd character of the data A is 9, and the data A belongs to the 9 th branch of the parent node, and the position in the tree structure is marked as 0x8190000000000000000000000000000000000000000000000000000000000000(ii) a The 3 rd character of data C is 8, the 8 th branch belonging to its parent node, and the position in the tree structure is identified as 0x8180000000000000000000000000000000000000000000000000000000000000; and respectively storing the data A and the data C in a third layer of the tree structure, wherein the data A and the data C are respectively positioned in a 9 th branch and an 8 th branch corresponding to a middle node of the second layer.
According to the embodiment of the application, when the first node is determined to be the middle node, the layer number corresponding to the middle node is increased by one, the current layer number is determined, the grouping value corresponding to the sequence number equal to the current layer number in the abstract value is determined, the grouping value corresponding to the sequence number is compared with the position identification corresponding to at least one node in the tree structure, and if the position identification corresponding to at least one node in the current layer has the first position identification and the node type of the node corresponding to the first position identification is the leaf node, the storage position of the data to be processed in the tree structure is determined. The method can quickly determine the position of the data in the tree structure according to the abstract value of the data to be processed, greatly reduces intermediate nodes and simplifies the addressing process of the data compared with a marcel tree structure.
Fig. 7 is a schematic structural diagram of a data storage device of a block chain according to an embodiment of the present application. As shown in fig. 7, the apparatus includes:
a calculating module 10, configured to calculate a digest value for the acquired to-be-processed data;
a determining module 20, configured to determine, according to the digest value and a node type in a tree structure, a storage location of the to-be-processed data in the tree structure;
a storage module 30, configured to store the to-be-processed data to the storage location in the tree structure.
Optionally, the determining module 20 includes:
a first determining unit 201, configured to group the digest values according to a preset rule, and determine a plurality of group values and a sequence number corresponding to each group value, where the sequence numbers correspond to layer numbers of the tree structure one to one;
a comparing unit 202, configured to sequentially compare, according to a sequence from a small sequence to a large sequence of the sequence numbers, a packet value corresponding to the sequence number with a location identifier corresponding to at least one node in a tree structure, and determine whether a first location identifier exists in the location identifier, where the location identifier corresponding to the at least one node is located in a same layer in the tree structure, and the first location identifier is equal to the packet value corresponding to the sequence number;
a second determining unit 203, configured to determine, when the first location identifier exists, a node type of a first node corresponding to the first location identifier, and determine, based on the node type, a storage location of the to-be-processed data in the tree structure.
Optionally, the second determining unit 203 is specifically configured to:
judging whether a child node exists in the first node;
when the first node has no child node, determining that the node type is a leaf node;
and when the child node exists in the first node, determining that the node type is an intermediate node.
Optionally, the second determining unit 203 is specifically configured to:
determining whether data is stored in the leaf node;
when the leaf node stores data, the leaf node is used as a father node to generate two child nodes;
and determining the storage position of the data to be processed in the tree structure based on the two child nodes.
Optionally, the second determining unit 203 is specifically configured to:
adding one to the layer number corresponding to the intermediate node to determine the current layer number;
determining a grouping value corresponding to a sequence number equal to the current layer number in the digest value;
comparing the grouping value corresponding to the sequence number with a position identifier corresponding to at least one node in the tree structure, wherein the position identifier corresponding to the at least one node is positioned at the current layer of the tree structure;
and when the position identifier corresponding to at least one node in the current layer has a first position identifier and the node type of the node corresponding to the first position identifier is a leaf node, determining the storage position of the data to be processed in the tree structure.
Optionally, the determining module 20 further includes:
a generating unit 204, configured to generate a branch node in a tree structure layer corresponding to a layer number equal to the sequence number value when it is determined that the first location identifier does not exist in the location identifiers;
a third determining unit 205, configured to determine the location of the branch node as a storage location of the to-be-processed data in the tree structure.
The data storage device of the block chain provided in this embodiment may implement the embodiments of the method described above, and the implementation principle and the technical effect are similar, and are not described herein again.
Referring now to FIG. 8, shown is a block diagram of a computer system 800 suitable for use in implementing embodiments of the present application.
As shown in fig. 8, the computer system 800 includes a Central Processing Unit (CPU) 801 that can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM) 802 or a program loaded from a storage section 803 into a Random Access Memory (RAM) 803. In the RAM 803, various programs and data necessary for the operation of the system 800 are also stored. The CPU801, ROM802, and RAM 803 are connected to each other via a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
The following components are connected to the I/O interface 805: an input portion 806 including a keyboard, a mouse, and the like; an output section 807 including a signal such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 808 including a hard disk and the like; and a communication section 809 including a network interface card such as a LAN card, a modem, or the like. The communication section 809 performs communication processing via a network such as the internet. A drive 810 is also connected to the I/O interface 805 as necessary. A removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 810 as necessary, so that a computer program read out therefrom is mounted on the storage section 808 as necessary.
In particular, according to embodiments of the data storage method of a blockchain disclosed herein, the process described above with reference to fig. 1 may be implemented as a computer software program. For example, embodiments of the master module disclosed herein include a computer program product comprising a computer program tangibly embodied on a machine-readable medium, the computer program comprising program code for performing the method of fig. 1. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 805 and/or installed from the removable medium 811.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of various intelligent parking systems, methods and computer program products according to the present application. 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 that 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, and may be described as: a processor includes a calculation module, a determination module, and a storage module. Where the names of such units or modules do not in some cases constitute a limitation on the unit or module itself, for example, a calculation module may also be described as "calculating a digest value for acquired data to be processed".
As another aspect, the present application also provides a computer-readable storage medium, which may be the computer-readable storage medium included in the foregoing device in the foregoing 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, which are used by one or more processors to execute the data storage method of the block chain described in the present application, and specifically executes: calculating a summary value of the acquired data to be processed; determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure; and storing the data to be processed to the storage position in the tree structure.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Moreover, although the steps of the methods of the present disclosure are depicted in the drawings in a particular order, this does not require or imply that these steps must be performed in this particular order, or that all of the depicted steps must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions, etc. Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, and may also be implemented by software in combination with necessary hardware.
In summary, in the computer system or the computer-readable storage medium for storing data of a block chain provided in the embodiment of the present application, a digest value is calculated for acquired data to be processed, a storage location of the data to be processed in a tree structure is determined according to the digest value and a node type in the tree structure, and the data to be processed is stored in the storage location in the tree structure. According to the technical scheme, the abstract value of the data to be processed can be calculated, and the storage position of the data to be processed in the tree structure is directly determined according to the abstract value and the node type, so that the data to be processed is stored.
The foregoing is considered as illustrative only of the preferred embodiments of the invention and illustrative only of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the application referred to in the present application is not limited to the embodiments with a particular combination of the above-mentioned features, but also encompasses other embodiments with any combination of the above-mentioned features or their equivalents without departing from the scope of the application. For example, the above features and the (but not limited to) technical features disclosed in the present application have been replaced with each other to form the technical solution.

Claims (8)

1. A method for storing data in a blockchain, comprising:
calculating an abstract value of the obtained data to be processed;
determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure;
storing the data to be processed to the storage location in the tree structure;
determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure, wherein the determining comprises the following steps:
grouping the abstract values according to a preset rule, and determining a plurality of grouping values and a sequence number corresponding to each grouping value, wherein the sequence numbers correspond to layer numbers of the tree structure one by one;
sequentially comparing the packet values corresponding to the sequence numbers with the position identification corresponding to at least one node in the tree structure according to the sequence from small to large of the sequence numbers, and determining whether a first position identification exists in the position identification, wherein the position identification corresponding to the at least one node is positioned on the same layer in the tree structure, and the first position identification is equal to the packet values corresponding to the sequence numbers;
when the first position identification exists, determining the node type of a first node corresponding to the first position identification, and determining the storage position of the data to be processed in the tree structure based on the node type.
2. The method of claim 1, wherein determining the node type of the first node corresponding to the first location identity comprises:
judging whether a child node exists in the first node;
when the first node does not have a child node, determining that the node type is a leaf node;
and when the first node has a child node, determining that the node type is an intermediate node.
3. The method for storing data in a blockchain according to claim 1, wherein when the first node is a leaf node, determining a storage location of the data to be processed in the tree structure based on the node type includes:
determining whether data is stored in the leaf node;
when the leaf node stores data, the leaf node is taken as a middle node and two child nodes are generated;
and determining the storage position of the data to be processed in the tree structure based on the two child nodes.
4. The method for storing data in a blockchain according to claim 1, wherein when the first node is an intermediate node, determining a storage location of the data to be processed in the tree structure based on the node type comprises:
adding one to the layer number corresponding to the intermediate node to determine the current layer number;
determining a grouping value corresponding to a sequence number which is equal to the current layer number in the digest value;
comparing the grouping value corresponding to the sequence number with a position identifier corresponding to at least one node in the tree structure, wherein the position identifier corresponding to the at least one node is positioned at the current layer of the tree structure;
and when the position identifier corresponding to at least one node in the current layer has a first position identifier and the node type of the node corresponding to the first position identifier is a leaf node, determining the storage position of the data to be processed in the tree structure.
5. The method of data storage of blockchain according to claim 1, wherein after determining whether the first location identifier exists in the location identifiers, the method further comprises:
when the first position identification does not exist in the position identification, generating branch nodes in a tree structure layer corresponding to the layer number equal to the sequence number;
and determining the position of the branch node as the storage position of the data to be processed in the tree structure.
6. A blockchain data storage device, comprising:
the calculation module is used for calculating a summary value of the acquired data to be processed;
the determining module is used for determining the storage position of the data to be processed in the tree structure according to the abstract value and the node type in the tree structure;
the storage module is used for storing the data to be processed to the storage position in the tree structure;
the determining module includes:
a first determining unit, configured to group the digest values according to a preset rule, and determine a plurality of group values and a sequence number corresponding to each group value, where the sequence numbers correspond to layer numbers of the tree structure one to one;
a comparing unit, configured to compare, in order from small to large, a packet value corresponding to the sequence number value with a location identifier corresponding to at least one node in a tree structure, and determine whether a first location identifier exists in the location identifier, where the location identifier corresponding to the at least one node is located in the same layer in the tree structure, and the first location identifier is equal to the packet value corresponding to the sequence number;
and the second determining unit is used for determining the node type of the first node corresponding to the first position identification when the first position identification exists, and determining the storage position of the data to be processed in the tree structure based on the node type.
7. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1-5 when executing the program.
8. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-5.
CN202010014310.4A 2020-01-07 2020-01-07 Data storage method, device, equipment and medium of block chain Active CN111209341B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010014310.4A CN111209341B (en) 2020-01-07 2020-01-07 Data storage method, device, equipment and medium of block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010014310.4A CN111209341B (en) 2020-01-07 2020-01-07 Data storage method, device, equipment and medium of block chain

Publications (2)

Publication Number Publication Date
CN111209341A CN111209341A (en) 2020-05-29
CN111209341B true CN111209341B (en) 2023-03-14

Family

ID=70788769

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010014310.4A Active CN111209341B (en) 2020-01-07 2020-01-07 Data storage method, device, equipment and medium of block chain

Country Status (1)

Country Link
CN (1) CN111209341B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333269A (en) * 2020-11-03 2021-02-05 平安科技(深圳)有限公司 Block chain network storage structure, working method, device, medium and equipment
CN112965858B (en) * 2021-03-04 2023-07-18 电信科学技术第五研究所有限公司 Method for realizing networking distributed storage data conflict processing
CN113452769B (en) * 2021-06-23 2022-10-18 上海简苏网络科技有限公司 Network layering method and system based on block chain

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107526775A (en) * 2017-07-18 2017-12-29 杭州趣链科技有限公司 A kind of method of block chain data filing
CN108509514A (en) * 2018-03-09 2018-09-07 史玉成 A kind of big data analysis method and system based on block chain
CN108615156A (en) * 2018-05-09 2018-10-02 上海魅联信息技术有限公司 A kind of data structure based on block chain
WO2018223042A1 (en) * 2017-06-01 2018-12-06 Schvey, Inc. d/b/a/ Axoni Distributed privately subspaced blockchain data structures with secure access restriction management
CN109145205A (en) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 A kind of across chain data manipulation method and device based on block chain
CN109165221A (en) * 2018-08-16 2019-01-08 北京京东尚科信息技术有限公司 Date storage method, device, block chain node and the storage medium of block chain
CN109167811A (en) * 2018-07-27 2019-01-08 阿里巴巴集团控股有限公司 A kind of across chain data access method and device based on block chain
CN109255056A (en) * 2018-08-16 2019-01-22 北京京东尚科信息技术有限公司 Data referencing processing method, device, equipment and the storage medium of block chain
CN109697606A (en) * 2018-09-30 2019-04-30 贝克链区块链技术有限公司 The distributed network and the ecosystem of common recognition agreement are proved based on innovative prestige
CN109710620A (en) * 2018-12-29 2019-05-03 杭州复杂美科技有限公司 Date storage method, method for reading data, equipment and storage medium
WO2019101230A2 (en) * 2019-03-04 2019-05-31 Alibaba Group Holding Limited Constructing blockchain world state merkle patricia trie subtree
CN110169040A (en) * 2018-07-10 2019-08-23 深圳花儿数据技术有限公司 Distributed data storage method and system based on multilayer consistency Hash
CN110275884A (en) * 2019-05-31 2019-09-24 阿里巴巴集团控股有限公司 Date storage method and node
CN110334154A (en) * 2019-06-28 2019-10-15 阿里巴巴集团控股有限公司 Based on the classification storage method and device of block chain, electronic equipment
CN110471795A (en) * 2019-07-31 2019-11-19 阿里巴巴集团控股有限公司 Block chain state data reconstruction method and device, electronic equipment
CN110493325A (en) * 2019-07-31 2019-11-22 阿里巴巴集团控股有限公司 Block chain state method of data synchronization and device, electronic equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190258971A1 (en) * 2018-02-20 2019-08-22 Tyson York Winarski Blockchain project management with process feedback control

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018223042A1 (en) * 2017-06-01 2018-12-06 Schvey, Inc. d/b/a/ Axoni Distributed privately subspaced blockchain data structures with secure access restriction management
CN107526775A (en) * 2017-07-18 2017-12-29 杭州趣链科技有限公司 A kind of method of block chain data filing
CN108509514A (en) * 2018-03-09 2018-09-07 史玉成 A kind of big data analysis method and system based on block chain
CN108615156A (en) * 2018-05-09 2018-10-02 上海魅联信息技术有限公司 A kind of data structure based on block chain
CN110169040A (en) * 2018-07-10 2019-08-23 深圳花儿数据技术有限公司 Distributed data storage method and system based on multilayer consistency Hash
CN109145205A (en) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 A kind of across chain data manipulation method and device based on block chain
CN109167811A (en) * 2018-07-27 2019-01-08 阿里巴巴集团控股有限公司 A kind of across chain data access method and device based on block chain
CN109165221A (en) * 2018-08-16 2019-01-08 北京京东尚科信息技术有限公司 Date storage method, device, block chain node and the storage medium of block chain
CN109255056A (en) * 2018-08-16 2019-01-22 北京京东尚科信息技术有限公司 Data referencing processing method, device, equipment and the storage medium of block chain
CN109697606A (en) * 2018-09-30 2019-04-30 贝克链区块链技术有限公司 The distributed network and the ecosystem of common recognition agreement are proved based on innovative prestige
CN109710620A (en) * 2018-12-29 2019-05-03 杭州复杂美科技有限公司 Date storage method, method for reading data, equipment and storage medium
WO2019101230A2 (en) * 2019-03-04 2019-05-31 Alibaba Group Holding Limited Constructing blockchain world state merkle patricia trie subtree
CN110275884A (en) * 2019-05-31 2019-09-24 阿里巴巴集团控股有限公司 Date storage method and node
CN110334154A (en) * 2019-06-28 2019-10-15 阿里巴巴集团控股有限公司 Based on the classification storage method and device of block chain, electronic equipment
CN110471795A (en) * 2019-07-31 2019-11-19 阿里巴巴集团控股有限公司 Block chain state data reconstruction method and device, electronic equipment
CN110493325A (en) * 2019-07-31 2019-11-22 阿里巴巴集团控股有限公司 Block chain state method of data synchronization and device, electronic equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"发布区块链标准应用模型及应用部署技术研究";白杰,李东云,吴先锋;《金融信息安全》;20180831;全文 *

Also Published As

Publication number Publication date
CN111209341A (en) 2020-05-29

Similar Documents

Publication Publication Date Title
Holley et al. Bifrost: highly parallel construction and indexing of colored and compacted de Bruijn graphs
CN111209341B (en) Data storage method, device, equipment and medium of block chain
CN111008201B (en) Method and apparatus for parallel modification and reading of state trees
JP2020521254A (en) Method and device for writing service data to a blockchain system
CN113329031A (en) Method and device for generating state tree of block
US20150161207A1 (en) Assisting query and querying
CN104794123A (en) Method and device for establishing NoSQL database index for semi-structured data
CN116955361A (en) Method and system for searching key range in memory
CN115098649B (en) Keyword search method and system based on double-key accidental pseudorandom function
CN108628907A (en) A method of being used for the Trie tree multiple-fault diagnosis based on Aho-Corasick
CN114064984A (en) Sparse array linked list-based world state increment updating method and device
CN111651695A (en) Method and device for generating and analyzing short link
CN109614411B (en) Data storage method, device and storage medium
CN110532284B (en) Mass data storage and retrieval method and device, computer equipment and storage medium
US20080306948A1 (en) String and binary data sorting
CN115130043B (en) Database-based data processing method, device, equipment and storage medium
US8661061B2 (en) Data structure, data structure generation method, information processing apparatus, information processing system, and computer-readable storage medium having stored therein information processing program
CN113495901B (en) Quick retrieval method for variable-length data blocks
CN113704252A (en) Rule engine decision tree implementation method and device, computer equipment and computer readable storage medium
CN114048219A (en) Graph database updating method and device
Bhadane et al. An efficient parallel approach for frequent itemset mining of incremental data
JP2018081611A (en) Dictionary search method, device, and program
CN115221360A (en) Tree structure configuration method and system
CN112052341A (en) Knowledge graph pruning method and device
CN112988778A (en) Method and device for processing database query script

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