CN110989934A - Block chain link point data storage method, block chain system and block chain link point - Google Patents

Block chain link point data storage method, block chain system and block chain link point Download PDF

Info

Publication number
CN110989934A
CN110989934A CN201911235610.9A CN201911235610A CN110989934A CN 110989934 A CN110989934 A CN 110989934A CN 201911235610 A CN201911235610 A CN 201911235610A CN 110989934 A CN110989934 A CN 110989934A
Authority
CN
China
Prior art keywords
block
block chain
storage module
written
controller
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.)
Granted
Application number
CN201911235610.9A
Other languages
Chinese (zh)
Other versions
CN110989934B (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.)
Cloudminds Robotics Co Ltd
Original Assignee
Cloudminds Chengdu Technologies 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 Cloudminds Chengdu Technologies Co ltd filed Critical Cloudminds Chengdu Technologies Co ltd
Priority to CN201911235610.9A priority Critical patent/CN110989934B/en
Publication of CN110989934A publication Critical patent/CN110989934A/en
Application granted granted Critical
Publication of CN110989934B publication Critical patent/CN110989934B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present disclosure relates to a block chain link point data storage method, a block chain system, and a block chain node, where the method is applied to a block chain node group, where the block chain node group includes M block chain nodes and N storage modules for storing a block chain, where N is a positive integer smaller than M and M is a positive integer greater than 2, and the method includes: determining a block to be written according to a block writing request received by each block chain node; and respectively storing the blocks to be written into each storage module. Therefore, a plurality of block chain link points can share the storage module, the data redundancy can be effectively reduced while the integrity and the reliability of the block chain storage are ensured, and the storage resource is saved. In addition, new block chain link points can be expanded based on the corresponding storage modules of the block chain link point group without increasing new storage resources, so that the expansion of the block chain nodes is facilitated, and the computing capacity of the block chain node group is improved.

Description

Block chain link point data storage method, block chain system and block chain link point
Technical Field
The present disclosure relates to the field of block chain technologies, and in particular, to a block chain link point data storage method, a block chain system, and a block chain node.
Background
The block chain is a chain data structure formed by combining data blocks in a sequential connection mode according to a time sequence, and is a distributed account book which is guaranteed in a cryptographic mode and is not falsifiable, counterfeitable, completely traceable and decentralized.
With the rapid development of distributed applications based on smart contracts, blockchain upper agendas carry a large number of applications. Each node in the blockchain not only needs to perform a large amount of computation to obtain accounting rights for the block, but also needs to save data for all blocks in the blockchain system. As the amount of service data applied in each blockchain increases, each blockchain node stores a full copy of all the blockchain data, resulting in a large amount of data redundancy.
Disclosure of Invention
The purpose of the present disclosure is to provide a block chain link point data storage method, a block chain system and a block chain node which are safe and reduce data redundancy.
In order to achieve the above object, according to a first aspect of the present disclosure, there is provided a block link point data storage method applied to a block chain node group, where the block link point group includes M block chain nodes and N storage modules for storing a block chain, N being a positive integer smaller than M and M being a positive integer greater than 2, the method including:
determining a block to be written according to a block writing request received by each block chain node;
and respectively storing the blocks to be written into each storage module.
Optionally, the determining, according to the block write request received by each block link node, a block to be written includes:
if each block link node in the block link node group receives a unique block write request for requesting to write a first block, taking the first block as the block to be written;
and if each block link node in the block link node group receives a plurality of block write requests for requesting to write a second block and the data in each second block are consistent, taking the second block as the block to be written.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the storing the block to be written into each storage module respectively comprises:
generating copy blocks of the blocks to be written in through the IO controller, wherein the number of the copy blocks is consistent with the number of the storage modules which are connected with the IO controller currently;
and storing the copy blocks into each storage module connected with the IO controller one by one.
Optionally, the method further comprises:
when any block chain node in the block chain node group receives a data reading instruction, determining a target storage module according to the load of each storage module;
and establishing a data reading channel between the block chain node and the target storage module so that the block chain node reads data from the target storage module according to the data reading instruction.
According to a second aspect of the present disclosure, there is provided a blockchain system comprising:
the block chain node group comprises M block chain nodes and N storage modules for storing the block chain, wherein N is a positive integer smaller than M, and M is a positive integer larger than 2;
and the block chain node group is used for determining a block to be written according to a block writing request received by each block chain node, and respectively storing the block to be written into each storage module.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the IO controller is configured to, if each block link point in the block link node group receives a unique block write request for requesting writing to a first block, take the first block as the block to be written; and if each block link node in the block link node group receives a plurality of block write requests for requesting to write a second block and the data in each second block are consistent, taking the second block as the block to be written.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the IO controller is used for generating copy blocks of the blocks to be written, wherein the number of the copy blocks is consistent with the number of the storage modules which are connected with the IO controller currently; and storing the copy blocks into each storage module connected with the IO controller one by one.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the IO controller is used for determining a target storage module according to the load of each storage module when any block chain node in the block chain node group receives a data reading instruction; and establishing a data reading channel between the block chain node and the target storage module so that the block chain node reads data from the target storage module according to the data reading instruction.
Optionally, the block chain node group is composed of block chain link points belonging to the same mechanism.
According to a third aspect of the present disclosure, there is provided a blockchain node, which is any blockchain node in the blockchain node group in any of the blockchain systems of the second aspect.
In the above technical solution, the computing capability and the storage capability of the block chain node are decoupled, and the number of the storage modules in the block chain link point group is less than the number of the block chain nodes, so that a plurality of block chain nodes can share the storage module. Therefore, when each block link receives a block writing request, the block to be written is stored in the storage module, so that the storage module can store the full amount of data. By the technical scheme, the integrity and the reliability of block chain storage can be ensured, data redundancy can be effectively reduced, and storage resources can be saved. In addition, the performance requirements on the block link points can be reduced in the block link, and new block link points can be expanded on the basis of the corresponding storage modules of the block link point group without increasing new storage resources, so that the expansion of the block link nodes is facilitated and the computing power of the block link node group is improved.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows.
Drawings
The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the description serve to explain the disclosure without limiting the disclosure. In the drawings:
FIG. 1 is a flow diagram of a block link point data storage method provided in accordance with one embodiment of the present disclosure;
FIG. 2 is a schematic diagram of a block link point set provided by one embodiment of the present disclosure;
FIG. 3 is a schematic diagram of a block link point set provided by one embodiment of the present disclosure;
FIG. 4 is a block diagram illustrating a block link point in accordance with an exemplary embodiment;
FIG. 5 is a block diagram illustrating a block link point in accordance with an exemplary embodiment.
Detailed Description
The following detailed description of specific embodiments of the present disclosure is provided in connection with the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the present disclosure, are given by way of illustration and explanation only, not limitation.
Blockchain nodes, typically refer to computers that download the relevant cryptocurrency (bitcoin, Ethereum, Monero, etc.) software to participate in the peer-to-peer network. In addition, in the blockchain network, not all nodes participate in mining, and some nodes may only have functions of querying and issuing transactions. The nodes involved in mining are referred to as miner nodes, and all the block link nodes described below are miner nodes.
The disclosure provides a block link point data storage method, which is applied to a block link node group, wherein the block link node group comprises M block link nodes and N storage modules for storing block links, N is a positive integer smaller than M, and M is a positive integer larger than 2.
As described in the background, existing blockchain nodes require a large amount of computation and require a full amount of blockchain, which can present a large amount of data redundancy. Based on this, the computing power and the storage power of the block chain nodes are decoupled in the present disclosure, that is, the block chain link points described in the present disclosure may only include the computing power, so that mining may be performed without a need to store a block chain. Of course, some of the block link points in this disclosure may include both computing power and memory modules to store the block chain. The storage module may be an independent storage module or a local storage module of a certain blockchain node.
Fig. 1 is a flowchart of a block link point data storage method according to an embodiment of the present disclosure, and as shown in fig. 1, the method includes:
in S11, the block to be written is determined according to the block write request received by each block link node.
Wherein a certain number of block link points are interconnected by a p2p network to form a basic network of block chains. In order to find out who has stronger computing power, the system can generate a mathematical question every time, and only a computer which solves the question most quickly can carry out accounting. When any blockchain node in the blockchain network obtains the accounting right and creates a block, the blockchain node broadcasts in the network to inform other blockchain nodes, the other blockchain nodes verify the accounting validity of the blockchain nodes, and after the block is verified and determined to be legal, the block can be stored and synchronized.
Illustratively, a broadcast message sent by a block link node of a block is created, and each block link node in a block link node group receives the broadcast message, analyzes and verifies the broadcast message to obtain a block write request, so as to determine a block to be written corresponding to the block write request. For example, a block chain is a chain data structure formed by combining data blocks in a sequential manner, a block header stores header information of a block, including a reference of a previous block, a hash value of a block of the block, a timestamp, and the like, and the block to be written can be determined based on the block header.
In S12, the blocks to be written are stored in each memory module, respectively.
In the above technical solution, the computing capability and the storage capability of the block chain node are decoupled, and the number of the storage modules in the block chain link point group is less than the number of the block chain nodes, so that a plurality of block chain nodes can share the storage module. Therefore, when each block link receives a block writing request, the block to be written is stored in the storage module, so that the storage module can store the full amount of data. By the technical scheme, the integrity and the reliability of block chain storage can be ensured, data redundancy can be effectively reduced, and storage resources can be saved. In addition, the performance requirements on the block link points can be reduced in the block link, and new block link points can be expanded on the basis of the corresponding storage modules of the block link point group without increasing new storage resources, so that the expansion of the block link nodes is facilitated and the computing power of the block link node group is improved.
Optionally, an exemplary implementation manner of determining a block to be written according to a block write request received by each block link node is as follows, and this step may include:
and if each block link node in the block link node group receives a unique block write request for requesting to write a first block, taking the first block as the block to be written.
As shown in fig. 2, a schematic diagram of a blockchain node group is provided for an embodiment of the present disclosure, where a1, a2, A3 are respectively used to represent 3 blockchain nodes, and B1 and B2 are respectively used to represent 2 memory modules.
In one embodiment, when a block-linked point in the network broadcasts, it may be that due to network problems, the broadcast message is not necessarily received by each block-linked point in the set of block-linked points. For example, as described above, the block to be written may be determined according to the block header, for example, if a reference to the last block requested to be written to the block (i.e., the first block) in the block write request received by a1 is 03, and if only a1 in the block link point group receives a block write request for the first block (i.e., the next block to the block referenced to be 03), the first block may be directly used as the block to be written.
And if each block link node in the block link node group receives a plurality of block write requests for requesting to write a second block and the data in each second block are consistent, taking the second block as the block to be written.
Illustratively, the reference to the last chunk requested to be written to in the chunk write request received by a1 is 13, and the reference to the last chunk requested to be written to in the chunk write request received by a2 is 33. Since the block chain is a chain data structure formed by combining data blocks in a sequential connection manner, the requested write block in the block write requests received by a1 and a2 is the next block of the block referenced 13, which means that the requested write block in the block write requests of a1 and a2 is the same block (i.e. the second block), i.e. each block link point in the block chain node group receives a plurality of block write requests for requesting to write the second block.
When a block request for writing a second block to each user is received, the consistency of the written data needs to be ensured, and therefore, the data in the second block needs to be checked in this case. The block head comprises a Merkle tree, all transaction information in the block is summarized and summarized by the Merkle tree, and the efficiency of the block chain is greatly improved. Therefore, whether the Merkle trees in the second blocks respectively corresponding to a1 and a2 are the same or not can be checked, if so, the data in each second block are determined to be consistent, the second block is used as the block to be written, and if not, the block can be discarded because the data written in the same block are different, so as to avoid storing error data. In addition, the data can be synchronized with other stored block chain nodes to store the accurate data corresponding to the block into the storage module, so as to ensure the integrity of the data.
By the technical scheme, the consistency of data written by the plurality of block chain nodes can be ensured under the condition that the plurality of block chain nodes receive the block writing request requesting to be written into the same block, and meanwhile, the block writing request aiming at the same block can be deduplicated without synchronizing block data aiming at the block writing request received by each block chain node, so that the resource utilization rate is improved.
Optionally, the M block link points are connected with the N memory modules through an IO (Input/Output) controller (as shown in C in fig. 2);
an exemplary embodiment of storing the blocks to be written into each memory module respectively is as follows, which may include:
generating copy blocks of the blocks to be written in through the IO controller, wherein the number of the copy blocks is consistent with the number of the storage modules which are connected with the IO controller currently;
and storing the copy blocks into each storage module connected with the IO controller one by one.
In this embodiment, since the number of the storage modules is less than the number of the block chain nodes, when the block to which writing is performed is stored, the number of the generated copy blocks may be determined by the IO controller based on the number of the storage modules, so that the number of the copy blocks may be dynamically configured according to the number of the storage modules, which may ensure integrity of data stored in each storage module, and may effectively reduce data redundancy, and save storage space.
Optionally, the group of blockchain nodes is composed of blockchain link points belonging to the same mechanism, so that management of the blockchain nodes of the mechanism and expansion of computing capacity can be facilitated.
Optionally, the method further comprises:
and when any block chain node in the block chain node group receives a data reading instruction, determining a target storage module according to the load of each storage module.
When data needs to be read from a block link point, a data reading instruction can be sent to the block link point, and for any block link node in the block link node group, when the block link point receives the data reading instruction, a target storage block is determined from the N storage blocks of the block link point group.
For example, the target storage module may be determined according to the load of each storage module, for example, the current access amount of each storage module is obtained, and the storage module with the smallest access amount is determined as the target storage module. For another example, the current available bandwidth of each storage module may be obtained, and the storage module with the largest available bandwidth may be determined as the target storage module.
After the target storage module is determined, a data reading channel between the block link point and the target storage module is established, so that the block link point reads data from the target storage module according to the data reading instruction.
For example, establishing a data reading channel between the blockchain node and the target storage module may be controlling the blockchain node to access the target storage module, for example, the access may be performed based on an ID of the target storage module, so that the blockchain node may read data from the target storage module. As shown in FIG. 3, data read channel L1 between block chain node A1 and memory module B1, and data read channel L2 between block chain node A3 and memory module B2.
Alternatively, the validity time of the data read channel may be set. After the effective time is exceeded, when a data reading instruction is received at the block link point, the target storage module can be determined again through the load of each storage module, and therefore the data reading efficiency is guaranteed.
In the above technical scheme, when any block link point in the block link point group receives a data reading instruction, the memory module accessed by the block link point can be determined according to the load of the memory module, so that the load balance of the memory module is ensured, the read data bandwidth of each memory module can be fully utilized, and the concurrent data reading performance and the data reading efficiency are improved.
The present disclosure also provides a block chain system, comprising:
the block chain node group comprises M block chain nodes and N storage modules for storing the block chain, wherein N is a positive integer smaller than M, and M is a positive integer larger than 2;
and the block chain node group is used for determining a block to be written according to a block writing request received by each block chain node, and respectively storing the block to be written into each storage module.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the IO controller is configured to, if each block link point in the block link node group receives a unique block write request for requesting writing to a first block, take the first block as the block to be written; and if each block link node in the block link node group receives a plurality of block write requests for requesting to write a second block and the data in each second block are consistent, taking the second block as the block to be written.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the IO controller is used for generating copy blocks of the blocks to be written, wherein the number of the copy blocks is consistent with the number of the storage modules which are connected with the IO controller currently; and storing the copy blocks into each storage module connected with the IO controller one by one.
Optionally, the M block link points are connected with the N memory modules through an IO controller;
the IO controller is used for determining a target storage module according to the load of each storage module when any block chain node in the block chain node group receives a data reading instruction; and establishing a data reading channel between the block chain node and the target storage module so that the block chain node reads data from the target storage module according to the data reading instruction.
Optionally, the block chain node group is composed of block chain link points belonging to the same mechanism.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
The present disclosure also provides a block chain node, where the block chain node is any one of the block chain node groups in the block chain system.
Optionally, the block link point may send the block write request to the IO controller when receiving the block write request, so as to generate, by the IO controller, copy blocks of the block to be written, and store the copy blocks in each storage module connected to the IO controller one by one.
Fig. 4 is a block diagram illustrating a block link point 700 according to an exemplary embodiment. As shown in fig. 4, the block link point 700 may include: a processor 701 and a memory 702. The block link node 700 may also include one or more of a multimedia component 703, an input/output (I/O) interface 704, and a communication component 705.
The processor 701 is configured to control the overall operation of the block link point 700 to complete all or part of the steps in the above-described block link point data storage method. Memory 702 is used to store various types of data to support operations at the tile link point 700, which may include, for example, instructions for any application or method operating on the tile link point 700, as well as application-related data such as contact data, messaging, pictures, audio, video, and so forth. The Memory 702 may be implemented by any type of volatile or non-volatile Memory device or combination thereof, such as Static Random Access Memory (SRAM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Erasable Programmable Read-Only Memory (EPROM), Programmable Read-Only Memory (PROM), Read-Only Memory (ROM), magnetic Memory, flash Memory, magnetic disk, or optical disk. The multimedia components 703 may include screen and audio components. Wherein the screen may be, for example, a touch screen and the audio component is used for outputting and/or inputting audio signals. For example, the audio component may include a microphone for receiving external audio signals. The received audio signal may further be stored in the memory 702 or transmitted through the communication component 705. The audio assembly also includes at least one speaker for outputting audio signals. The I/O interface 704 provides an interface between the processor 701 and other interface modules, such as a keyboard, mouse, buttons, etc. These buttons may be virtual buttons or physical buttons. Communication component 705 is used for wired or wireless communication between the block link point 700 and other devices. Wireless communication, such as Wi-Fi, bluetooth, Near Field Communication (NFC), 2G, 3G, 4G, NB-IOT, eMTC, or other 5G, etc., or a combination of one or more of them, which is not limited herein. The corresponding communication component 705 may thus include: Wi-Fi module, Bluetooth module, NFC module, etc.
In an exemplary embodiment, the block link points 700 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components for performing the above-described block link point data storage method.
In another exemplary embodiment, there is also provided a computer readable storage medium comprising program instructions which, when executed by a processor, implement the steps of the above-described block-link data storage method. For example, the computer readable storage medium may be the memory 702 described above including program instructions that are executable by the processor 701 of the block link point 700 to perform the block link point data storage method described above.
Fig. 5 is a block diagram illustrating a block link point 1900 in accordance with an exemplary embodiment. For example, block link point 1900 may be provided as a server. Referring to fig. 5, block link point 1900 includes a processor 1922, which may be one or more in number, and a memory 1932 for storing computer programs executable by processor 1922. The computer program stored in memory 1932 may include one or more modules that each correspond to a set of instructions. Further, the processor 1922 may be configured to execute the computer program to perform the above-described block link data storage method.
Additionally, tile link point 1900 may further include a power component 1926 and a communication component 1950, the power component 1926 may be configured to perform power management of tile link point 1900, and the communication component 1950 may be configured to enable communication, e.g., wired or wireless communication, of tile link point 1900. In addition, the block link point 1900 may also include an input/output (I/O) interface 1958. Block chain node 1900 may operate based on an operating system stored in memory 1932, such as Windows Server, Mac OS XTM, UnixTM, Linux, etc.
In another exemplary embodiment, there is also provided a computer readable storage medium comprising program instructions which, when executed by a processor, implement the steps of the above-described block-link data storage method. For example, the computer readable storage medium may be the memory 1932 described above that includes program instructions that are executable by the processor 1922 of block-link points 1900 to perform the block-link point data storage methods described above.
In another exemplary embodiment, there is also provided a computer program product comprising a computer program executable by a programmable apparatus, the computer program having code portions for performing the block-link point data storage method described above when executed by the programmable apparatus.
The preferred embodiments of the present disclosure are described in detail with reference to the accompanying drawings, however, the present disclosure is not limited to the specific details of the above embodiments, and various simple modifications may be made to the technical solution of the present disclosure within the technical idea of the present disclosure, and these simple modifications all belong to the protection scope of the present disclosure.
It should be noted that the various features described in the above embodiments may be combined in any suitable manner without departing from the scope of the invention. In order to avoid unnecessary repetition, various possible combinations will not be separately described in this disclosure.
In addition, any combination of various embodiments of the present disclosure may be made, and the same should be considered as the disclosure of the present disclosure, as long as it does not depart from the spirit of the present disclosure.

Claims (10)

1. A block link point data storage method is applied to a block link node group, the block link node group comprises M block link nodes and N storage modules used for storing block links, N is a positive integer smaller than M, and M is a positive integer larger than 2, and the method comprises the following steps:
determining a block to be written according to a block writing request received by each block chain node;
and respectively storing the blocks to be written into each storage module.
2. The method of claim 1, wherein determining the block to be written according to the block write request received by each of the block nodes comprises:
if each block link node in the block link node group receives a unique block write request for requesting to write a first block, taking the first block as the block to be written;
and if each block link node in the block link node group receives a plurality of block write requests for requesting to write a second block and the data in each second block are consistent, taking the second block as the block to be written.
3. The method of claim 1, wherein the M block link points are connected with the N memory modules through an IO controller;
the storing the block to be written into each storage module respectively comprises:
generating copy blocks of the blocks to be written in through the IO controller, wherein the number of the copy blocks is consistent with the number of the storage modules which are connected with the IO controller currently;
and storing the copy blocks into each storage module connected with the IO controller one by one.
4. The method according to any one of claims 1-3, further comprising:
when any block chain node in the block chain node group receives a data reading instruction, determining a target storage module according to the load of each storage module;
and establishing a data reading channel between the block chain node and the target storage module so that the block chain node reads data from the target storage module according to the data reading instruction.
5. A blockchain system, comprising:
the block chain node group comprises M block chain nodes and N storage modules for storing the block chain, wherein N is a positive integer smaller than M, and M is a positive integer larger than 2;
and the block chain node group is used for determining a block to be written according to a block writing request received by each block chain node, and respectively storing the block to be written into each storage module.
6. The block chain system of claim 5, wherein the M block chain links are connected to the N memory modules through an IO controller;
the IO controller is configured to, if each block link point in the block link node group receives a unique block write request for requesting writing to a first block, take the first block as the block to be written; and if each block link node in the block link node group receives a plurality of block write requests for requesting to write a second block and the data in each second block are consistent, taking the second block as the block to be written.
7. The block chain system of claim 5, wherein the M block chain links are connected to the N memory modules through an IO controller;
the IO controller is used for generating copy blocks of the blocks to be written, wherein the number of the copy blocks is consistent with the number of the storage modules which are connected with the IO controller currently; and storing the copy blocks into each storage module connected with the IO controller one by one.
8. The blockchain system of any one of claims 5-7, wherein the M blockchain links are connected to the N storage modules through an IO controller;
the IO controller is used for determining a target storage module according to the load of each storage module when any block chain node in the block chain node group receives a data reading instruction; and establishing a data reading channel between the block chain node and the target storage module so that the block chain node reads data from the target storage module according to the data reading instruction.
9. The blockchain system of any one of claims 5 to 7, wherein the group of blockchain nodes is comprised of blockchain link points belonging to the same mechanism.
10. A blockchain node, wherein the blockchain node is any one of the set of blockchain nodes in the blockchain system of any one of claims 5 to 8.
CN201911235610.9A 2019-12-05 2019-12-05 Block chain link point data storage method, block chain system and block chain node Active CN110989934B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911235610.9A CN110989934B (en) 2019-12-05 2019-12-05 Block chain link point data storage method, block chain system and block chain node

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911235610.9A CN110989934B (en) 2019-12-05 2019-12-05 Block chain link point data storage method, block chain system and block chain node

Publications (2)

Publication Number Publication Date
CN110989934A true CN110989934A (en) 2020-04-10
CN110989934B CN110989934B (en) 2023-08-25

Family

ID=70090457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911235610.9A Active CN110989934B (en) 2019-12-05 2019-12-05 Block chain link point data storage method, block chain system and block chain node

Country Status (1)

Country Link
CN (1) CN110989934B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538785A (en) * 2020-04-23 2020-08-14 北京海益同展信息科技有限公司 Data writing method, device and system of block chain and electronic equipment
CN113296707A (en) * 2021-05-31 2021-08-24 尧领有限公司 Disk storage method and system, block chain node and computer readable storage medium
CN114553896A (en) * 2020-11-25 2022-05-27 富士通株式会社 Information processing system, information processing method, and computer-readable storage medium

Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040117563A1 (en) * 2002-12-13 2004-06-17 Wu Chia Y. System and method for synchronizing access to shared resources
CN106406758A (en) * 2016-09-05 2017-02-15 华为技术有限公司 Data processing method based on distributed storage system, and storage equipment
CN106534317A (en) * 2016-11-17 2017-03-22 杭州云象网络技术有限公司 Disaster recovery cloud storage system construction method based on block chain technology
CN106909317A (en) * 2011-01-20 2017-06-30 谷歌公司 The data storage on memory node
CN107005574A (en) * 2016-12-23 2017-08-01 深圳前海达闼云端智能科技有限公司 Block generation method and device and block chain network
CN107079059A (en) * 2016-12-21 2017-08-18 深圳前海达闼云端智能科技有限公司 Block chain storage method and device and node equipment
CN107078903A (en) * 2016-12-23 2017-08-18 深圳前海达闼云端智能科技有限公司 Digging ore deposit method, device and the node device of block chain
CN107122477A (en) * 2017-05-02 2017-09-01 成都中远信电子科技有限公司 A kind of block chain storage system
CN107169125A (en) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 The dispensing statistics acquisition methods and device of multimedia resource
CN107273455A (en) * 2017-05-31 2017-10-20 深圳前海微众银行股份有限公司 Block chain data access method and device
CN107657438A (en) * 2017-09-18 2018-02-02 联动优势科技有限公司 A kind of block chain generation method, data verification method, node and system
CN107807951A (en) * 2017-09-18 2018-03-16 联动优势科技有限公司 A kind of block chain generation method, data verification method, node and system
CN108780386A (en) * 2017-12-20 2018-11-09 华为技术有限公司 A kind of methods, devices and systems of data storage
CN108829772A (en) * 2018-05-29 2018-11-16 杭州趣链科技有限公司 A kind of block chain block file-based storage and read method
CN108959654A (en) * 2018-08-06 2018-12-07 安徽笛申科技有限公司 A kind of data management system based on block chain intelligence contract node and storage
CN109542980A (en) * 2018-11-20 2019-03-29 北京磁云数字科技有限公司 A kind of data processing method, device, equipment and the medium of block chain
CN109582213A (en) * 2017-09-29 2019-04-05 杭州海康威视***技术有限公司 Data reconstruction method and device, data-storage system
CN109857751A (en) * 2019-01-23 2019-06-07 平安科技(深圳)有限公司 Cross-platform data update method, device and computer equipment based on block chain
CN110019235A (en) * 2017-12-29 2019-07-16 百度在线网络技术(北京)有限公司 Data storage, restoration methods, device, equipment and medium based on block chain
CN110175212A (en) * 2019-05-22 2019-08-27 杭州复杂美科技有限公司 Block chain distributed storage method, method for reading data, equipment and storage medium
CN110196881A (en) * 2019-04-22 2019-09-03 华中科技大学 A kind of data read-write method and block chain network structure based on block chain
CN110362633A (en) * 2019-07-23 2019-10-22 腾讯科技(深圳)有限公司 Block data storage method, device, computer equipment and storage medium
CN110531924A (en) * 2019-05-31 2019-12-03 杭州复杂美科技有限公司 For extending the method and apparatus, storage medium and system of block chain memory capacity
US10885022B1 (en) * 2019-09-12 2021-01-05 Advanced New Technologies Co., Ltd. Log-structured storage systems

Patent Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040117563A1 (en) * 2002-12-13 2004-06-17 Wu Chia Y. System and method for synchronizing access to shared resources
CN106909317A (en) * 2011-01-20 2017-06-30 谷歌公司 The data storage on memory node
CN106406758A (en) * 2016-09-05 2017-02-15 华为技术有限公司 Data processing method based on distributed storage system, and storage equipment
CN106534317A (en) * 2016-11-17 2017-03-22 杭州云象网络技术有限公司 Disaster recovery cloud storage system construction method based on block chain technology
CN107079059A (en) * 2016-12-21 2017-08-18 深圳前海达闼云端智能科技有限公司 Block chain storage method and device and node equipment
CN107078903A (en) * 2016-12-23 2017-08-18 深圳前海达闼云端智能科技有限公司 Digging ore deposit method, device and the node device of block chain
CN107005574A (en) * 2016-12-23 2017-08-01 深圳前海达闼云端智能科技有限公司 Block generation method and device and block chain network
CN107122477A (en) * 2017-05-02 2017-09-01 成都中远信电子科技有限公司 A kind of block chain storage system
CN107169125A (en) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 The dispensing statistics acquisition methods and device of multimedia resource
CN107273455A (en) * 2017-05-31 2017-10-20 深圳前海微众银行股份有限公司 Block chain data access method and device
CN107657438A (en) * 2017-09-18 2018-02-02 联动优势科技有限公司 A kind of block chain generation method, data verification method, node and system
CN107807951A (en) * 2017-09-18 2018-03-16 联动优势科技有限公司 A kind of block chain generation method, data verification method, node and system
CN109582213A (en) * 2017-09-29 2019-04-05 杭州海康威视***技术有限公司 Data reconstruction method and device, data-storage system
CN108780386A (en) * 2017-12-20 2018-11-09 华为技术有限公司 A kind of methods, devices and systems of data storage
CN110019235A (en) * 2017-12-29 2019-07-16 百度在线网络技术(北京)有限公司 Data storage, restoration methods, device, equipment and medium based on block chain
CN108829772A (en) * 2018-05-29 2018-11-16 杭州趣链科技有限公司 A kind of block chain block file-based storage and read method
CN108959654A (en) * 2018-08-06 2018-12-07 安徽笛申科技有限公司 A kind of data management system based on block chain intelligence contract node and storage
CN109542980A (en) * 2018-11-20 2019-03-29 北京磁云数字科技有限公司 A kind of data processing method, device, equipment and the medium of block chain
CN109857751A (en) * 2019-01-23 2019-06-07 平安科技(深圳)有限公司 Cross-platform data update method, device and computer equipment based on block chain
CN110196881A (en) * 2019-04-22 2019-09-03 华中科技大学 A kind of data read-write method and block chain network structure based on block chain
CN110175212A (en) * 2019-05-22 2019-08-27 杭州复杂美科技有限公司 Block chain distributed storage method, method for reading data, equipment and storage medium
CN110531924A (en) * 2019-05-31 2019-12-03 杭州复杂美科技有限公司 For extending the method and apparatus, storage medium and system of block chain memory capacity
CN110362633A (en) * 2019-07-23 2019-10-22 腾讯科技(深圳)有限公司 Block data storage method, device, computer equipment and storage medium
US10885022B1 (en) * 2019-09-12 2021-01-05 Advanced New Technologies Co., Ltd. Log-structured storage systems

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
冯汉超;周凯东;: "分布式***下大数据存储结构优化研究", no. 04 *
刘冰星;邓玉辉;: "一种网络编码分布式存储***中的数据更新策略", no. 03 *
刘昌平, 刘海: "一种区块链数据的云存储与共享方法", vol. 38, no. 09, pages 2600 - 2603 *
刘波;刘青凤;: "云计算环境下异构数据节点冗余存储模式的优化", no. 01 *
史锦山 等: "物联网下的区块链访问控制综述", vol. 30, no. 6, pages 1632 - 1648 *
罗香玉;汪芸;陈笑梅;袁飞飞;李聪;: "复本存储机制的效率研究", no. 07 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538785A (en) * 2020-04-23 2020-08-14 北京海益同展信息科技有限公司 Data writing method, device and system of block chain and electronic equipment
CN114553896A (en) * 2020-11-25 2022-05-27 富士通株式会社 Information processing system, information processing method, and computer-readable storage medium
CN113296707A (en) * 2021-05-31 2021-08-24 尧领有限公司 Disk storage method and system, block chain node and computer readable storage medium

Also Published As

Publication number Publication date
CN110989934B (en) 2023-08-25

Similar Documents

Publication Publication Date Title
CN111344706B (en) Method and system for managing transactions on blockchain
KR102566892B1 (en) Blockchain consensus method, device and system
US12019652B2 (en) Method and device for synchronizing node data
CN110989934B (en) Block chain link point data storage method, block chain system and block chain node
KR20210002574A (en) Data backup methods, storage media and computing devices
CN108616574B (en) Management data storage method, device and storage medium
JP2024505692A (en) Data processing methods, devices and computer equipment based on blockchain networks
KR20200132518A (en) System for supporting transaction interoperation between blockchain networks and method thereof
CN112714158A (en) Transaction processing method, relay network, cross-link gateway, system, medium, and device
TWI762851B (en) Data verification method, system, device and equipment in blockchain ledger
CN112087530B (en) Method, device, equipment and medium for uploading data to block chain system
CN110442601B (en) Openstack mirror image data parallel acceleration method and device
KR20180005542A (en) Apparatus and method for verifing data integrity
CN115129728A (en) File checking method and device
CN116070285A (en) Asynchronous consensus method, device, server and medium based on Bayesian fault tolerance
CN109992447B (en) Data copying method, device and storage medium
US11595471B1 (en) Method and system for electing a master in a cloud based distributed system using a serverless framework
WO2023029485A1 (en) Data processing method and apparatus, computer device, and computer-readable storage medium
KR101710138B1 (en) Data distribution processing system and data distribution processing method
CN113283891A (en) Information processing method and device and electronic equipment
CN112596733A (en) Method, device, storage medium and electronic equipment for compiling and acquiring file
CN112988738A (en) Data slicing method and device for block chain
CN111638956A (en) Application running method and device and storage medium
CN110597540A (en) Version updating method and device of financial terminal, server and storage medium
CN113271229B (en) Equipment control method and device, storage equipment, safety equipment, switch, router and server

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210308

Address after: 201111 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Applicant after: Dalu Robot Co.,Ltd.

Address before: No.3, 7th floor, unit 1, building 5, No.399, Fucheng Avenue West, Chengdu, Sichuan 610094

Applicant before: CLOUDMINDS (CHENGDU) TECHNOLOGIES Co.,Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 201111 Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai

Applicant after: Dayu robot Co.,Ltd.

Address before: 201111 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Applicant before: Dalu Robot Co.,Ltd.

GR01 Patent grant
GR01 Patent grant