WO2014089786A1 - 数据存储方法及系统 - Google Patents

数据存储方法及系统 Download PDF

Info

Publication number
WO2014089786A1
WO2014089786A1 PCT/CN2012/086466 CN2012086466W WO2014089786A1 WO 2014089786 A1 WO2014089786 A1 WO 2014089786A1 CN 2012086466 W CN2012086466 W CN 2012086466W WO 2014089786 A1 WO2014089786 A1 WO 2014089786A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
stored
storage
data block
node
Prior art date
Application number
PCT/CN2012/086466
Other languages
English (en)
French (fr)
Inventor
陈国龙
张烽
许一震
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201280002942.2A priority Critical patent/CN103370113B/zh
Priority to PCT/CN2012/086466 priority patent/WO2014089786A1/zh
Publication of WO2014089786A1 publication Critical patent/WO2014089786A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • G06F12/1018Address translation using page tables, e.g. page table structures involving hashing techniques, e.g. inverted page tables

Definitions

  • the present invention relates to the field of computer storage technologies, and in particular, to a data storage method and system.
  • the Erasure code (EC) technology can be used to divide the original data to be stored into multiple data blocks, and add some data blocks for storing the verification information.
  • the data blocks and the stored data with the original data are stored.
  • the data block of the verification information constitutes a complete data to be stored, and is stored to different storage locations by a certain storage method.
  • a data storage method where each data block is stored in a format of (key key, value), wherein key is used to uniquely identify a data block, and value is used to store original data or verification information. . Hashing the key in each data block to obtain a hash value, a hash value belongs to a storage interval (partition), and one of the storage intervals corresponds to an integer interval, if the hash value falls into the In the integer interval corresponding to the storage interval, that is, the hash value belongs to the storage interval, and then each data block is stored in the storage interval corresponding to the hash value obtained by each.
  • each data block of the same data should be dispersed in different storage intervals as much as possible.
  • the key in the plurality of data blocks is hashed by the above method, if the obtained hash value corresponds to the same storage interval, multiple data blocks are stored in the same storage interval, thereby reducing the number of data blocks.
  • the invention provides a data storage method and system, which can improve the security of data storage.
  • the present invention adopts the following technical solutions:
  • a data storage method including:
  • the hashing operation is performed by using a key in a data block of the data to be stored, and the obtained hash value includes:
  • the hash operation is performed by using a key in the first data block of the data to be stored to obtain a hash value, and the first data block is a data block in which the position number is ranked first in the data to be stored.
  • each storage interval of the storage group logically constitutes a distributed hash table DHT ring, and one of the DHT rings
  • the node represents a storage interval
  • the sequentially storing the data blocks of the data to be stored in each storage interval of the storage group includes:
  • the first node and the first node are consecutive after a clockwise or counterclockwise direction
  • the first data block of the data to be stored is stored in the first node
  • the first node represents a storage interval corresponding to the hash value
  • each data block in the data to be stored is They are arranged in order according to their respective position numbers in the data to be stored.
  • a data storage system including:
  • a receiving module configured to receive a data block of data to be stored, where the data block includes a key and the data itself;
  • An operation module configured to perform a hash operation by using a key in a data block of the data to be stored, to obtain a hash value;
  • the storage group is obtained by equally dividing each storage interval in the storage system according to a preset value, and is located at a maximum value among the number of data blocks of each of the data to be stored;
  • a storage module configured to sequentially store the data blocks of the data to be stored in each storage interval of the storage group, wherein a storage interval of the storage group stores one data block of the data to be stored.
  • the operation module is specifically configured to perform a hash operation by using a key in a first data block of data to be stored, to obtain a hash value, and the first data.
  • the block is a data block in which the position number is ranked first in the data to be stored.
  • each storage interval of the storage group logically constitutes a distributed hash table DHT ring, where the DHT ring One node represents a storage interval;
  • the storage module is specifically configured to sequentially store, according to the first node of the DHT ring, each data block in the data to be stored in the DHT ring, the first node, and the first node in the Shun a timed or counterclockwise direction after a continuous node, wherein the first data block of the data to be stored is stored in the first node, and the first node represents a storage interval corresponding to the hash value, Each data block in the data to be stored is ordered in order according to the position number of each of the data to be stored.
  • a data storage system including:
  • a receiver configured to receive a data block of data to be stored, where the data block includes a key and the data itself;
  • a processor configured to perform a hash operation by using a key in a data block of the data to be stored, to obtain a hash value, where the storage group is obtained by equally dividing each storage interval in the storage system according to a preset value, and is located at The physical hard disks in which the storage segments of the same storage group are located are different from each other, and the preset value is the maximum value of the number of data blocks of each data to be stored;
  • a memory for sequentially storing the data blocks of the data to be stored in each of the storage groups a storage interval, wherein one storage interval of the storage group stores one data block of the data to be stored.
  • the processor is specifically configured to perform a hash operation by using a key in a first data block of data to be stored, to obtain a hash value, where the first data is The block is a data block in which the position number is ranked first in the data to be stored.
  • each storage interval of the storage group logically constitutes a distributed hash table DHT ring, where the DHT ring One node represents a storage interval;
  • the memory is specifically configured to sequentially store, according to the first node of the DHT ring, each data block in the data to be stored in the DHT ring, the first node, and the first node in a clockwise manner. Or the contiguous node after the counterclockwise direction, wherein the first data block of the data to be stored is stored in the first node, and the first node represents a storage interval corresponding to the hash value, where the Each of the data blocks in the stored data is sequentially arranged according to the position number of each of the data to be stored.
  • the data blocks of the data to be stored may be sequentially stored in respective storage intervals of the storage group, and one storage interval of the storage group stores one data block of the data to be stored. That is to say, each data block of the same data is stored in a storage interval different from the storage group, and the physical hard disks of the respective storage intervals in the same storage group are different from each other, that is, the same data is realized.
  • the data is dispersed and stored in a storage interval on different physical hard disks.
  • each data block of the same data may be stored in the same storage interval, and the present invention improves the security of data storage.
  • the embodiment of the present invention can store the data of the same data in the storage interval on different physical hard disks, so that the storage location of the data is relatively balanced, and the storage pressure of each storage interval is relatively balanced. It can effectively avoid the problem that a large number of data blocks of the same data in the prior art are stored in one storage interval, resulting in excessive storage pressure of the storage interval.
  • FIG. 1 is a schematic flowchart of a data storage method according to an embodiment of the present invention
  • FIG. 2a is a first schematic diagram of a logically constructed DHT ring in a storage interval according to an embodiment of the present invention
  • FIG. 2b is a second schematic diagram of a logically constructed DHT ring in a storage interval according to an embodiment of the present invention
  • 2c is a third schematic diagram of a logically constructed DHT ring in a storage interval according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a first structure of a data storage system according to an embodiment of the present invention
  • FIG. 4 is a schematic diagram of a second structure of a data storage system according to an embodiment of the present invention.
  • the embodiment of the present invention provides a data storage method.
  • the data blocks of the same data to be stored may be stored in different storage intervals, that is, one storage interval stores only one data to be stored. data block. It can be understood that one storage area can store one data block of different data.
  • the storage interval is a real storage area on the physical hard disk. When the entire storage system is initialized, the storage area on all physical hard disks can be divided into several storage areas of equal size. Each storage interval has a capacity sufficient to hold a certain number of data blocks.
  • a data storage method provided by an embodiment of the present invention includes the following steps: 101. Receive a data block of data to be stored, where the data block includes a key and data.
  • the data to be stored may be obtained by dividing the original data to be stored by using an EC technology.
  • the specific process is as follows: The original data to be stored is divided into multiple data blocks by using EC technology, and some data blocks are added.
  • the data block storing the original data and the data block storing the verification information constitute a complete data to be stored.
  • Each data block is stored in the form of a key (key), where key is used to uniquely identify the data block, and value is used to store data.
  • key is used to uniquely identify the data block
  • value is used to store data.
  • the value stored may be the original data itself or may be verified. information.
  • a hash value belongs to only one storage interval.
  • the storage group divides each storage interval in the storage system according to a preset value, and the preset value is a maximum value among the number of data blocks of each data to be stored.
  • each storage interval in the storage system has a unique identification number.
  • the identification numbers of the storage sections on the same physical hard disk can be set to be separated from each other. If the value is greater than the preset value, all the storage sections in the storage system are sorted according to the respective identification numbers, and the sorted storage sections are sequentially divided into multiple storage groups according to the preset value, so that the same storage group can be obtained.
  • the physical hard disks of each storage interval in the storage group are different from each other.
  • the data blocks of the to-be-stored data are sequentially stored in the respective storage intervals of the storage group, wherein one storage interval of the storage group stores one data block of the data to be stored.
  • the data blocks of the data to be stored may be sequentially stored in the respective storage intervals of the storage group, and one storage interval of the storage group stores the number of the to-be-stored According to a data block. That is to say, each data block of the same data is stored in a storage interval different from the storage group, and the physical hard disks of the respective storage intervals in the same storage group are different from each other, that is, the same data is realized.
  • the data is dispersed and stored in a storage interval on different physical hard disks.
  • each data block of the same data may be stored in the same storage interval, and the present invention improves the security of data storage.
  • the embodiment of the present invention can store the data of the same data in the storage interval on different physical hard disks, so that the storage location of the data is relatively balanced, and the storage pressure of each storage interval is relatively balanced. It can effectively avoid the problem that a large number of data blocks of the same data in the prior art are stored in one storage interval, resulting in excessive storage pressure of the storage interval.
  • step 102 may be performed in the following alternative manner: performing a hash operation by using a key in the first data block of the data to be stored, and obtaining a hash value, where the first data block is in the waiting The location number in the stored data is ranked in the first data block.
  • Each storage interval in the storage system mentioned in the embodiment of the present invention may logically form a distributed hash table (DHT) ring.
  • the DHT ring includes 12 nodes. Each node represents a storage interval. The number 01-12 stored in each node in Figure 2a represents the identification number of the corresponding storage interval. If the preset value in step 103 is 6, the 12 storage sections may be divided into two storage groups, and the first storage group may include a storage interval with an identification number of 01-06, and the second storage group includes an identifier.
  • the storage interval numbered 07-12, each storage interval of each storage group logically also constitutes a DHT ring, for example, FIG. 2b represents the DHT ring formed by the first storage group, and FIG. 2c represents the second storage group composition. DHT ring.
  • step 104 may be performed in the following manner: starting from the first node of the DHT ring, storing each data block in the data to be stored in the DHT ring in the first node and the The first node is on a continuous node after a clockwise or counterclockwise direction.
  • the first data block of the data to be stored is stored in the first node, and the first node represents a storage interval corresponding to the hash value, and each data block in the data to be stored is in accordance with each
  • the position numbers in the data to be stored are arranged in an orderly manner.
  • one data to be stored includes four data blocks, and the four data blocks are sequentially arranged in order of position numbers in the data to be stored: data block 1, data block 2, data block 3 Data block 4, the data block 1 is the first data block of the data to be stored. If the hash operation is performed by using the key in the first data block, the obtained hash value is 11, and it can be known that the storage interval indicated by the 11 is located in the second storage group, and then the data block is 1.
  • Data block 2, data block 3, and data block 4 are sequentially stored in the nodes of 11, 12, 07, 08 shown in Fig. 2c, or, data block 1, data block 2, data block 3, data block 4 Store the 11, 10, 09, 08 shown in Figure 2c in sequence.
  • the four data blocks of the data to be stored may be distributed and stored on different physical hard disks.
  • step 104 is an ordered storage mode.
  • the data When the data is recovered, only the data needs to be sequentially read out in the order of the storage interval, and the position of each data block in the entire data to be stored can be restored.
  • the unordered storage mode can also be used, but the correspondence between each data block and the storage interval needs to be saved, so that when the data is restored, the position of each data block in the entire data to be stored can be restored, and the data is guaranteed. Continuity.
  • hashing is performed by using a key in a data block of each data to be stored.
  • the hash values obtained during the operation may be the same, and multiple different data to be stored may be stored in the same group, that is, one storage interval of the same group may store one data of each of the different data to be stored. Piece.
  • an embodiment of the present invention provides a data storage system, including:
  • the receiving module 31 is configured to receive a data block of data to be stored, where the data block includes a key and the data itself;
  • step 101 A detailed description of the data to be stored and its data blocks can be found in step 101.
  • the operation module 32 is configured to perform a hash operation by using a key in a data block of the data to be stored to obtain a hash value, where the storage group is obtained by equally dividing each storage interval in the storage system according to a preset value, and The physical hard disks of the respective storage intervals in the same storage group are different from each other.
  • the value is the maximum of the number of data blocks of each data to be stored;
  • step 103 See step 103 for a detailed description of the storage group.
  • the storage module 34 is configured to sequentially store the data blocks of the to-be-stored data in each storage interval of the storage group, wherein one storage interval of the storage group stores one data block of the data to be stored. See step 104 for a specific storage implementation process.
  • the storage system provided in the embodiment of the present invention may sequentially store the data blocks of the data to be stored in each storage interval of the storage group, and store a storage interval of the storage group for one of the data to be stored. data block. That is to say, each data block of the same data is stored in a storage interval different from the storage group, and the physical hard disks of the respective storage intervals in the same storage group are different from each other, that is, the same data is realized.
  • the data is dispersed and stored in a storage interval on different physical hard disks. Compared with the prior art, each data block of the same data may be stored in the same storage interval, and the present invention improves the security of data storage.
  • the embodiment of the present invention can store the data of the same data in the storage interval on different physical hard disks, so that the storage location of the data is relatively balanced, and the storage pressure of each storage interval is relatively balanced. It can effectively avoid the problem that a large number of data blocks of the same data in the prior art are stored in one storage interval, resulting in excessive storage pressure of the storage interval.
  • the operation module is specifically configured to perform a hash operation by using a key in a first data block of data to be stored, to obtain a hash value, where the first data block is in the data to be stored.
  • the position number is ranked in the first data block.
  • each storage interval of the storage group logically constitutes a DHT ring, and one node on the DHT ring represents a storage interval;
  • the DHT ring can be referred to the description of the DHT ring in an alternate implementation of step 104.
  • the storage module is specifically configured to sequentially store, according to the first node of the DHT ring, each data block in the data to be stored in the DHT ring, the first node, and the first node in the Shun Hour or counterclockwise after successive nodes.
  • the first data block of the data to be stored is stored in the first node, the first node represents a storage interval corresponding to the hash value, and each data block in the data to be stored is They are arranged in order according to their respective position numbers in the data to be stored.
  • an embodiment of the present invention further provides a data storage system, including: a bus 4000, a driving circuit 4001, a receiver 41, a processor 42, and a memory 43.
  • a receiver 41 configured to receive a data block of data to be stored, where the data block includes a key and the data itself;
  • step 101 A detailed description of the data to be stored and its data blocks can be found in step 101.
  • the processor 42 is configured to perform a hash operation by using a key in a data block of the data to be stored, to obtain a hash value, and the storage group is to divide each storage interval in the storage system according to a preset value.
  • the default value is the maximum of the number of data blocks of each data to be stored;
  • step 103 See step 103 for a detailed description of the storage group.
  • the memory 43 is configured to sequentially store the data blocks of the data to be stored in the respective storage intervals of the storage group, wherein a storage interval of the storage group stores one data block of the data to be stored.
  • step 104 See step 104 for a specific storage implementation process.
  • the storage system provided in the embodiment of the present invention may sequentially store the data blocks of the data to be stored in each storage interval of the storage group, and store a storage interval of the storage group for one of the data to be stored. data block. That is to say, each data block of the same data is stored in a storage interval different from the storage group, and the physical hard disks of the respective storage intervals in the same storage group are different from each other, that is, the same data is realized.
  • the data is dispersed and stored in a storage interval on different physical hard disks. Compared with the prior art, each data block of the same data may be stored in the same storage interval, and the present invention improves the security of data storage.
  • the embodiment of the present invention can store the data of the same data in the storage interval on different physical hard disks, so that the storage location of the data is relatively balanced, and the storage pressure of each storage interval is relatively balanced. It can effectively avoid the problem that a large number of data blocks of the same data in the prior art are stored in one storage interval, resulting in excessive storage pressure of the storage interval.
  • the receiver 41 can be coupled to an antenna.
  • the driving circuit 4001 is configured to provide a driver for each hardware in the storage system so that each hardware can work normally.
  • the memory 43 includes at least one or more of the following memory devices, a read only memory, a random access memory or a nonvolatile random access memory, and the memory provides instructions and data to the processor.
  • the processor 42 may be an integrated circuit chip, with a signal processing circuit or a software-formed instruction.
  • the instructions may be implemented and controlled by a processor therein for performing the methods disclosed in the embodiments of the present invention.
  • the processor may also be a general-purpose processor, a digital signal processing (DSP), an application specific integrated circuit, a field programmable gate array (FPGA) or other Programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • DSP digital signal processing
  • FPGA field programmable gate array
  • the general-purpose processor 42 may be a microprocessor or the processor or any conventional processor, decoder, or the like.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as hardware processor execution completion or performed by a combination of hardware and software modules in the processor.
  • the software modules can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • bus system 4000 which in addition to the data bus includes a power bus, a control bus, and a status signal bus.
  • bus system 4000 various buses are labeled as bus system 4000 in FIG.
  • the processor 42 is specifically configured to perform a hash operation by using a key in a first data block of data to be stored, to obtain a hash value, where the first data block is the data to be stored.
  • the middle position number is ranked in the first data block.
  • each storage interval of the storage group logically constitutes a DHT ring, and one node on the DHT ring represents a storage interval;
  • the DHT ring can be referred to the description of the DHT ring in an alternate implementation of step 104.
  • the memory 43 is specifically configured to sequentially store, according to the first node of the DHT ring, each data block in the data to be stored in the DHT ring, the first node, and the first node in the Shun a timed or counterclockwise direction after a continuous node, wherein the first data block of the data to be stored is stored in the first node, and the first node represents a storage interval corresponding to the hash value, Each data block in the data to be stored is ordered in order according to the position number of each of the data to be stored.
  • the present invention can be implemented by means of software plus necessary general hardware, and of course, by hardware, but in many cases, the former is a better implementation. .
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a readable storage medium, such as a floppy disk of a computer.
  • a hard disk or optical disk or the like includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种数据存储方法及系统,包括:接收一个待存储数据的数据块,所述数据块包括密钥和数据本身;采用所述待存储数据的一个数据块中的密钥进行哈希运算,得到哈希值;确定所述哈希值对应的存储区间所在的存储组,所述存储组为将存储系统中各个存储区间按照预设值进行均分得到,且位于同一存储组中的各个存储区间各自所在的物理硬盘互不相同,所述预设值为所有待存储数据各自的数据块个数中的最大值;将所述待存储数据的数据块依次存储在所述存储组的各个存储区间中,其中,所述存储组的一个存储区间存储所述待存储数据的一个数据块。

Description

数据存储方法及系统 技术领域
本发明涉及计算机存储技术领域, 尤其涉及一种数据存储方法 及系统。
背景技术
采用容删编码 ( Erasure code , EC ) 技术可以将待存储的原始数 据分割成多个数据块, 并新增一些数据块用于存放校验信息, 这些 存储有原始数据的数据块和存储有校验信息的数据块构成完整的待 存储数据, 并采用一定的存储方法存储到不同的存储位置。
现有技术中, 提供一种数据存储方法, 每个数据块按照 (密钥 key , value ) 的格式进行存储, 其中, key用于唯一标识一个数据块, value用于存储原始数据或者校验信息。 分别对每个数据块中的 key 进行哈希运算得到哈希值 , 一个哈希值属于一个存储区 间 ( partition ) , 一个所述存储区间对应一段整数区间, 如果所述哈希 值落入所述存储区间对应的一段整数区间中, 亦即该哈希值属于所 述存储区间, 之后, 将每个数据块存储在各自得到的哈希值对应的 存储区间中即可。
为了提高数据存储的安全性, 同一数据的各个数据块应该尽可 能的分散在不同的存储区间中。 然而, 采用上述方法对多个数据块 中的 key进行哈希运算时, 如果得到的哈希值对应的存储区间相同, 将会导致多个数据块被存储在同一个存储区间中, 因而降低了数据 的安全性,
发明内容
本发明提供一种数据存储方法及系统, 可以提高数据存储的安全性。 为了达到上述发明目 的, 本发明采用如下技术方案:
第一方面, 提供一种数据存储方法, 包括:
接收一个待存储数据的数据块, 所述数据块包括密钥和数据本身; 采用所述待存储数据的一个数据块中的密钥进行哈希运算,得到哈希 值; 系统中各个存储区间按照预设值进行均分得到,且位于同一存储组中的各 个存储区间各自所在的物理硬盘互不相同,所述预设值为所有待存储数据 各自的数据块个数中的最大值; 中,其中,所述存储组的一个存储区间存储所述待存储数据的一个数据块。
第一方面的第一种实现方式中,所述采用待存储数据的一个数据块中 的密钥进行哈希运算, 得到哈希值包括:
采用待存储数据的第一个数据块中的密钥进行哈希运算, 得到哈希 值,所述第一个数据块为在所述待存储数据中位置序号排在第一个的数据 块。
结合第一方面的第一种实现方式, 在第一方面的第二实现方式中, 所 述存储组的各个存储区间在逻辑上构成一个分布式哈希表 DHT环, 所述 DHT环上的一个节点表示一个存储区间;
所述将所述待存储数据的数据块依次存储在所述存储组的各个存储 区间中包括:
从所述 DHT环的第一节点开始, 将所述待存储数据中各个数据块依 次存储在所述 DHT环中所述第一节点及所述第一节点在顺时针或者逆时 针方向之后连续的节点上, 其中, 所述待存储数据的第一个数据块存储在 所述第一节点, 所述第一节点表示所述哈希值对应的存储区间, 所述待存 储数据中各个数据块是按照各自在所述待存储数据中的位置序号有序排 列的。
第二方面, 提供一种数据存储系统, 包括:
接收模块, 用于接收一个待存储数据的数据块, 所述数据块包括密钥 和数据本身;
运算模块, 用于采用待存储数据的一个数据块中的密钥进行哈希运 算, 得到哈希值; 存储组为将存储系统中各个存储区间按照预设值进行均分得到,且位于同 所有待存储数据各自的数据块个数中的最大值;
存储模块,用于将所述待存储数据的数据块依次存储在所述存储组的 各个存储区间中, 其中, 所述存储组的一个存储区间存储所述待存储数据 的一个数据块。
在第二方面的第一种实现方式中, 所述运算模块, 具体用于采用待存 储数据的第一个数据块中的密钥进行哈希运算,得到哈希值, 所述第一个 数据块为在所述待存储数据中位置序号排在第一个的数据块。
结合第二方面的第一种实现方式, 在第二方面的第二种实现方式中, 所述存储组的各个存储区间在逻辑上构成一个分布式哈希表 DHT环, 所 述 D H T环上的一个节点表示一个存储区间;
所述存储模块, 具体用于从所述 DHT环的第一节点开始, 将所述待 存储数据中各个数据块依次存储在所述 DHT环中所述第一节点及所述第 一节点在顺时针或者逆时针方向之后连续的节点上, 其中, 所述待存储数 据的第一个数据块存储在所述第一节点,所述第一节点表示所述哈希值对 应的存储区间,所述待存储数据中各个数据块是按照各自在所述待存储数 据中的位置序号有序排列的。
第三方面, 提供一种数据存储系统, 包括:
接收器, 用于接收一个待存储数据的数据块, 所述数据块包括密钥和 数据本身;
处理器, 用于采用待存储数据的一个数据块中的密钥进行哈希运算, 得到哈希值; 所述存储组为将存储系统中各个存储区间按照预设值进行均分得到,且位 于同一存储组中的各个存储区间各自所在的物理硬盘互不相同,所述预设 值为所有待存储数据各自的数据块个数中的最大值;
存储器,用于将所述待存储数据的数据块依次存储在所述存储组的各 个存储区间中, 其中, 所述存储组的一个存储区间存储所述待存储数据的 一个数据块。
在第三方面的第一种实现方式中, 所述处理器, 具体用于采用待存储 数据的第一个数据块中的密钥进行哈希运算, 得到哈希值, 所述第一个数 据块为在所述待存储数据中位置序号排在第一个的数据块。
结合第三方面的第一种实现方式, 在第三方面的第二种实现方式中, 所述存储组的各个存储区间在逻辑上构成一个分布式哈希表 DHT环, 所 述 D H T环上的一个节点表示一个存储区间;
所述存储器, 具体用于从所述 DHT环的第一节点开始, 将所述待存 储数据中各个数据块依次存储在所述 DHT环中所述第一节点及所述第一 节点在顺时针或者逆时针方向之后连续的节点上, 其中, 所述待存储数据 的第一个数据块存储在所述第一节点,所述第一节点表示所述哈希值对应 的存储区间,所述待存储数据中各个数据块是按照各自在所述待存储数据 中的位置序号有序排列的。
通过上述技术方案, 可以将所述待存储数据的数据块依次存储在所 述存储组的各个存储区间中,且所述存储组的一个存储区间存储所述待存 储数据的一个数据块。 也就是说, 同一数据的各个数据块存储在所述存储 组互不相同的存储区间中,而同一存储组中的各个存储区间各自所在的物 理硬盘互不相同,亦即实现了将同一数据的各个数据分散存储在不同物理 硬盘上的存储区间中,与现有技术同一数据的各个数据块可能被存储在同 一个存储区间中相比, 本发明提高了数据存储的安全性。
同时,由于本发明实施例可以将同一数据的各个数据分散存储在不同 物理硬盘上的存储区间中, 使得数据的存储位置比较均衡, 各个存储区间 的存储压力也比较均衡。可以有效避免现有技术中同一数据的大量数据块 集中存放在一个存储区间中导致该存储区间的存储压力过大的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对 实施例或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员 来讲, 在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附 图。
图 1为本发明实施例提供的一种数据存储方法的流程示意图; 图 2a为本发明实施例提供的一种存储区间在逻辑上构成的 DHT环的 第一种示意图;
图 2b为本发明实施例提供的一种存储区间在逻辑上构成的 DHT环的 第二种示意图;
图 2c为本发明实施例提供的一种存储区间在逻辑上构成的 DHT环的 第三种示意图;
图 3为本发明实施例提供的数据存储系统的第一种结构示意图; 图 4为本发明实施例提供的数据存储系统的第二种结构示意图。 具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进 行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没 有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的 范围。
本发明实施例提供一种数据存储方法, 采用该方法存储数据时, 可以 使得同一待存储数据的数据块存储在互不相同的存储区间中,亦即一个存 储区间仅存储同一待存储数据的一个数据块。 可以理解的是, 一个存储区 间可以存储不同数据各自的一个数据块。
其中, 所述存储区间为物理硬盘上一块真实的存储区域。 在整个存储 系统进行初始化时,可以将所有物理硬盘上的存储区域均分成若干个容量 大小相等的存储区间。 每个存储区间的容量足够存放一定数量的数据块。 如图 1所示,本发明实施例提供的一种数据存储方法,包括如下步骤: 101、 接收一个待存储数据的数据块, 所述数据块包括密钥和数据。 其中, 所述待存储数据可以是通过将待存储的原始数据采用 EC技术 进行分割得到, 具体过程如下: 采用 EC技术将待存储的原始数据分割 成多个数据块, 并新增一些数据块用于存放校验信息, 这些存储有 原始数据的数据块和存储有校验信息的数据块构成完整的待存储数 据。
每个数据块均采用 (密钥 key , value ) 形式进行存储, 其中, key用 于唯一标识所述数据块, value用于存储数据, 例如, value存储的可以是 原始数据本身, 也可以是验证信息。
102、 采用所述待存储数据的一个数据块中的密钥进行哈希运算, 得 到哈希值。
其中, 一个哈希值只属于一个存储区间。 其中,所述存储组为将存储系统中各个存储区间按照预设值进行均分 同, 所述预设值为所有待存储数据各自的数据块个数中的最大值。
例如, 在将存储系统中各个存储区间进行分组时, 由于各个存储区间 均有一个唯一的标识号, 在系统进行初始化时, 可以将位于同一物理硬盘 上的各个存储区间的标识号设置为彼此间隔大于所述预设值,然后将存储 系统中所有存储区间按照各自标识号进行排序,并将排序后的各个存储区 间依次按照所述预设值划分为多个存储组, 这样, 可以得到位于同一存储 组中的各个存储区间各自所在的物理硬盘互不相同。
104、 将所述待存储数据的数据块依次存储在所述存储组的各个存储 区间中, 其中, 所述存储组的一个存储区间存储所述待存储数据的一个数 据块。
本发明实施例中,可以将所述待存储数据的数据块依次存储在所述存 储组的各个存储区间中,且所述存储组的一个存储区间存储所述待存储数 据的一个数据块。 也就是说, 同一数据的各个数据块存储在所述存储组互 不相同的存储区间中,而同一存储组中的各个存储区间各自所在的物理硬 盘互不相同,亦即实现了将同一数据的各个数据分散存储在不同物理硬盘 上的存储区间中,与现有技术同一数据的各个数据块可能被存储在同一个 存储区间中相比, 本发明提高了数据存储的安全性。
同时,由于本发明实施例可以将同一数据的各个数据分散存储在不同 物理硬盘上的存储区间中, 使得数据的存储位置比较均衡, 各个存储区间 的存储压力也比较均衡。可以有效避免现有技术中同一数据的大量数据块 集中存放在一个存储区间中导致该存储区间的存储压力过大的问题。
进一步地, 上述步骤 102具体可以采用如下替代方式执行: 采用待存 储数据的第一个数据块中的密钥进行哈希运算,得到哈希值, 所述第一个 数据块为在所述待存储数据中位置序号排在第一个的数据块。
本发明实施例中提到的存储系统中的各个存储区间在逻辑上可以构 成一个分布式哈希表 (Distributed Hash Table , DHT)环, 如图 2a所示, 该 DHT环中包括 12个节点, 每个节点表示一个存储区间。 图 2a中的每 个节点存放的数字 01-12分别表示相应存储区间的标识号。 如果步骤 103 中所述预设值为 6时, 则可以将 12个存储区间分成两个存储组, 第一个 存储组可以包括标识号为 01-06的存储区间,第二个存储组包括标识号为 07-12 的存储区间, 每个存储组的各个存储区间在逻辑上也是构成一个 DHT环, 例如, 图 2b表示第一个存储组构成的 DHT环, 图 2c表示第二 个存储组构成的 DHT环。
进一步地, 上述步骤 104 具体可以采用如下替代方式执行: 从所述 DHT 环的第一节点开始, 将所述待存储数据中各个数据块依次存储在所 述 DHT环中所述第一节点及所述第一节点在顺时针或者逆时针方向之后 连续的节点上。
其中, 所述待存储数据的第一个数据块存储在所述第一节点, 所述第 一节点表示所述哈希值对应的存储区间,所述待存储数据中各个数据块是 按照各自在所述待存储数据中的位置序号有序排列的。 例如, 有一个待存储数据包括 4个数据块, 所述 4个数据块按照各自 在所述待存储数据中的位置序号有序排列后的顺序为: 数据块 1、 数据块 2、 数据块 3、 数据块 4 , 数据块 1即为所述待存储数据的第一个数据块。 如果利用所述第一个数据块中的密钥进行哈希运算, 得出的哈希值为 11 , 那可以得知所述 11表示的存储区间位于第二个存储组, 之后, 将数据块 1、 数据块 2、 数据块 3、 数据块 4依次存放在图 2c所示的 11、 12、 07、 08的节点中, 或者, 将数据块 1、 数据块 2、 数据块 3、 数据块 4依次存 放图 2c 所示的 11、 10、 09、 08中。 而可以将所述待存储数据的 4个数据块分散存储在不同的物理硬盘上。
需要说明的是, 步骤 104的替代方式是一种有序存储方式, 在数据恢 复时,只需要按照存储区间的顺序依次读出数据既可以恢复各个数据块在 整个待存储数据中的位置。 当然, 容易想到的是, 也可以采用无序存储方 式,但是需要保存各个数据块与存储区间的对应关系,以便于数据恢复时, 可以恢复各个数据块在整个待存储数据中的位置, 保证数据的连续性。
可以理解的是, 上述实施例是以一个待存储数据为例进行说明的, 如 果有多个不同的待存储数据时,由于利用不同的待存储数据各自的一个数 据块中的密钥进行哈希运算时得到的哈希值可能会相同,则多个不同的待 存储数据可能会存放于同一组中, 亦即, 同一个组的一个存储区间可能会 存放多个不同待存储数据各自的一个数据块。
如图 3所示, 本发明实施例提供一种数据存储系统, 包括:
接收模块 31 , 用于接收一个待存储数据的数据块, 所述数据块包括 密钥和数据本身;
有关待存储数据及其数据块的详细描述可以参见步骤 101。
运算模块 32 , 用于采用待存储数据的一个数据块中的密钥进行哈希 运算, 得到哈希值; 所述存储组为将存储系统中各个存储区间按照预设值进行均分得到,且位 于同一存储组中的各个存储区间各自所在的物理硬盘互不相同,所述预设 值为所有待存储数据各自的数据块个数中的最大值;
有关存储组的详细描述可以参见步骤 103。
存储模块 34 , 用于将所述待存储数据的数据块依次存储在所述存储 组的各个存储区间中, 其中, 所述存储组的一个存储区间存储所述待存储 数据的一个数据块。 有关具体的存储实现过程可以参见步骤 104。
本发明实施例中提供的存储系统,可以将所述待存储数据的数据块依 次存储在所述存储组的各个存储区间中,且所述存储组的一个存储区间存 储所述待存储数据的一个数据块。 也就是说, 同一数据的各个数据块存储 在所述存储组互不相同的存储区间中,而同一存储组中的各个存储区间各 自所在的物理硬盘互不相同,亦即实现了将同一数据的各个数据分散存储 在不同物理硬盘上的存储区间中,与现有技术同一数据的各个数据块可能 被存储在同一个存储区间中相比, 本发明提高了数据存储的安全性。
同时,由于本发明实施例可以将同一数据的各个数据分散存储在不同 物理硬盘上的存储区间中, 使得数据的存储位置比较均衡, 各个存储区间 的存储压力也比较均衡。可以有效避免现有技术中同一数据的大量数据块 集中存放在一个存储区间中导致该存储区间的存储压力过大的问题。
进一步地, 所述运算模块, 具体用于采用待存储数据的第一个数据块 中的密钥进行哈希运算,得到哈希值, 所述第一个数据块为在所述待存储 数据中位置序号排在第一个的数据块。
进一步地, 所述存储组的各个存储区间在逻辑上构成一个 DHT环, 所述 DHT环上的一个节点表示一个存储区间;
所述 DHT环可以参见步骤 104的替代实行方式中有关 DHT环的描 述。
所述存储模块, 具体用于从所述 DHT环的第一节点开始, 将所述待 存储数据中各个数据块依次存储在所述 DHT环中所述第一节点及所述第 一节点在顺时针或者逆时针方向之后连续的节点上。
其中, 所述待存储数据的第一个数据块存储在所述第一节点, 所述第 一节点表示所述哈希值对应的存储区间,所述待存储数据中各个数据块是 按照各自在所述待存储数据中的位置序号有序排列的。
如图 4 所示, 本发明实施例还提供一种数据存储系统, 包括: 总线 4000、 驱动电路 4001、 接收器 41 , 处理器 42、 存储器 43
接收器 41 , 用于接收一个待存储数据的数据块, 所述数据块包括密 钥和数据本身;
有关待存储数据及其数据块的详细描述可以参见步骤 101。
处理器 42 , 用于采用待存储数据的一个数据块中的密钥进行哈希运 算, 得到哈希值; 组, 所述存储组为将存储系统中各个存储区间按照预设值进行均分得到, 预设值为所有待存储数据各自的数据块个数中的最大值;
有关存储组的详细描述可以参见步骤 103。
存储器 43 , 用于将所述待存储数据的数据块依次存储在所述存储组 的各个存储区间中, 其中, 所述存储组的一个存储区间存储所述待存储数 据的一个数据块。
有关具体的存储实现过程可以参见步骤 104。
本发明实施例中提供的存储系统,可以将所述待存储数据的数据块依 次存储在所述存储组的各个存储区间中,且所述存储组的一个存储区间存 储所述待存储数据的一个数据块。 也就是说, 同一数据的各个数据块存储 在所述存储组互不相同的存储区间中,而同一存储组中的各个存储区间各 自所在的物理硬盘互不相同,亦即实现了将同一数据的各个数据分散存储 在不同物理硬盘上的存储区间中,与现有技术同一数据的各个数据块可能 被存储在同一个存储区间中相比, 本发明提高了数据存储的安全性。
同时,由于本发明实施例可以将同一数据的各个数据分散存储在不同 物理硬盘上的存储区间中, 使得数据的存储位置比较均衡, 各个存储区间 的存储压力也比较均衡。可以有效避免现有技术中同一数据的大量数据块 集中存放在一个存储区间中导致该存储区间的存储压力过大的问题。 需要说明的是, 所述接收器 41可以耦合到天线。
其中, 驱动电路 4001 , 用于为存储系统中的各个硬件提供驱动使得 各个硬件能够正常工作。
本实施例在具体实现中, 存储器 43至少包括如下一个或者多个内存 设备, 一个只读存储器、 一个随机存取存储器或者一个非易失行随机存取 存储器, 存储器为处理器提供指令和数据。
其中, 所述处理器 42可能是一种集成电路芯片, 具有信号的处理能 辑电路或者软件形式的指令完成。这些指令可以通过其中的处理器以配合 实现及控制, 用于执行本发明实施例揭示的方法。 上述处理器还可以是通 用处理器、 数字信号处理器 ( Digital Signal Processing , DSP ), 专用集成 电路 ( application specific integrated circuit ), 现成可编程门阵歹 'J ( Field Programmable Gate Array , FPGA ) 或者其他可编程逻辑器件、 分立门或 者晶体管逻辑器件、 分立硬件组件。
其中, 上述通用处理器 42可以是微处理器或者该处理器也可以是任 何常规的处理器, 解码器等。 结合本发明实施例所公开的方法的步骤可以 直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合 执行完成。 软件模块可以位于随机存储器, 闪存、 只读存储器, 可编程只 读存储器或者电可擦写可编程存储器、 寄存器等本领域成熟的存储介质 中。
另外, 存储系统中的各个硬件组件通过总线系统 4000耦合在一起, 其中总线系统 4000除包括数据总线之外, 还包括电源总线、 控制总线和 状态信号总线。 但是为了清楚说明起 , 在图 4中将各种总线都标为总线 系统 4000。
进一步地, 所述处理器 42 , 具体用于采用待存储数据的第一个数据 块中的密钥进行哈希运算, 得到哈希值, 所述第一个数据块为在所述待存 储数据中位置序号排在第一个的数据块。 进一步地, 所述存储组的各个存储区间在逻辑上构成一个 DHT环, 所述 DHT环上的一个节点表示一个存储区间;
所述 DHT环可以参见步骤 104的替代实行方式中有关 DHT环的描 述。
所述存储器 43 , 具体用于从所述 DHT环的第一节点开始, 将所述待 存储数据中各个数据块依次存储在所述 DHT环中所述第一节点及所述第 一节点在顺时针或者逆时针方向之后连续的节点上, 其中, 所述待存储数 据的第一个数据块存储在所述第一节点,所述第一节点表示所述哈希值对 应的存储区间,所述待存储数据中各个数据块是按照各自在所述待存储数 据中的位置序号有序排列的。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到 本发明可借助软件加必需的通用硬件的方式来实现, 当然也可以通过硬 件, 但很多情况下前者是更佳的实施方式。 基于这样的理解, 本发明的技 术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式 体现出来, 该计算机软件产品存储在可读取的存储介质中, 如计算机的软 盘, 硬盘或光盘等, 包括若干指令用以使得一台计算机设备(可以是个人 计算机, 服务器, 或者网络设备等) 执行本发明各个实施例所述的方法。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局 限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可 轻易想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明 的保护范围应以所述权利要求的保护范围为准。

Claims

权 利 要 求 书
1、 一种数据存储方法, 其特征在于, 包括:
接收一个待存储数据的数据块, 所述数据块包括密钥和数据本身; 采用所述待存储数据的一个数据块中的密钥进行哈希运算, 得到哈希 值; 系统中各个存储区间按照预设值进行均分得到, 且位于同一存储组中的各 个存储区间各自所在的物理硬盘互不相同, 所述预设值为所有待存储数据 各自的数据块个数中的最大值; 中, 其中, 所述存储组的一个存储区间存储所述待存储数据的一个数据块。
2、 根据权利要求 1所述的方法, 其特征在于,
所述采用待存储数据的一个数据块中的密钥进行哈希运算, 得到哈希 值包括:
采用待存储数据的第一个数据块中的密钥进行哈希运算,得到哈希值, 所述第一个数据块为在所述待存储数据中位置序号排在第一个的数据块。
3、 根据权利要求 2所述的方法, 其特征在于, 所述存储组的各个存储 区间在逻辑上构成一个分布式哈希表 DHT环, 所述 DHT环上的一个节点 表示一个存储区间;
所述将所述待存储数据的数据块依次存储在所述存储组的各个存储区 间中包括:
从所述 DHT环的第一节点开始,将所述待存储数据中各个数据块依次 存储在所述 DHT 环中所述第一节点及所述第一节点在顺时针或者逆时针 方向之后连续的节点上, 其中, 所述待存储数据的第一个数据块存储在所 述第一节点, 所述第一节点表示所述哈希值对应的存储区间, 所述待存储 数据中各个数据块是按照各自在所述待存储数据中的位置序号有序排列 的。
4、 一种数据存储系统, 其特征在于, 包括:
接收模块, 用于接收一个待存储数据的数据块, 所述数据块包括密钥 和数据本身;
运算模块,用于采用待存储数据的一个数据块中的密钥进行哈希运算, 得到哈希值; 存储组为将存储系统中各个存储区间按照预设值进行均分得到, 且位于同 所有待存储数据各自的数据块个数中的最大值;
存储模块, 用于将所述待存储数据的数据块依次存储在所述存储组的 各个存储区间中, 其中, 所述存储组的一个存储区间存储所述待存储数据 的一个数据块。
5、 根据权利要求 4所述的系统, 其特征在于,
所述运算模块, 具体用于采用待存储数据的第一个数据块中的密钥进 行哈希运算, 得到哈希值, 所述第一个数据块为在所述待存储数据中位置 序号排在第一个的数据块。
6、 根据权利要求 5所述的系统, 其特征在于, 所述存储组的各个存储 区间在逻辑上构成一个分布式哈希表 DHT环, 所述 DHT环上的一个节点 表示一个存储区间;
所述存储模块, 具体用于从所述 DHT环的第一节点开始, 将所述待存 储数据中各个数据块依次存储在所述 DHT 环中所述第一节点及所述第一 节点在顺时针或者逆时针方向之后连续的节点上, 其中, 所述待存储数据 的第一个数据块存储在所述第一节点, 所述第一节点表示所述哈希值对应 的存储区间, 所述待存储数据中各个数据块是按照各自在所述待存储数据 中的位置序号有序排列的。
7、 一种数据存储系统, 其特征在于, 包括:
接收器, 用于接收一个待存储数据的数据块, 所述数据块包括密钥和 数据本身;
处理器, 用于采用待存储数据的一个数据块中的密钥进行哈希运算, 得到哈希值; 所述存储组为将存储系统中各个存储区间按照预设值进行均分得到, 且位 于同一存储组中的各个存储区间各自所在的物理硬盘互不相同, 所述预设 值为所有待存储数据各自的数据块个数中的最大值;
存储器, 用于将所述待存储数据的数据块依次存储在所述存储组的各 个存储区间中, 其中, 所述存储组的一个存储区间存储所述待存储数据的 一个数据块。
8、 根据权利要求 7所述的系统, 其特征在于,
所述处理器, 具体用于采用待存储数据的第一个数据块中的密钥进行 哈希运算, 得到哈希值, 所述第一个数据块为在所述待存储数据中位置序 号排在第一个的数据块。
9、 根据权利要求 7所述的系统, 其特征在于, 所述存储组的各个存储 区间在逻辑上构成一个分布式哈希表 DHT环, 所述 DHT环上的一个节点 表示一个存储区间;
所述存储器, 具体用于从所述 DHT环的第一节点开始, 将所述待存储 数据中各个数据块依次存储在所述 DHT 环中所述第一节点及所述第一节 点在顺时针或者逆时针方向之后连续的节点上, 其中, 所述待存储数据的 第一个数据块存储在所述第一节点, 所述第一节点表示所述哈希值对应的 存储区间, 所述待存储数据中各个数据块是按照各自在所述待存储数据中 的位置序号有序排列的。
PCT/CN2012/086466 2012-12-12 2012-12-12 数据存储方法及系统 WO2014089786A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201280002942.2A CN103370113B (zh) 2012-12-12 2012-12-12 数据存储方法及系统
PCT/CN2012/086466 WO2014089786A1 (zh) 2012-12-12 2012-12-12 数据存储方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/086466 WO2014089786A1 (zh) 2012-12-12 2012-12-12 数据存储方法及系统

Publications (1)

Publication Number Publication Date
WO2014089786A1 true WO2014089786A1 (zh) 2014-06-19

Family

ID=49370140

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/086466 WO2014089786A1 (zh) 2012-12-12 2012-12-12 数据存储方法及系统

Country Status (2)

Country Link
CN (1) CN103370113B (zh)
WO (1) WO2014089786A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542939A (zh) * 2018-11-21 2019-03-29 中国人民解放军国防科技大学 一种基于纠删码的count-min摘要方法及装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105956164A (zh) * 2016-05-19 2016-09-21 海尔优家智能科技(北京)有限公司 一种存储数据的方法、装置及其对应的系统
CN106506613B (zh) * 2016-10-31 2018-04-13 大唐高鸿信安(浙江)信息科技有限公司 分布式key‑value存储系统的数据存储位置加密方法
CN107870970B (zh) * 2017-09-06 2019-10-25 北京理工大学 一种数据存储查询方法及系统
CN108427982A (zh) * 2018-03-16 2018-08-21 中国联合网络通信集团有限公司 一种数据读写方法及装置
CN108696585A (zh) * 2018-05-11 2018-10-23 国网电子商务有限公司 一种数据的分布式存储方法及系统
CN111030930B (zh) * 2019-12-02 2022-02-01 北京众享比特科技有限公司 基于去中心化网络数据分片传输方法、装置、设备及介质
CN111327397B (zh) * 2020-01-21 2021-02-02 武汉大学 一种信息数据纵向冗余校验纠错编解码方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645039A (zh) * 2009-06-02 2010-02-10 中国科学院声学研究所 一种基于彼得森图的数据存储和读取方法
WO2012000348A1 (en) * 2010-07-02 2012-01-05 Huawei Technologies Co., Ltd. Method and apparatus for providing highly-scalable network storage for well-gridded objects
US8296515B1 (en) * 2009-05-22 2012-10-23 Nvidia Corporation RAID-6 computation system and method
CN102799628A (zh) * 2012-06-21 2012-11-28 新浪网技术(中国)有限公司 在key-value数据库中进行数据分区的方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100535846C (zh) * 2007-12-07 2009-09-02 华中科技大学 一种存储系统数据分布及互转换方法
CN101478538B (zh) * 2008-12-31 2012-06-06 成都市华为赛门铁克科技有限公司 管理安全设备的存储方法、装置或系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8296515B1 (en) * 2009-05-22 2012-10-23 Nvidia Corporation RAID-6 computation system and method
CN101645039A (zh) * 2009-06-02 2010-02-10 中国科学院声学研究所 一种基于彼得森图的数据存储和读取方法
WO2012000348A1 (en) * 2010-07-02 2012-01-05 Huawei Technologies Co., Ltd. Method and apparatus for providing highly-scalable network storage for well-gridded objects
CN102799628A (zh) * 2012-06-21 2012-11-28 新浪网技术(中国)有限公司 在key-value数据库中进行数据分区的方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542939A (zh) * 2018-11-21 2019-03-29 中国人民解放军国防科技大学 一种基于纠删码的count-min摘要方法及装置

Also Published As

Publication number Publication date
CN103370113A (zh) 2013-10-23
CN103370113B (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
WO2014089786A1 (zh) 数据存储方法及系统
US11095451B2 (en) Optimal data storage configuration in a blockchain
TWI714847B (zh) 區塊鏈共識網路中處理共識請求的方法、裝置和電子設備
TWI730309B (zh) 資料處理方法及裝置
CN101853190B (zh) 一种适用于嵌入式处理器的数据完整性验证方法
US11861051B2 (en) Buffer access for side-channel attack resistance
US20150347012A1 (en) System and method of interleaving data retrieved from first and second buffers
CN108540315B (zh) 分布式存储系统、方法和装置
US11784802B1 (en) Cluster feature code obtainment method and apparatus, and electronic device
KR102364368B1 (ko) 플래시 메모리 내에서의 데이터 리프레시의 개선
US9547456B2 (en) Method and apparatus for efficient data copying and data migration
CN114244835B (zh) 基于区块链的去中心化自适应协同训练方法和装置
CN104239234A (zh) 一种高效的本地缓存管理及读写方法
WO2018000788A1 (zh) 一种数据存储方法和装置、一种数据恢复方法和装置
WO2016101751A1 (zh) 一种分布式存储系统中的主从平衡方法和装置
WO2014101485A1 (zh) 一种内存监控方法及相关装置
WO2022078347A1 (zh) 任务调度方法、装置、电子设备及存储介质
US9952771B1 (en) Method and system for choosing an optimal compression algorithm
CN106708865B (zh) 流处理系统中访问窗口数据的方法和装置
US20190034276A1 (en) Resolving write conflicts in a dispersed storage network
US9684668B1 (en) Systems and methods for performing lookups on distributed deduplicated data systems
CN110209347B (zh) 一种可追溯的数据存储方法
US11316841B2 (en) Secure communication between an intermediary device and a network
WO2016091072A1 (zh) 分布式数据存储方法及分布式数据集群系统
CN111125011B (zh) 一种文件处理方法、系统及相关设备

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201280002942.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12889843

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12889843

Country of ref document: EP

Kind code of ref document: A1