Data storage method, apparatus, system and device
AssigneeAlibaba Group Holding Limited
InventorXinying Yang
Life of this patent
Estimating the term…
Abstract
Computer-implemented methods, non-transitory, computer-readable media, and computer-implemented systems for data storage are provided. A routing relationship between a data block and a data node is established by using a block hash of the data block. A blockchain-type ledger is stored in a distributed manner with a level of granularity of data block. Metadata such as block header information is stored in a coordinator node. The data block or a block body in the data block is stored in the data node.
Claims20
A computer-implemented method for data storage, comprising:
- obtaining, by a coordinator node, a data block, wherein the coordinator node is in a database system that stores data in blockchain-type ledgers, and wherein the database system comprises the coordinator node and one or more data nodes;
- determining, by the coordinator node, a data node corresponding to the data block based on a block hash value of the data block;
- allocating, by the coordinator node, the data block to the data node;
- creating, by the coordinator node, routing information between the data block and the data node;
- saving, by the coordinator node, the routing information and block header information of the data block;
- and
- sending, by the coordinator node to the data node, the data block to be stored by the data node in a blockchain-type ledger that stores a plurality of data blocks in a blockchain data structure, wherein:
- in the blockchain-type ledger, each of the plurality of data blocks comprises a block header used to store metadata and a block body used to store a data record;
- and
- except for an initial data block, each of the plurality of data blocks comprises at least one data record and its own block hash value that is determined by both the at least one data record comprised in the each of the plurality of data blocks and a hash value of a previous data block, and block heights of the plurality of data blocks are increased monotonically according to a block generation time sequence.
A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform one or more operations comprising:
- obtaining, by a coordinator node in a database system that stores data in blockchain-type ledgers, a data block, wherein the database system comprises the coordinator node and one or more data nodes;
- determining, by the coordinator node, a data node corresponding to the data block based on a block hash value of the data block;
- allocating, by the coordinator node, the data block to the data node;
- creating, by the coordinator node, routing information between the data block and the data node;
- saving, by the coordinator node, the routing information and block header information of the data block;
- and
- sending, by the coordinator node to the data node, the data block to be stored by the data node in a blockchain-type ledger that stores a plurality of data blocks in a blockchain data structure, wherein:
- in the blockchain-type ledger, each of the plurality of data blocks comprises a block header used to store metadata and a block body used to store a data record;
- and
- except for an initial data block, each of the plurality of data blocks comprises at least one data record and its own block hash value that is determined by both the at least one data record comprised in the each of the plurality of data blocks and a hash value of a previous data block, and block heights of the plurality of data blocks are increased monotonically according to a block generation time sequence.
A computer-implemented system, comprising:
- one or more computers;
- and
- one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:
- obtaining, by a coordinator node in a database system that stores data in blockchain-type ledgers, a data block, wherein the database system comprises the coordinator node and one or more data nodes;
- determining, by the coordinator node, a data node corresponding to the data block based on a block hash value of the data block;
- allocating, by the coordinator node, the data block to the data node;
- creating, by the coordinator node, routing information between the data block and the data node;
- saving, by the coordinator node, the routing information and block header information of the data block;
- and
- sending, by the coordinator node to the data node, the data block to be stored by the data node in a blockchain-type ledger that stores a plurality of data blocks in a blockchain data structure, wherein:
- in the blockchain-type ledger, each of the plurality of data blocks comprises a block header used to store metadata and a block body used to store a data record;
- and
- except for an initial data block, each of the plurality of data blocks comprises at least one data record and its own block hash value that is determined by both the at least one data record comprised in the each of the plurality of data blocks and a hash value of a previous data block, and block heights of the plurality of data blocks are increased monotonically according to a block generation time sequence.
Dependencies are inferred from the claim text.