WO2014015828A1 - 数据存储空间的处理方法、处理系统及数据存储服务器 - Google Patents
数据存储空间的处理方法、处理系统及数据存储服务器 Download PDFInfo
- Publication number
- WO2014015828A1 WO2014015828A1 PCT/CN2013/080180 CN2013080180W WO2014015828A1 WO 2014015828 A1 WO2014015828 A1 WO 2014015828A1 CN 2013080180 W CN2013080180 W CN 2013080180W WO 2014015828 A1 WO2014015828 A1 WO 2014015828A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- record
- block
- data
- index
- cache
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0848—Partitioned cache, e.g. separate instruction and operand caches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/282—Partitioned cache
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/604—Details relating to cache allocation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/62—Details of cache specific to multiprocessor cache arrangements
- G06F2212/622—State-only directory, i.e. not recording identity of sharing or owning nodes
Definitions
- the invention belongs to the technical field of computers, and in particular relates to a processing method, a processing system and a data storage server for a data storage space.
- the storage medium of the distributed data storage space mainly includes SATA disks, SAS disks, and SSD disks/cards.
- SATA disks Serial Advanced Technology Attachment
- SAS disks Serial Advanced Technology Attachment
- SSD disks/cards SSD disks/cards.
- the main idea of solving the random 10 performance bottleneck of the storage medium is to reduce the random 10 to the sequence 10 or introduce the cache to reduce the number of times. Since random reads are difficult to avoid in most service storage access scenarios, access to the storage medium or storage medium is generally reduced by introducing a memory cache, such as using an SSD disk/card with higher random read performance.
- Random write 10 optimization can turn random writes into sequential writes (such as BigTable's SSTable) or mmap maps data to memory for asynchronous 10 .
- Google BigTable optimizes the performance of 10 by random write sequence, and uses MemTable and SSTable to store all the data updates for a period of time and write them to the disk sequentially. The records are then split in a predefined order and merged with the old version of the data; TyotoCabinet uses mmap to map the data on the disk to the shared memory, and reduce the read and write of the disk through the memory; MySQL's InnoDB storage engine is The bottom layer adopts the B+ tree organization, and also converts writes to asynchronous writes through the Buffer Pool to improve the write latency experience and reduce disk read and write.
- the disadvantages of the existing methods for improving random 10 are:
- the random write-to-sequence write system is complicated to implement, and the operation cost is high; taking MemTable/SSTable to convert all random writes into sequential write manner, it may be necessary to read multiple places when data is read. The latest data version;
- MemTable/SSTable to convert all random writes into sequential write manner, it may be necessary to read multiple places when data is read. The latest data version;
- when doing data merging it is necessary to perform large-scale data reading and writing, and may be accompanied by operations such as splitting, the system is more complicated, and the operation and maintenance cost is higher; for the mmap and MySQL buffer pool scheme, if the single machine The storage capacity is higher than the memory, the data is not When the hot spot is obvious, the overall performance of the system is changed to the actual capacity of the storage medium, and the efficiency of the memory pair 10 is relatively limited. Summary of the invention
- the invention provides a processing method, a processing system and a data storage server for a data storage space, which are aimed at solving the problems of limited data input and output capability, complicated implementation and difficult operation in the prior art data storage mode.
- an embodiment of the present invention provides a data storage space processing method, including: dividing a disk and a memory resource into small tables; dividing a memory space of the small table into different logical objects; The disk space is divided into multiple equal-sized data blocks by a fixed size.
- an embodiment of the present invention further provides a data storage space processing system, including a disk, a memory, a resource division module, a logical object division module, and a data block division module, wherein the resource division module converts a disk and The memory resource is divided into small tables; the logical object partitioning module divides the memory space of the small table into different logical objects; the disk space of the small block of the data block dividing module is divided into a plurality of equal data blocks according to a fixed size.
- an embodiment of the present invention further provides a data storage server, including a disk and a memory, wherein the disk and the memory resource are divided into small tables; and the memory space of the small table is divided into different logical objects; The disk space is divided into a plurality of equal-sized data blocks by a fixed size.
- an embodiment of the present invention further provides a storage medium including computer executable instructions for performing a data storage space processing method, the method comprising the following steps : Divide the disk and memory resources into small tables; divide the memory space of the small table into different logical objects; divide the disk space of the small table into multiple equal-sized data blocks according to a fixed size.
- an embodiment of the present invention further provides a data reading and writing method, where the reading and writing method includes a record read, a record modification, a block merge write, and a block recovery, and the record read includes: a read/write cache, which is written according to a keyword. Cache the search record, if the record is found, return directly; obtain the record index from the record index cache, obtain the record offset address and the record size according to the record index; according to the offset address and record in the index Record size, read data from disk.
- the reading and writing method includes a record read, a record modification, a block merge write, and a block recovery
- the record read includes: a read/write cache, which is written according to a keyword. Cache the search record, if the record is found, return directly; obtain the record index from the record index cache, obtain the record offset address and the record size according to the record index; according to the offset address and record in the index Record size, read data from disk.
- the technical solution of the embodiment of the present invention has the following advantages or advantages:
- the embodiment of the present invention divides the disk and memory resources on the storage server into independent small tables, and uses the small table as a basic unit for service resource allocation and management. It can realize the multiplexing of single-machine resources on multiple services; in addition, the hybrid index and its associated merge write, block recovery technology can greatly save the index memory space while improving the system random write IOPS.
- FIG. 1 is a flowchart of a method for processing a data storage space according to an embodiment of the present invention
- FIG. 2 is a schematic diagram showing a memory structure of a record index cache in a method for processing a data storage space according to an embodiment of the present invention
- FIG. 3 is a schematic diagram showing a memory structure of a block buffer of a method for processing a data storage space according to an embodiment of the present invention
- FIG. 4 is a flow chart of recording and reading of a method for processing a data storage space according to an embodiment of the present invention
- FIG. 5 is a flow chart showing a modification of a method for processing a data storage space according to an embodiment of the present invention
- FIG. 7 is a flowchart of block recovery of a data storage space processing method according to an embodiment of the present invention
- FIG. 8 is a flowchart of a data storage space processing system according to an embodiment of the present invention. Schematic;
- FIG. 9 is a schematic structural diagram of a data storage server according to an embodiment of the present invention.
- FIG. 1 is a flowchart of a method for processing a data storage space according to an embodiment of the present invention.
- the processing method of the data storage space in the embodiment of the present invention includes the following steps:
- Step 100 Divide the disk and memory resources into small tables (Tablet);
- each small table works independently, and the small table indexes the records on the disk by combining the hash and the record index.
- the resources of a small table are composed of a 2 GB space of a physical address on the disk and a shared memory space of 16 MB in the memory.
- the size of the disk space and the memory space can be set as needed. .
- Step 110 Divide the memory space of the small table into different logical objects.
- step 110 the memory space of the small table is divided into three logical objects: a record index cache KeyCache, a write cache WriteCache, and a block cache BlockCache, where: KeyCache occupies 12MB space, including a bucket index and a large record index.
- FIG. 2 is a schematic diagram of a memory structure of a record index cache of a data storage space processing method according to an embodiment of the present invention, which is used to store index information of a record, and the record is divided into two types: a bucket record and a large record, and another type of the present invention.
- the KeyCache may include only a large record index portion, and the record may also be only one type of large record.
- the index search of the record needs to calculate the value of hash(key)% (300*1024), so that a bucket record index is obtained, and the bucket header field of the bucket record index is located to a large record index, and the next field of the large record index is traversed. The entire chain, the key is found to find the index of the record; if the large record index does not hit, the bucket record index is the index of the record. Because Keycache's organization adopts the hybrid index mode of large record index and bucket index, on the one hand, it overcomes the shortcomings of the full index mode. The full index needs to build an index for each record in memory, and its index storage space is large, and the memory demand is large. On the other hand, it overcomes the shortcomings of the full bucket index.
- the bucket record uses the hash structure.
- the full bucket index updates a sub-record in the bucket to read and write the entire bucket record.
- SSD storage medium, write bandwidth amplification Will reduce the life, while also affecting the read and write performance.
- the processing method of the data storage space in the embodiment of the present invention formulates a record size threshold according to the condition of the memory, and the record larger than the threshold size adopts a large record index, and one record in the large record index is an independent index, and the chain is connected in series. Up; records smaller than this threshold are recorded in buckets, and the buckets of Hash are packed into a record store.
- a Hash bucket creates an index in memory, which greatly reduces the number of indexes.
- the small table can be designed to be 2G, the barrel record and the large record index are each about 300,000, the record larger than 4 KB is used for the large record index, and the record larger than 4 KB is the bucket index. If the record size is relatively large, the 2G small table stores fewer records, and the 300,000 index is enough to store; if the records are relatively small, the 300,000 bucket index can ensure that the size of each bucket record does not exceed 4 KB.
- WriteCache takes up about 4MB of space and is used as a record write buffer to asynchronously write data to disk.
- WriteCache ⁇ i is a hash map of shared memory ( HashMap ).
- BlockCache occupies 64 KB, which is composed of 4000 16-byte block structure descriptors and is used as state information of the statistic data block.
- FIG. 3 is a memory structure of a block cache of a data storage space processing method according to an embodiment of the present invention. schematic diagram.
- the valid size field indicates the total size of the record in the data block where the record has not been updated;
- the update time field indicates the time when the block is written to the disk; the next field is used to organize the free block and the data block to be reclaimed by the linked list, and the link is made idle.
- Step 120 Divide the disk space of the small table into a plurality of data blocks of a constant size.
- the disk space of the small table 2GB is divided into a plurality of equal-sized data blocks according to a fixed size.
- each data block size is assumed to be 512 KB, and the data organization structure of each data block is as follows: :
- Each ⁇ checksum, keylen, key, vallen, value> 5-tuple 4 is a record in the data block, the record is compactly arranged in the data block, and the fixed-length information block (Trailer information block) is used at the end of the block. Describe the meta information of the block, such as the data check of the block, the block write time, and the number of records in the block.
- a typical data read and write process of the data storage space processing method includes record read (read), record modification (including Insert/Update/Delete), block merge write, and block recovery; 4 is a flow chart of record reading of the processing method of the data storage space in the embodiment of the present invention.
- the record reading of the processing method of the data storage space of the present invention comprises the following steps:
- Step 200 Read WriteCache, find the record from WriteCache according to the key keyword, and return directly if the record is found; "return" as described in step 200 means returning the record.
- Step 210 Obtain a record index from the KeyCache, and obtain a record offset address (offset) and a size according to the record index search method.
- Step 220 Read data from the disk according to the offset address and the record size in the index; in step 220, according to the type of the record: if the record is a large record, return directly (that is, return a large record); if the record If it is a bucket record, it resolves the bucket record, traverses all the child records in the bucket record, matches the key, finds the key to return the record; if not, returns an error message that the record does not exist.
- the record modification of the processing method of the data storage space of the present invention comprises the following steps:
- Step 300 Read WriteCache, and find records from WriteCache according to key
- Step 310 Determine whether the corresponding record is found, if the record is found, proceed to step 320; if no record is found, proceed to step 330;
- Step 320 Update the record in WriteCache and return, and the "return" described in step 320 indicates that the update record is returned;
- Step 330 Add the record to the WriteCache.
- the deletion record can be distinguished by setting a record flag.
- FIG. 6 is a flowchart of block merge writing of the data storage space processing method according to the embodiment of the present invention.
- the block merge writing of the processing method of the data storage space of the present invention comprises the following steps:
- Step 400 Timing is taken from the WriteCache in a first in first out (FIFO) order
- step 400 the process of taking the record once reads 512 KB of data.
- step 410 For each record, read the KeyCache and the ssd disk, and judge the record writing scenario: If it is a small record update, the record is still less than 4 kb after the update: Go to step 420
- Step 420 Determine according to the size of the bucket record as follows:
- Size >0 According to the ⁇ offset, size ⁇ A ssd disk record of the bucket record, deserialize, find and update this record, re-serialize the bucket record and add it to the result set, construct an index update object, add to Index update collection, go to step 460.
- Step 430 Add the record to the result set.
- the record is deleted from the bucket record, the bucket record is re-serialized, added to the result set, and two index update objects are constructed, added to the index update collection, and the process proceeds to step 460.
- Step 440 Add the record to the result set, construct an index update object, add to the index update set, and go to step 460.
- Step 450 Construct a delete pipeline, add to the result set; construct an index update object, add it to the index update collection, and go to step 460.
- Step 460 The result set is determined to determine whether the written data can be made into a data block (512 KB). If it can be made into a data block, go to step 470. If it cannot be made into a data block, go to step 410 and continue processing. record of;
- Step 470 Organize the records in the result set into one data block, calculate the Trailer information block, and write the entire data block to ssd; submit the merged index update set to update the KeyCache in batches; submit the instruction to clear the WriteCache, The written record is cleared from the WriteCache.
- step 470 the result set and the index update set are cleaned, and the process returns to step 410 to continue processing the remaining records.
- FIG. 7 is a flowchart of block recovery of a method for processing a data storage space according to an embodiment of the present invention. Block recovery of the processing method of the data storage space of the present invention includes the following steps:
- Step 500 Find two data blocks whose effective data length is less than 256 KB according to BlockCache.
- Step 510 Read two data blocks selected in step 500 from the ssd disk;
- Step 520 Parsing the selected two data blocks, culling the outdated data according to the KeyCache information, and combining the valid data into one data block, wherein the remaining data after the outdated data is removed is valid data;
- Step 540 Write a new data block
- Step 550 Update the index recorded in the new data block in the KeyCache; reset two old data block information in the BlockCache, and update the information of the newly written data block.
- FIG. 8 is a schematic structural diagram of a processing system of a data storage space according to an embodiment of the present invention.
- the processing system of the data storage space in the embodiment of the present invention includes a disk, a memory, a resource division module, a logical object division module, and a data block division module.
- the resource partitioning module divides the disk and memory resources into small tables (Tablets), wherein each small table works independently, and the small table indexes the records in the disk by combining the hash and the record index.
- Tablets small tables
- the resources of a small table are composed of a continuous 2 GB space on the disk and a 16 MB shared memory space in the memory.
- the logical object partitioning module divides the memory space of the small table into different logical objects, and the memory space of the table is divided into three logical objects: a record index cache KeyCache, a write cache WriteCache and a block cache BlockCache, where: KeyCache occupies 12MB space, including the bucket
- the index and the large record index are used to store the index information of the record, and the record is also divided into two types: a bucket record and a large record.
- the KeyCache may include only a large record index part. Records can also be just one type of large record.
- the index search of the record needs to calculate the value of hash(key)% (300*1024), so as to obtain a bucket record index, and locate a large record based on the bucket header field of the bucket record index. Lead, use the next field of the large record index to traverse the entire chain, compare the key to find the index of the record; if the large record index does not hit, take the bucket record index as the index of the record.
- WriteCache occupies about 4MB space, used as a record write buffer, and realizes data asynchronous disk drop.
- BlockCache occupies 64KB and consists of 4000 16-byte block structure descriptors, which are used as statistical block status information.
- the valid size field of the block indicates that the total size of the record in which the update has not occurred is recorded in the block; the block update time field indicates the time when the block is written to the disk; the block next field is used to organize the free block and the block to be reclaimed by the linked list, and is linked into Free blockchain (free chain) and recycle block chain (recycle chain).
- WriteCache is a hash map based on shared memory ( HashMap ).
- the data block partitioning module divides the disk space of the small table into a plurality of equal-sized data blocks according to a fixed size.
- the block size is assumed to be 512 KB, and the data organization structure of each data block is as follows:
- Each ⁇ checksum, keylen, key, vallen, value> 5-tuple 4 is a record in the data block, the record is compactly arranged in the data block, and the fixed-length information block (Trailer information block) is used at the end of the block. Describe the meta information of the block, such as the data check of the block, the block write time, and the number of records in the block.
- FIG. 9 is a schematic structural diagram of a data storage server according to an embodiment of the present invention.
- the data storage server of the embodiment of the present invention includes a disk and a memory.
- the disk and memory resources are divided into small tables (Tablets), where each small table works independently, and the small table indexes the records in the disk by combining the hash hash and the record index.
- Tablets small tables
- the resources of a small table are composed of 2 GB of physical addresses on the disk and 16 MB of shared memory in the memory.
- the memory space of the small table is divided into different logical objects.
- the memory space of the table is divided into three logical objects: Record Index Cache KeyCache, Write Cache WriteCache and Block Cache BlockCache, where: KeyCache occupies 12MB space, including bucket index and large record index.
- the two parts are used to store the index information of the record.
- the record is also divided into two types: a bucket record and a large record.
- the KeyCache may only include a large record index portion, and the record may also be only A large record of a type.
- the index lookup of the record needs to calculate the value of hash(key)% ( 300*1024 ) to get a
- the bucket record index is located according to the bucket header field of the bucket record index to a large record index, and the next field of the large record index is used to traverse the entire chain, and the key is found to find the index of the record; if the large record index does not hit, the bucket record is taken.
- the index is the index of the record.
- WriteCache occupies about 4MB space, used as a record write buffer, and realizes data asynchronous disk drop.
- BlockCache occupies 64KB and consists of 4000 16-byte block structure descriptors, which are used as statistical block status information.
- the valid size field of the block indicates that the total size of the record in which the update has not occurred is recorded in the block; the block update time field indicates the time when the block is written to the disk; the block next field is used to organize the free block and the block to be reclaimed by the linked list, and is linked into Free blockchain (free chain) and recycle block chain (recycle chain).
- WriteCache is a hash map based on shared memory ( HashMap ).
- the disk space of the small table is divided into a plurality of equal-sized data blocks according to a fixed size.
- each data block size is 512 KB
- the data organization structure of each data block is as follows:
- Each ⁇ checksum, keylen, key, vallen, value> 5-tuple 4 is a record in the data block, the record is compactly arranged in the data block, and the fixed-length information block (Trailer information block) is used at the end of the block. Describe the meta information of the block, such as the data check of the block, the block write time, and the number of records in the block.
- the disk and the memory resources on the storage server are divided into independent small tables, and the small table is used as a basic unit for resource resource allocation and management, and the single-machine resources can be reused on multiple services;
- the random write to the disk 10 is reduced by means of merge write and block recovery; when the record is read, the record acquisition is realized by the disk 10 according to the record index in the memory.
- a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
- the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/413,049 US9323685B2 (en) | 2012-07-27 | 2013-07-26 | Data storage space processing method and processing system, and data storage server |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201210264003.7A CN103577339B (zh) | 2012-07-27 | 2012-07-27 | 一种数据存储方法及系统 |
| CN201210264003.7 | 2012-07-27 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2014015828A1 true WO2014015828A1 (zh) | 2014-01-30 |
Family
ID=49996615
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2013/080180 Ceased WO2014015828A1 (zh) | 2012-07-27 | 2013-07-26 | 数据存储空间的处理方法、处理系统及数据存储服务器 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US9323685B2 (zh) |
| CN (1) | CN103577339B (zh) |
| WO (1) | WO2014015828A1 (zh) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105574128A (zh) * | 2015-12-12 | 2016-05-11 | 天津南大通用数据技术股份有限公司 | 商业智能系统数据完成复杂运算的方法 |
| CN109726176A (zh) * | 2018-12-11 | 2019-05-07 | 河南辉煌科技股份有限公司 | 铁路信号电气设备数据的快速存储与查询方法 |
| CN110658978A (zh) * | 2018-06-28 | 2020-01-07 | 杭州海康威视系统技术有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
| CN114115738A (zh) * | 2021-11-23 | 2022-03-01 | 烽火通信科技股份有限公司 | 一种基于分布式存储的磁盘空间管理方法及系统 |
| CN115113819A (zh) * | 2022-06-29 | 2022-09-27 | 京东方科技集团股份有限公司 | 一种数据存储的方法、单节点服务器及设备 |
| US12216582B1 (en) * | 2023-07-31 | 2025-02-04 | Sap Se | Disk-based merge for combining merged hash maps |
| US12216634B1 (en) | 2023-07-31 | 2025-02-04 | Sap Se | Disk-based merge for hash maps |
Families Citing this family (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9152342B1 (en) * | 2013-04-16 | 2015-10-06 | Emc Corporation | Read-write access in a read-only environment |
| JP2015204073A (ja) * | 2014-04-16 | 2015-11-16 | キヤノン株式会社 | 情報処理装置、情報処理端末、情報処理方法およびプログラム |
| CN104111899A (zh) * | 2014-07-03 | 2014-10-22 | 北京思特奇信息技术股份有限公司 | 一种缓存数据的存储方法及系统及读取方法 |
| CN104199892B (zh) * | 2014-08-26 | 2018-01-30 | 上海爱数信息技术股份有限公司 | 一种基于压缩合并异步更新的索引读写方法 |
| CN104408128B (zh) * | 2014-11-26 | 2017-11-03 | 上海爱数信息技术股份有限公司 | 一种基于b+树异步更新索引的读优化方法 |
| CN104679898A (zh) * | 2015-03-18 | 2015-06-03 | 成都汇智远景科技有限公司 | 一种大数据访问方法 |
| CN107193857B (zh) * | 2016-03-15 | 2021-01-01 | 阿里巴巴集团控股有限公司 | 一种用于数据库遍历的方法与设备 |
| CN107015763A (zh) * | 2017-03-03 | 2017-08-04 | 北京中存超为科技有限公司 | 混合存储系统中ssd管理方法及装置 |
| JP6754319B2 (ja) * | 2017-05-25 | 2020-09-09 | 日本電信電話株式会社 | ブロックチェーン更新システム、サーバ装置、クライアント装置、ブロックチェーン更新方法、およびプログラム |
| CN107197191B (zh) * | 2017-05-27 | 2021-05-11 | 深圳市景阳科技股份有限公司 | 网络硬盘录像的写入方法和装置 |
| GB201711879D0 (en) * | 2017-07-24 | 2017-09-06 | Nchain Holdings Ltd | Computer-implemented system and method |
| CN109753224B (zh) * | 2017-11-03 | 2022-05-13 | 浙江宇视科技有限公司 | 存储结构及存储结构配置方法 |
| CN111190908B (zh) * | 2018-11-15 | 2023-09-22 | 华为技术有限公司 | 一种数据管理方法、装置及系统 |
| CN109783019B (zh) * | 2018-12-28 | 2022-08-19 | 上海威固信息技术股份有限公司 | 一种数据智能存储管理方法与装置 |
| CN110795407B (zh) * | 2019-10-14 | 2022-06-10 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 适用于分布式文件系统的文件随机写方法及系统 |
| CN111400302B (zh) * | 2019-11-28 | 2023-09-19 | 杭州海康威视系统技术有限公司 | 连续存储数据的修改方法、装置和系统 |
| CN111338569A (zh) * | 2020-02-16 | 2020-06-26 | 西安奥卡云数据科技有限公司 | 一种基于直接映射的对象存储后端优化方法 |
| CN113835637B (zh) * | 2020-03-19 | 2024-07-16 | 北京奥星贝斯科技有限公司 | 一种数据的写入方法、装置以及设备 |
| CN111651404A (zh) * | 2020-04-26 | 2020-09-11 | 浙江吉利汽车研究院有限公司 | 传感器数据存储、读取方法及数据存储、读取装置 |
| CN111639076B (zh) * | 2020-05-14 | 2023-12-22 | 民生科技有限责任公司 | 一种跨平台高效键值存储方法 |
| CN111813347B (zh) * | 2020-07-24 | 2022-06-07 | 济南浪潮数据技术有限公司 | 垃圾回收空间管理方法、装置及计算机可读存储介质 |
| CN113268519B (zh) * | 2020-12-28 | 2024-11-29 | 上海零数众合信息科技有限公司 | 一种基于区块链的数据共享方法 |
| CN112817767B (zh) * | 2021-02-24 | 2021-11-16 | 上海交通大学 | 分离可组合式架构下的图计算工作集优化实现方法及系统 |
| CN113192558A (zh) * | 2021-05-26 | 2021-07-30 | 北京自由猫科技有限公司 | 用于第三代基因测序数据的读写方法及分布式文件系统 |
| CN113625952B (zh) * | 2021-06-30 | 2024-08-23 | 济南浪潮数据技术有限公司 | 一种对象存储方法、装置、设备及存储介质 |
| CN114741449A (zh) * | 2022-04-14 | 2022-07-12 | 上海川源信息科技有限公司 | 一种基于分布式数据库的对象存储方法及装置 |
| CN116991336B (zh) * | 2023-09-26 | 2024-01-23 | 北京大道云行科技有限公司 | 分布式全闪对象存储系统的gc方法及电子设备、存储介质 |
| CN117270789B (zh) * | 2023-10-25 | 2024-02-06 | 苏州元脑智能科技有限公司 | 一种基于分布式存储的数据控制方法、系统及电子设备 |
| CN118349170A (zh) * | 2024-04-01 | 2024-07-16 | 福建天泉教育科技有限公司 | 一种数据缓存存储方法及终端 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6845427B1 (en) * | 2002-10-25 | 2005-01-18 | Western Digital Technologies, Inc. | Disk drive allocating cache segments by mapping bits of a command size into corresponding segment pools |
| CN1936864A (zh) * | 2005-09-22 | 2007-03-28 | 康佳集团股份有限公司 | 不定长记录的数据组织方法 |
| CN101169761A (zh) * | 2007-12-03 | 2008-04-30 | 腾讯数码(天津)有限公司 | 大容量缓存实现方法及存储系统 |
| CN101178693A (zh) * | 2007-12-14 | 2008-05-14 | 沈阳东软软件股份有限公司 | 一种数据缓存方法及系统 |
| US20110283044A1 (en) * | 2010-05-11 | 2011-11-17 | Seagate Technology Llc | Device and method for reliable data storage |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5649151A (en) * | 1992-06-29 | 1997-07-15 | Apple Computer, Inc. | Efficient method and apparatus for access and storage of compressed data |
| US20120124285A1 (en) * | 2003-08-14 | 2012-05-17 | Soran Philip E | Virtual disk drive system and method with cloud-based storage media |
| JP5076411B2 (ja) * | 2005-11-30 | 2012-11-21 | ソニー株式会社 | 記憶装置、コンピュータシステム |
| US7885932B2 (en) * | 2006-11-01 | 2011-02-08 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
| CN101799788B (zh) * | 2010-03-23 | 2014-06-11 | 中兴通讯股份有限公司 | 一种分级管理存储资源的方法及系统 |
-
2012
- 2012-07-27 CN CN201210264003.7A patent/CN103577339B/zh active Active
-
2013
- 2013-07-26 WO PCT/CN2013/080180 patent/WO2014015828A1/zh not_active Ceased
- 2013-07-26 US US14/413,049 patent/US9323685B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6845427B1 (en) * | 2002-10-25 | 2005-01-18 | Western Digital Technologies, Inc. | Disk drive allocating cache segments by mapping bits of a command size into corresponding segment pools |
| CN1936864A (zh) * | 2005-09-22 | 2007-03-28 | 康佳集团股份有限公司 | 不定长记录的数据组织方法 |
| CN101169761A (zh) * | 2007-12-03 | 2008-04-30 | 腾讯数码(天津)有限公司 | 大容量缓存实现方法及存储系统 |
| CN101178693A (zh) * | 2007-12-14 | 2008-05-14 | 沈阳东软软件股份有限公司 | 一种数据缓存方法及系统 |
| US20110283044A1 (en) * | 2010-05-11 | 2011-11-17 | Seagate Technology Llc | Device and method for reliable data storage |
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105574128A (zh) * | 2015-12-12 | 2016-05-11 | 天津南大通用数据技术股份有限公司 | 商业智能系统数据完成复杂运算的方法 |
| CN110658978A (zh) * | 2018-06-28 | 2020-01-07 | 杭州海康威视系统技术有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
| CN110658978B (zh) * | 2018-06-28 | 2022-11-01 | 杭州海康威视系统技术有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
| CN109726176A (zh) * | 2018-12-11 | 2019-05-07 | 河南辉煌科技股份有限公司 | 铁路信号电气设备数据的快速存储与查询方法 |
| CN114115738A (zh) * | 2021-11-23 | 2022-03-01 | 烽火通信科技股份有限公司 | 一种基于分布式存储的磁盘空间管理方法及系统 |
| CN114115738B (zh) * | 2021-11-23 | 2023-12-26 | 烽火通信科技股份有限公司 | 一种基于分布式存储的磁盘空间管理方法及系统 |
| CN115113819A (zh) * | 2022-06-29 | 2022-09-27 | 京东方科技集团股份有限公司 | 一种数据存储的方法、单节点服务器及设备 |
| US12216582B1 (en) * | 2023-07-31 | 2025-02-04 | Sap Se | Disk-based merge for combining merged hash maps |
| US12216634B1 (en) | 2023-07-31 | 2025-02-04 | Sap Se | Disk-based merge for hash maps |
| US12511275B2 (en) | 2023-07-31 | 2025-12-30 | Sap Se | Disk-based merge for hash maps |
Also Published As
| Publication number | Publication date |
|---|---|
| CN103577339A (zh) | 2014-02-12 |
| US20150193350A1 (en) | 2015-07-09 |
| CN103577339B (zh) | 2018-01-30 |
| US9323685B2 (en) | 2016-04-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2014015828A1 (zh) | 数据存储空间的处理方法、处理系统及数据存储服务器 | |
| CN110825748B (zh) | 利用差异化索引机制的高性能和易扩展的键值存储方法 | |
| CN113821171B (zh) | 一种基于哈希表与lsm树的键值存储方法 | |
| EP2735978B1 (en) | Storage system and management method used for metadata of cluster file system | |
| JP5445682B2 (ja) | ストレージシステム | |
| CN100498740C (zh) | 一种数据缓存处理方法、系统及数据缓存装置 | |
| JP5996088B2 (ja) | 暗号ハッシュ・データベース | |
| CN103345472B (zh) | 基于有限二叉树布隆过滤器的去冗文件系统及其构建方法 | |
| CN102346695B (zh) | 渐进式备份的基于片段的高延展的去复本系统与方法 | |
| EP3399444A1 (en) | Optimized record lookups | |
| CN104616680B (zh) | 基于光盘存储的重复数据删除系统及数据操作方法、装置 | |
| WO2017113213A1 (zh) | 访问请求处理方法、装置及计算机系统 | |
| WO2017025039A1 (zh) | 一种面向闪存存储的数据访问方法及其装置 | |
| CN114416742A (zh) | Key-Value存储引擎实现方法及系统 | |
| CN103229164A (zh) | 数据访问方法和装置 | |
| CN116257523A (zh) | 一种基于非易失存储器的列式存储索引方法及装置 | |
| CN103150395A (zh) | 基于ssd的文件系统目录路径解析方法 | |
| KR20230026946A (ko) | 해싱을 사용하는 키 밸류 스토리지 장치 및 그것의 동작 방법 | |
| CN104216988A (zh) | 分布式大数据的ssd磁盘和hdd磁盘混合存储方法 | |
| CN109407985B (zh) | 一种数据管理的方法以及相关装置 | |
| CN102722450B (zh) | 一种基于位置敏感哈希的删冗块设备存储方法 | |
| CN102169497B (zh) | 一种通过位图方式管理元数据的方法及装置 | |
| CN114461635A (zh) | 一种MySQL数据库数据存储方法、装置和电子设备 | |
| CN106776361B (zh) | 一种面向大规模非易失性存储介质的缓存方法和系统 | |
| Zhong et al. | Disco: A compact index for lsm-trees |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13823556 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 14413049 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205N DATED 10/07/2015) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 13823556 Country of ref document: EP Kind code of ref document: A1 |

