CN110018966A - A kind of memory, storage system, host and data manipulation, rubbish recovering method - Google Patents
A kind of memory, storage system, host and data manipulation, rubbish recovering method Download PDFInfo
- Publication number
- CN110018966A CN110018966A CN201810020423.8A CN201810020423A CN110018966A CN 110018966 A CN110018966 A CN 110018966A CN 201810020423 A CN201810020423 A CN 201810020423A CN 110018966 A CN110018966 A CN 110018966A
- Authority
- CN
- China
- Prior art keywords
- memory
- host
- data
- storage
- logic
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 177
- 238000003860 storage Methods 0.000 title claims abstract description 113
- 238000000034 method Methods 0.000 title claims abstract description 59
- 239000010813 municipal solid waste Substances 0.000 title claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 35
- 238000013507 mapping Methods 0.000 claims description 22
- 238000005299 abrasion Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 8
- 239000007787 solid Substances 0.000 claims description 6
- 238000012217 deletion Methods 0.000 claims description 5
- 230000037430 deletion Effects 0.000 claims description 5
- 238000011067 equilibration Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000007789 sealing Methods 0.000 claims description 2
- 238000002955 isolation Methods 0.000 abstract description 3
- 230000001151 other effect Effects 0.000 abstract 1
- 238000007726 management method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 230000003321 amplification Effects 0.000 description 5
- 238000003199 nucleic acid amplification method Methods 0.000 description 5
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 241000406668 Loxodonta cyclotis Species 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 238000004064 recycling Methods 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002224 dissection Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
A kind of memory, storage system, host and data manipulation, rubbish recovering method, the storage system include memory and host, and the memory includes: administrative unit, for realizing processing logic relevant to storage medium;Object-based access interface executes Object Operations to the memory by the access interface for host;The host includes: storage control unit, for realizing storage logic relevant to data layout, executes Object Operations by the object-based access interface.Present invention also provides corresponding data manipulation and rubbish recovering methods, and the application, which can achieve, reduces cost, guarantee the consistency of performance, isolation I/O resource and other effects, are suitable for using in application scenarios such as data centers.
Description
Technical field
This application involves but be not limited to memory technology, more particularly, to a kind of memory, storage system, host and number
According to operation, rubbish recovering method.
Background technique
Solid state hard disk (SSD:Solid State Drives) is manufactured hard disk with solid-state electronic storage chip array,
It is mainly made of controller and flash memory (Flash) chip, controller runs firmware (Firmware) and realizes various processing logics.
NVMe SSD is a kind of standard SSD product form, and it is non-volatile that NVMe (Non-volatile Memory Express), which is a kind of,
The interfacing of media definitions.Flash divides the storage content of NAND Flash and NOR Flash, NOR Flash to be encoded to
Main, NAND Flash major function is data on file.In massive store field, SSD is typically chosen NAND Flash.NAND
Flash is unit write-in with Physical Page (page), to wipe block (erase Block) as unit erasing.
NVMe SSD externally embodies logical block equipment interface, a large amount of internal storage data of NVMe SSD internal maintenance, to realize
Complicated map operation logic, the logic are referred to as Flash table (FTL).FTL is for by the Physical Page of NAND Flash
(PPA:Pphysical Page Address) is converted into logical block addresses (LBA, Logical that storage system uses for location
Block Address), with compatible with traditional disk interface.All data write (Append using addition inside SSD
Write mode) is recorded in NAND Flash, cannot realize that (overwrite) is write in original place inside Page, therefore
Tissue is carried out to data by way of log-structured inside NVMe SSD.
It is additional to write garbage reclamation (Garbage Collection) problem that brings, the garbage reclamation mechanism by SSD inside
The firmware control run on controller, it is transparent to upper layer application.In addition, Flash has certain erasable number limitation, therefore logical
Internal abrasion equilibration (Wear leveling) mode balanced service life is crossed, the service life of Flash is maximized.In addition to upper
State the processing logic that NVMe SSD to be realized further include bad block management (Bad block mgnr), command process (Commander),
Log management (Journal), Nonvolatile memory (NVRAM:Non-Volatile RAM) management, flash memory channel controller
(FCC:Flash Channel Controller), redundant array of independent disks (RAIN:Redundant Array of
Independent NAND), I O scheduling (IO Scheduler), resource allocation (Allocator), abrasion equilibrium, low-density it is odd
Even parity check code (LDPC:Low Density Parity Check Code) encoding and decoding etc., and storage relevant to data layout
Logic includes address of cache and garbage reclamation.The internal logic of NVMe SSD is as shown in Figure 1, storage system uses the interface of LBA
Mode accesses to SSD.
Complex process logic inside SSD leads to it at least and there is a problem of following aspects:
It is at high cost: to store mapping table using a large amount of memories inside SSD, increase cost.In addition, the premise of garbage reclamation is
Free area is provided to copy, there is a large amount of reserved storage space (OP, Over Provisioning) inside many SSD, is led to
Normal OP is 20% or more.OP is bigger, and garbage reclamation will be faster, and accordingly writing amplification can become smaller.But the excessive cost of idleness of OP.
Consistency of performance is poor: due to there is complicated garbage reclamation mechanism inside SSD, foring IO background in inside and makes an uproar
Sound impacts normal business IO stream, performance is caused to be shaken, and consistency is deteriorated.
IO less barrier property: the data flow needs that SSD is written are polymerize in inner buffer, and NAND is written after completing in polymerization
Flash causes the IO of different business to flow mixing in this way and is stored in Flash Page page.The data of different business have
There is different life cycles, the mode for mixing storage directly results in garbage collection procedure and writes amplification (WA:Write
Amplification) increase, and be difficult to accomplish the service quality (QoS) for different type IO.
By taking SSD is in the application at large-scale data center as an example, cost, consistency of performance, the IO isolation of SSD is important
Demand, standard NVMe SSD are difficult to meet the requirement of this respect.
In the related art, a kind of open channel SSD (Open Channel SSD) is proposed, thinking is will be in SSD
A large amount of processing logics in portion are placed into storage software layers to realize, such as abrasion equilibration (Wear level), I O scheduling, physical resource
Distribute (Allocator) etc..Erase Block, Page etc. inside SSD is exposed to storage system by Open Channel SSD
System, storage system directly operates these hardware resources using the means of software, and is accessed with the interface mode of PPA to SSD.
Need to be adapted to different NAND Flash Jie which increase the complexity of exploitation and the later maintenance of storage software or even software
Matter.Open-Channel SSD and the internal logic of storage system are as shown in Figure 2.
Summary of the invention
The embodiment of the invention provides a kind of memories, comprising:
Storage medium, including multiple physical memory cells;
Administrative unit, for realizing processing logic relevant to the storage medium;
Object-based access interface executes Object Operations to the memory by the access interface for host.
The embodiment of the invention also provides a kind of storage systems, including memory and host, in which:
The memory includes:
Storage medium, including multiple physical memory cells;
Administrative unit, for realizing processing logic relevant to the storage medium;
Object-based access interface executes Object Operations to the memory by the access interface for host;
The host includes:
Storage control unit passes through the object-based access for realizing storage logic relevant to data layout
Interface executes Object Operations.
The embodiment of the invention also provides a kind of hosts, comprising:
Storage control unit, for realizing storage logic relevant to data layout, by memory offer based on right
The access interface of elephant executes Object Operations;
Driving unit, for realizing storage drive function.
Above-described embodiment scheme is sufficiently combined the characteristic of memory and host storage software, by software-hardware synergism,
In the case where not increasing excessive burden to host, can achieve reduces cost, guarantees the consistency of performance, is isolated in I/O resource
At least one effect is suitable for meeting the needs of these application scenarios are to novel storage medium in application scenarios such as data centers.
The embodiment of the invention also provides a kind of data manipulation method, including below write data procedures:
Host is converted to object according to the mapping relations between logical address and object space, by the logical address for writing data
Space, the object space indicate that the object is the logic storage that memory externally provides with the information for including object identity
Unit;
The host is realized to memory sending object write command by object-based access interface and is write with additional
Mode writes data to the object, and the object write command carries the object identity.
The embodiment of the invention also provides a kind of rubbish recovering methods, comprising:
Host by object-based access interface to memory sending object reading instruction, by having in object to be recycled
Effect data read in the memory of the host;
The host by the object-based access interface to the memory sending object write command, will be in reading
The valid data deposited are written in new object;
Wherein, the object is the logic storage unit that memory externally provides, and the object reading instruction and object write finger
The object identity for the object to be operated is carried in order.
The embodiment of the invention also provides a kind of data manipulation method, including below write data procedures:
What memory receiving host was sent writes subject instructions, described to write pair that subject instructions include the data object to be written
As mark, the object is the logic storage unit that memory externally provides;
Corresponding relationship between the memory look-up object and physical memory cell is deposited in the corresponding physics of the object
Data are written in storage unit.
In above-described embodiment, the object that host provides memory is operated, and the address of cache and rubbish of data manipulation
Rubbish recycling realizes that can achieve reduces cost in host computer side, guarantees the consistency of performance, at least one of isolation I/O resource effect
Fruit.
Detailed description of the invention
Fig. 1 is the schematic diagram of standard NVMe SSD internal logic and interface;
Fig. 2 is the schematic diagram of the boundary division and interface between Open Channel SSD and host storage software;
Fig. 3 is the schematic diagram of one storage system framework of the embodiment of the present invention;
Fig. 4 is the boundary division between the embodiment of the present invention 21 illustrative Object SSD and host storage software
With the schematic diagram of interface;
Fig. 5 is the schematic diagram of the relationship between Object and Object SSD;
Fig. 6 is the schematic diagram of the relationship between Object, chunk and erase Block.
Specific embodiment
To make the objectives, technical solutions, and advantages of the present invention clearer, below in conjunction with attached drawing to the present invention
Embodiment be described in detail.It should be noted that in the absence of conflict, in the embodiment and embodiment in the application
Feature can mutual any combination.
Embodiment one
The present embodiment has re-started definition to the access interface of host and memory, by memory inside and data layout
Relevant storage logic is from the Software Protocol Stack that memory firmware is transferred to host.There is no complicated FTL to reflect in memory
Garbage reclamation related to this (Garbage Collection) process is also not present in firing table.In connecing for this software and hardware layering
In mouthful, object (Object) is the basic operation unit of memory.The memory of the present embodiment can be by taking SSD as an example to mark
The object-based SSD that quasi- NVMe SSD is improved, and herein, the SSD of the application is referred to as Object
SSD。
The present embodiment proposes a kind of new storage system, including memory 10 and host 20, as shown in figure 3,
The memory 10 includes:
Storage medium 105, including multiple physical memory cells;
Administrative unit 103, for realizing processing logic relevant to the storage medium;
Object-based access interface 101 executes Object Operations to the memory by the access interface for host;
The host 20 includes:
Storage control unit 201 passes through the object-based visit for realizing storage logic relevant to data layout
Ask that interface executes Object Operations;
Driving unit 203, for realizing storage drive function.
In the application, data layout is the process that data modes of emplacement is selected under the premise of understanding data semantic.
In the memory of the present embodiment, storage medium can be NAND Flash, and administrative unit can use the control in SSD
Chip runs firmware to realize.Storage control unit in host can run corresponding storage software with CPU to realize.Storage
Software can be the software of file system, be also possible to application layer software.It is real that application layer software can use above-mentioned access interface
Now to the data manipulation of object and management.
In the present embodiment,
The processing logic that the administrative unit is realized includes one or more of: abrasion equilibration, I O scheduling, IO control
Device, bad block management, log management, Nonvolatile memory management, redundant array of independent disks, encoding and decoding, flash memory channel controller.
In the present embodiment,
The object is the logic storage unit that the memory externally provides, and an object corresponds to one or more objects
Manage storage unit.
In the present embodiment,
The processing logic that the administrative unit is realized includes: management object, is safeguarded between object and physical memory cell
For corresponding relationship to realize the mapping between logical memory space and amount of physical memory, it includes pair that the logical memory space, which uses,
As the information of mark indicates that the amount of physical memory is indicated using the information identified including physical memory cell.
In the present embodiment,
The processing logic that the administrative unit is realized includes:
The reading subject instructions that parsing and processing host are sent, search and specify the corresponding physics of object in the object reading instruction
Storage unit reads data from the physical memory cell found;
The object write command that parsing and processing host are sent, searches and specifies the corresponding physics of object in the object write command
Data are written to the physical memory cell found in storage unit.
Above-mentioned specified object can be determined by the object identity in instruction, it needs to be determined that in object internal read, write
When the specific location of data, offset can be used to indicate.
In the present embodiment,
The processing logic that the administrative unit is realized comprises at least one of the following:
The creation subject instructions that parsing and processing host are sent, create object, distribute physical store list for the object of creation
Member records the corresponding relationship between the object of creation and the physical memory cell of distribution;
The deletion subject instructions of parsing and processing host delete the specified object deleted in subject instructions;
Parse and handle host seals subject instructions up for safekeeping, specifies the data of object to be arranged to described seal up for safekeeping in subject instructions
Reading mode;
The Object Query instruction of parsing and processing host is inquired and specifies the information of object in the Object Query instruction and return
Back to the host.
In the present embodiment,
The memory is solid state hard disk, and a physical memory cell includes multiple erasing blocks.
In the present embodiment,
The storage logic that the storage control unit is realized includes one or more of:
Address of cache, for safeguarding the mapping relations between the logical address of storage system and object space, described in realization
Conversion between logical address and object space;
Garbage reclamation, for by read operation to object and write operation, the valid data on object to be recycled to be moved
It moves on on new object, then resource reclaim is carried out to the object to be recycled.
In the present embodiment,
The Object Operations comprise at least one of the following:
Object is write, for data to be written to specified object in a manner of additional write;
Object is read, for reading the data in specified object;
Object is sealed up for safekeeping, for the data of specified object to be arranged to a reading mode;
Object is created, for creating new object;
Object is deleted, for deleting specified object;
Object Query, for inquiring the information of specified object.
Traditional NVMe SSD is based on FTL and constructs the logical blocks for wiping block (erase Block) independently of physics
(BLOCK), storage system is to carry out write operation to BLOCK in such a way that original place is write.And the Object SSD of the present embodiment is the bottom of by
The physical resource of layer is externally exposed in a manner of object, and storage system is to carry out writing behaviour to object in a manner of additional write
Make.When garbage reclamation, it can be recycled as unit of Object, but the application is not limited to this.
After Object is supplied to host by above-described embodiment, layout of the data in Object is transferred at upper layer software (applications)
Reason, Object SSD are not necessarily to realize the mapping and conversion of LBA and PPA, eliminate FTL mapping complicated in standard NVMe SSD
Table reduces the EMS memory occupation amount in Object SSD, simplifies the design of SSD, reduce costs.Equally, the rubbish inside SSD
Rubbish reclaim mechanism will not exist yet, and the junk data without carrying out backstage arranges and recycling.In addition, not due to Object SSD
There are garbage collection procedure, it is not required to carry out Data Migration in inside, because without reserving a large amount of memory space, to reduce
OP, improves the space utilization rate of SSD, reduces the cost of SSD.
In the present embodiment, since storage logic relevant to data layout on object is realized by upper layer storage system,
It can achieve optimum data layout on Object SSD, such as (can be such as divided into different types of data by data dispatch
Cold data, dsc data) it is respectively stored into different Object, optimize garbage reclamation mechanism to the greatest extent.And rubbish returns
Receipts process is completed by storage system.Different business data interspersion in storage medium in standard NVMe SSD is avoided, is drawn
Enter to write amplification and IO quality problems.This software and hardware layering of Object SSD and interface mode, it is natural to be provided for application
Amplification is write in optimal data layout mode, reduction, promotes IO mass.
It is compared with Open-Channel SSD, attribute relevant to NAND Flash is not exposed to and deposits by Object SSD
Store up software systems.Storage software is using without being concerned about specific storage medium, it is soft to greatly reduce host side when Object SSD
The complexity of part.Object SSD by processing logic relevant to NAND Flash medium by firmware complete, will on object
The relevant storage logic of data layout is realized in the Software Protocol Stack of storage system.So that software and hardware, that is, coordinated, and mutually
It is mutually independent, and can also play the purpose that storage software directly controls bottom physical resource.
Embodiment two
Present embodiments provide the interface cutting side between the more reasonable SSD firmware of one kind and host side storage software
Formula, the interface between SSD firmware and storage software is compatible with NVMe standard, can be used as a kind of extension shape of NVMe standard interface
Formula.
The schematic diagram of boundary division and interface between the present embodiment one illustrative Object SSD and storage software
As shown in figure 4, storage software realization storage logic relevant to data layout, including but not limited to address of cache and rubbish are returned
It receives.Processing logic relevant to storage medium (NAND flash) is realized on Object SSD, Object SSD offer is based on
The access interface of object, what which externally exposed is object, and provides the method using operation object, can such as carry out object
Reading, object are write, create object, delete object, seal object up for safekeeping, the inquiry etc. of object information are carried out, to realize the ability of object
That is physical resource management.
As shown in figure 4, the processing logic that Object SSD is realized includes:
The processing of NVMe command analysis, the NVMe order of dissection process standard, storage software drive life by the NVMe of standard
Order operates Object SSD;It can parse and deal with objects simultaneously the instruction of operation.
Bad block management, the Bad Block in maintenance and management system.
Resource allocation and management distribute physical memory cell for object, manage object and object and physical memory cell it
Between corresponding relationship.
RAIN, establishes data redundancy between NAND Flash particle, and what guarantee data stored in NAND Flash can
By property.
Wear leveling mechanism, balances the service life of NAND Flash by way of abrasion equilibrium, and abrasion equilibrium is divided into
Static wear equilibrium and Dynamic wear are two kinds balanced.
LDPC encoding and decoding, data store in NAND Flash in such a way that LDPC is encoded, and the decoding of data is divided into firmly
Part LDPC and software LDPC two ways.
Temperature control, carries out dynamic adjustment to the temperature of SSD by way of temperature negative-feedback, it is ensured that temperature does not exceed
Threshold value.
NVRAM management.In order to reduce write delay, data are written to the NVRAM inside SSD, in addition, the member inside NVMe SSD
Data needs polymerize in NVRAM, and Object SSD is since it is desired that the metadata used is seldom, and NVRAM can have with very little
The support of nonvolatile memory can not be needed under a little application scenarios.
The update of Journal, SSD internal metadata is by the way of log (Journal) update.
I O scheduling guarantees the quality of IO by scheduling, optimizes NAND Flash's using orders such as Erase Suspend
Access delay.The I O scheduling mechanism can store software with host side by modes such as Tag and be interacted, it is ensured that the matter of I/O request
Amount.
Others further include FCC etc., are no longer illustrated one by one.
In this example, an Object SSD can regard the set of Object as, and storage system passes through operation Object
Mode realize reading and writing data.Relationship between Object and Object SSD as shown in figure 5, Object SSD by NAND
The physical space of Flash is exposed to storage system with object approach.It is externally rendered as a series of Object, each Object is
One can only carry out the physical space of Append Write.Inside SSD, an Object corresponds to one or more physics and deposits
The physical memory cell is also known as chunk by storage unit, the application, and chunk is actual physical resource inside SSD.One
Chunk is usually made of the erase Block of multiple NAND Flash.As shown in fig. 6, an Object is corresponding one or more
Chunk, and a chunk includes multiple erase Block, to be the new Object distribution when creating new Object
One or more chunk, and record the corresponding relationship between the new Object and the chunk of distribution, this object relationship
Embody the mapping relations of object space and physical space.The size and/or quantity of the corresponding chunk of this example Object can be with
Variation, for example, the size of chunk is variable, the size meeting of Object at this time in the case that bad block occurs in NAND Flash
There is well-regulated variation.
In the present embodiment, in Object SSD, the size of Object is in 128MB or more.Due to the capacity ratio of Object
It is larger, therefore the memory size that the mapping table towards Object occupies is smaller.The data block of bulk can also be write downwards, number
According to not needing to polymerize in memory, reduce the demand to SSD internal memory.The direct framework of storage software of the present embodiment is right
As on, the mapping of LBA to PPA is realized inside object, i.e. mapping relations are determined by Host and safeguarded.The garbage reclamations such as GC
Logic is equally realized at the end Host.
In this example, reading and writing can be executed to object, the operation such as creation, delete, seal up for safekeeping and inquire, these lives operated
It enables interface that can be extended (such as customized by manufacturer) by the NVMe to current standard, defines corresponding object interface function
And it is supported.And the order (also referred to as instructing in text) is needed support inside Object SSD firmware.
The Object Operations that the object-based access interface of the present embodiment may be implemented include:
Object is read, and carries out data reading operation to specified object, input parameter may include object identity (ID), in object partially
Shifting amount, rdma read address and data length.
Object is write, to specified object carry out data write operation, input parameter may include object ID, object bias internal amount,
Write memory address and data length.
Object is created, an object is created, may include the object successfully created in the response that SSD is returned for the operation
Object ID。
Subject instructions are deleted, delete a specified object, input parameter may include object ID.
It seals subject instructions up for safekeeping, the data inside specified object is arranged to a reading mode, input parameter may include object
ID。
Object Query instruction.The information such as attribute for obtaining specified object obtains in Object SSD in not specified object
The summary information for the object that portion has created.
Specified object in above-metioned instruction is identified by Object to be indicated.
The present embodiment is sufficiently combined SSD with the characteristic of storage system, is reduced cost by software-hardware synergism, is guaranteed performance
Consistency, be isolated I/O resource.It is particularly well suited as the novel storage unit of one kind and is applied to the application scenarios such as data center,
The carrying cost of data center is reduced by this SSD, and optimizes IO mass.
Embodiment three
Storage system of the present embodiment based on embodiment one, proposes the correlation method realized in the storage system, including number
According to operating method, rubbish recovering method and method for managing object.In the case where no explanation on the contrary, the SSD of the present embodiment refers to
Object SSD。
The data manipulation method of the present embodiment host computer side, including below write data procedures:
Host is converted to object according to the mapping relations between logical address and object space, by the logical address for writing data
Space, the object space indicate that the object is the logic storage that memory externally provides with the information for including object identity
Unit;
The host is realized to memory sending object write command by object-based access interface and is write with additional
Mode writes data to the object, and the object write command carries the object identity.
In the present embodiment,
The data manipulation method further includes reading data course below:
Host is converted to object according to the mapping relations between logical address and object space, by the logical address for reading data
Space;
The host by object-based access interface to memory sending object reading instruction, take by the object reading instruction
With the object identity.
In the present embodiment,
The data manipulation method further includes below sealing data procedures up for safekeeping:
The host seals subject instructions up for safekeeping to memory transmission by object-based access interface, and instruction memory will refer to
The data for determining object are set as a reading mode.
The present embodiment additionally provides a kind of rubbish recovering method that host computer side is realized, comprising:
Host by object-based access interface to memory sending object reading instruction, by having in object to be recycled
Effect data read in the memory of the host, and the object is the logic storage unit that memory externally provides;
The host by the object-based access interface to the memory sending object write command, will be in reading
The valid data deposited are written in new object;
Wherein, the object is the logic storage unit that memory externally provides, and the object reading instruction and object write finger
The object identity for the object to be operated is carried in order.
In the present embodiment,
The host to after the memory sending object write command, the method also includes:
The host sends deletion pair to the memory after the completion of write-in, through the object-based access interface
As instruction, indicate that the memory deletes the object to be recycled.
After deleting successfully, the host can with the mapping relations between the logical address and object space of updating maintenance,
Mapping relations relevant to the object to be recycled are deleted.
The present embodiment additionally provides a kind of method for managing object of host computer side, including Object Creation process below:
Host sends creation subject instructions to memory by object-based access interface, and the object is memory pair
The logic storage unit of outer offer;
The host receives the creation success response that the memory returns, in the creation success response comprising create at
The identification information of the object of function.
In the present embodiment,
After the host receives creation success response, object space relevant to the successful object of creation is also added
Mapping relations between logical address.
In the present embodiment,
The method also includes objects below to delete process:
The host is sent to memory by the object-based access interface and deletes subject instructions, indicates memory
Delete specified object;
After the host receives the deletion success response that the memory returns, it is relevant right to the specified object to delete
Mapping relations between image space and logical block addresses.
In the present embodiment,
The method also includes Object Query processes below:
The host, to memory sending object inquiry instruction, indicates the memory by object-based access interface
Inquire the information of specified object;
The host receives the Object Query response that the memory returns, and obtains the information of the specified object, described
The information of object may include object properties, such as the size of object.
The present embodiment additionally provides a kind of data manipulation method of memory side, including below writes data procedures:
What memory receiving host was sent writes subject instructions, described to write pair that subject instructions include the data object to be written
As mark, the object is the logic storage unit that memory externally provides;
Corresponding relationship between the memory look-up object and physical memory cell is deposited in the corresponding physics of the object
Data are written in storage unit.
In the present embodiment,
The method also includes reading data courses below:
The reading subject instructions that the memory receiving host is sent, the reading subject instructions include that data place to be read is right
The object identity of elephant;
Corresponding relationship between the memory look-up object and physical memory cell is deposited from the corresponding physics of the object
Storage unit reads data.
In the present embodiment,
Data procedures are sealed up for safekeeping the method also includes below:
The object that the memory receiving host is sent seals instruction up for safekeeping, and the object seals pair of the instruction comprising specified object up for safekeeping
As mark;
The data of the specified object are set a reading mode by the memory.
The present embodiment additionally provides a kind of method for managing object of memory side, including Object Creation process below:
The creation subject instructions that memory receiving host is sent, the object are that the logic storage that memory externally provides is single
Member;
The memory creates object, distributes physical memory cell for the object of creation, and record the object of the creation
Corresponding relationship between the physical memory cell of distribution;
The information of the object of the creation is returned to the host by the memory.
In the present embodiment,
The method also includes objects below to delete process:
The deletion subject instructions that the memory receiving host is sent, it is described to delete pair that subject instructions include specified object
As mark;
The memory deletes the specified object,
After deleting object, the corresponding relationship between the specified object and physical memory cell can be also further deleted, but
It can also concentrate and clear up to having deleted the relevant corresponding relationship of object.
In the present embodiment,
The method also includes following Object Query processes:
The Object Query instruction that the memory receiving host is sent, the mark of the Object Query instruction comprising specified object
Know information;
The memory obtains the information of the specified object and returns to the host;Or
The Object Query instruction that the memory receiving host is sent, the memory obtain the information of the object created
And return to the host.
The present embodiment additionally provides a kind of host, including memory, processor and is stored on the memory and can be
The computer program run on the processor, the processor realize the present embodiment host computer side when executing the computer program
Method processing.
It will appreciated by the skilled person that whole or certain steps, system, dress in method disclosed hereinabove
Functional module/unit in setting may be implemented as software, firmware, hardware and its combination appropriate.In hardware embodiment,
Division between the functional module/unit referred in the above description not necessarily corresponds to the division of physical assemblies;For example, one
Physical assemblies can have multiple functions or a function or step and can be executed by several physical assemblies cooperations.Certain objects
Reason component or all physical assemblies may be implemented as by processor, such as central processing unit, digital signal processor or micro process
The software that device executes, is perhaps implemented as hardware or is implemented as integrated circuit, such as specific integrated circuit.Such software
Can be distributed on a computer-readable medium, computer-readable medium may include computer storage medium (or non-transitory be situated between
Matter) and communication media (or fugitive medium).As known to a person of ordinary skill in the art, term computer storage medium includes
In any method or skill for storing information (such as computer readable instructions, data structure, program module or other data)
The volatile and non-volatile implemented in art, removable and nonremovable medium.Computer storage medium includes but is not limited to
RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storages, magnetic
Box, tape, disk storage or other magnetic memory apparatus or it can be used for storing desired information and can be visited by computer
Any other medium asked.In addition, known to a person of ordinary skill in the art be, communication media generally comprises computer-readable
Other numbers in the modulated data signal of instruction, data structure, program module or such as carrier wave or other transmission mechanisms etc
According to, and may include any information delivery media.
Claims (24)
1. a kind of memory, comprising:
Storage medium, including multiple physical memory cells;
Administrative unit, for realizing processing logic relevant to the storage medium;
Object-based access interface executes Object Operations to the memory by the access interface for host.
2. memory as described in claim 1, it is characterised in that:
The processing logic that the administrative unit is realized includes one or more of: abrasion equilibration, I O scheduling, I/O controller, bad
Block management, log management, Nonvolatile memory management, redundant array of independent disks, encoding and decoding, flash memory channel controller.
3. memory as described in claim 1, it is characterised in that:
The object is the logic storage unit that the memory externally provides, and an object corresponds to one or more physics and deposits
Storage unit.
4. memory as claimed in claim 3, it is characterised in that:
The processing logic that the administrative unit is realized includes: management object, is safeguarded corresponding between object and physical memory cell
For relationship to realize the mapping between logical memory space and amount of physical memory, it includes object mark that the logical memory space, which uses,
The information of knowledge indicates that the amount of physical memory uses the information including physical memory cell mark to indicate.
5. memory as claimed in claim 4, it is characterised in that:
The processing logic that the administrative unit is realized includes:
The reading subject instructions that parsing and processing host are sent, search and specify the corresponding physical store of object in the object reading instruction
Unit reads data from the physical memory cell found;
The object write command that parsing and processing host are sent, searches and specifies the corresponding physical store of object in the object write command
Data are written to the physical memory cell found in unit.
6. memory as claimed in claim 4, it is characterised in that:
The processing logic that the administrative unit is realized comprises at least one of the following:
The creation subject instructions that parsing and processing host are sent, create object, distribute physical memory cell, note for the object of creation
Record the corresponding relationship between the object of creation and the physical memory cell of distribution;
The deletion subject instructions of parsing and processing host delete the specified object deleted in subject instructions;
Parse and handle host seals subject instructions up for safekeeping, the data for sealing specified object in subject instructions up for safekeeping is arranged to read-only
Mode;
The Object Query instruction of parsing and processing host is inquired and specifies the information of object in the Object Query instruction and return to
The host.
7. such as memory as claimed in any one of claims 1 to 6, it is characterised in that:
The memory is solid state hard disk, and a physical memory cell includes multiple erasing blocks.
8. a kind of storage system, including memory and host, it is characterised in that:
The memory includes:
Storage medium, including multiple physical memory cells;
Administrative unit, for realizing processing logic relevant to the storage medium;
Object-based access interface executes Object Operations to the memory by the access interface for host;
The host includes:
Storage control unit passes through the object-based access interface for realizing storage logic relevant to data layout
Execute Object Operations.
9. storage system as claimed in claim 8, it is characterised in that:
The storage logic that the storage control unit is realized includes one or more of:
Address of cache realizes the logic for safeguarding the mapping relations between the logical address of storage system and object space
Conversion between address and object space;
Garbage reclamation, for by read operation to object and write operation, the valid data on object to be recycled to be moved to
On new object, then resource reclaim is carried out to the object to be recycled.
10. storage system as claimed in claim 8, it is characterised in that:
The object is the logic storage unit that the memory externally provides, and an object corresponds to one or more physics and deposits
Storage unit.
11. storage system as claimed in claim 8, it is characterised in that:
The processing logic that the administrative unit is realized includes: management object, is safeguarded between object and physical memory cell
For corresponding relationship to realize the mapping between logical memory space and amount of physical memory, it includes pair that the logical memory space, which uses,
As the information of mark indicates that the amount of physical memory is indicated using the information identified including physical memory cell.
12. storage system as claimed in claim 8, it is characterised in that:
The processing logic that the administrative unit is realized includes one or more of: abrasion equilibration, I O scheduling, IO control
Device, bad block management, log management, Nonvolatile memory management, redundant array of independent disks, encoding and decoding, flash memory channel controller.
13. the storage system as described in any in claim 8-12, it is characterised in that:
The Object Operations comprise at least one of the following:
Object is write, for data to be written to specified object in a manner of additional write;
Object is read, for reading the data in specified object;
Object is sealed up for safekeeping, for the data of specified object to be arranged to a reading mode;
Object is created, for creating new object;
Object is deleted, for deleting specified object;
Object Query, for inquiring the information of specified object.
14. the storage system as described in any in claim 8-12, it is characterised in that:
The memory is solid state hard disk, and a physical memory cell includes multiple erasing blocks.
15. a kind of host, comprising:
Storage control unit is provided object-based for realizing storage logic relevant to data layout by memory
Access interface executes Object Operations;
Driving unit, for realizing storage drive function.
16. host as claimed in claim 15, it is characterised in that:
The storage logic that the storage control unit is realized comprises at least one of the following:
Address of cache realizes the logic for safeguarding the mapping relations between the logical address of storage system and object space
Conversion between address and object space;
Garbage reclamation, for by read operation to object and write operation, the valid data on object to be recycled to be moved to
On new object, then resource reclaim is carried out to the object to be recycled.
17. host as claimed in claim 15, it is characterised in that:
The object is the logic storage unit that the memory externally provides, and an object corresponds to one or more physics and deposits
Storage unit.
18. host as claimed in claim 17, it is characterised in that:
The memory is solid state hard disk, and a physical memory cell includes multiple erasing blocks.
19. the host as described in any in claim 15-18, it is characterised in that:
The Object Operations comprise at least one of the following:
Object is write, for data to be written to specified object in a manner of additional write;
Object is read, for reading the data in specified object;
Object is sealed up for safekeeping, for the data of specified object to be arranged to a reading mode;
Object is created, for creating new object;
Object is deleted, for deleting specified object;
Object Query, for inquiring the information of specified object.
20. a kind of data manipulation method, including below write data procedures:
Host is converted to object sky according to the mapping relations between logical address and object space, by the logical address for writing data
Between, the object space is indicated with the information for including object identity, and the object is that the logic storage that memory externally provides is single
Member;
The host object-based access interface to memory sending object write command to realize in a manner of additional write
Data are write to the object, the object write command carries the object identity.
21. data manipulation method as claimed in claim 18, it is characterised in that:
The data manipulation method further includes reading data course below:
Host is converted to object sky according to the mapping relations between logical address and object space, by the logical address for reading data
Between;
For the host by object-based access interface to memory sending object reading instruction, the object reading instruction carries institute
State object identity.
22. a kind of rubbish recovering method, comprising:
Host by object-based access interface to memory sending object reading instruction, by the significant figure in object to be recycled
According to the memory for reading in the host;
The host, to the memory sending object write command, will read in memory by the object-based access interface
The valid data are written in new object;
Wherein, the object is the logic storage unit that memory externally provides, in the object reading instruction and object write command
Carry the object identity for the object to be operated.
23. a kind of data manipulation method, including below write data procedures:
What memory receiving host was sent writes subject instructions, described to write the object mark that subject instructions include the data object to be written
Know, the object is the logic storage unit that memory externally provides;
Corresponding relationship between the memory look-up object and physical memory cell, in the corresponding physical store list of the object
Member write-in data.
24. data manipulation method as claimed in claim 27, it is characterised in that:
The method also includes reading data courses below:
The reading subject instructions that the memory receiving host is sent, the subject instructions of reading include the object where data to be read
Object identity;
Corresponding relationship between the memory look-up object and physical memory cell, from the corresponding physical store list of the object
Member reads data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810020423.8A CN110018966A (en) | 2018-01-09 | 2018-01-09 | A kind of memory, storage system, host and data manipulation, rubbish recovering method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810020423.8A CN110018966A (en) | 2018-01-09 | 2018-01-09 | A kind of memory, storage system, host and data manipulation, rubbish recovering method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110018966A true CN110018966A (en) | 2019-07-16 |
Family
ID=67187859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810020423.8A Pending CN110018966A (en) | 2018-01-09 | 2018-01-09 | A kind of memory, storage system, host and data manipulation, rubbish recovering method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110018966A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309645A (en) * | 2020-03-12 | 2020-06-19 | 上海交通大学 | Novel hybrid memory garbage collection method and system based on nonvolatile memory |
CN111930517A (en) * | 2020-09-18 | 2020-11-13 | 北京中科立维科技有限公司 | High-performance self-adaptive garbage collection method and computer system |
CN112333283A (en) * | 2020-11-20 | 2021-02-05 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | Autonomous high-end storage array system architecture |
TWI718642B (en) * | 2019-08-27 | 2021-02-11 | 點序科技股份有限公司 | Memory device managing method and memory device managing system |
WO2021088587A1 (en) * | 2019-11-08 | 2021-05-14 | 华为技术有限公司 | Data access method and apparatus, and storage medium |
CN113076264A (en) * | 2020-01-03 | 2021-07-06 | 阿里巴巴集团控股有限公司 | Memory management method and device |
CN113076056A (en) * | 2020-01-06 | 2021-07-06 | 华为技术有限公司 | Data access method, hard disk and storage device |
CN113377278A (en) * | 2020-03-10 | 2021-09-10 | 阿里巴巴集团控股有限公司 | Solid state disk, garbage recycling and controlling method, equipment, system and storage medium |
CN113535092A (en) * | 2021-07-20 | 2021-10-22 | 阿里巴巴新加坡控股有限公司 | Storage engine, method and readable medium for reducing memory metadata |
CN114237518A (en) * | 2022-02-22 | 2022-03-25 | 苏州浪潮智能科技有限公司 | A data reading method, system, device and terminal |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104054071A (en) * | 2012-12-14 | 2014-09-17 | 华为技术有限公司 | Method for accessing storage device and storage device |
CN104407813A (en) * | 2014-11-20 | 2015-03-11 | 上海宝存信息科技有限公司 | RAID (Redundant Array of Independent Disk) system and method based on solid-state storage medium |
CN105224474A (en) * | 2014-06-03 | 2016-01-06 | 深圳市腾讯计算机系统有限公司 | The system that realizes of solid state hard disc flash translation layer (FTL) and the implement device of flash translation layer (FTL) |
-
2018
- 2018-01-09 CN CN201810020423.8A patent/CN110018966A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104054071A (en) * | 2012-12-14 | 2014-09-17 | 华为技术有限公司 | Method for accessing storage device and storage device |
CN105224474A (en) * | 2014-06-03 | 2016-01-06 | 深圳市腾讯计算机系统有限公司 | The system that realizes of solid state hard disc flash translation layer (FTL) and the implement device of flash translation layer (FTL) |
CN104407813A (en) * | 2014-11-20 | 2015-03-11 | 上海宝存信息科技有限公司 | RAID (Redundant Array of Independent Disk) system and method based on solid-state storage medium |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI718642B (en) * | 2019-08-27 | 2021-02-11 | 點序科技股份有限公司 | Memory device managing method and memory device managing system |
US12050539B2 (en) | 2019-11-08 | 2024-07-30 | Huawei Technologies Co., Ltd. | Data access method and apparatus and storage medium |
WO2021088587A1 (en) * | 2019-11-08 | 2021-05-14 | 华为技术有限公司 | Data access method and apparatus, and storage medium |
CN113076264A (en) * | 2020-01-03 | 2021-07-06 | 阿里巴巴集团控股有限公司 | Memory management method and device |
WO2021139199A1 (en) * | 2020-01-06 | 2021-07-15 | 华为技术有限公司 | Data access method, hard disk, and storage device |
CN113076056B (en) * | 2020-01-06 | 2023-06-27 | 华为技术有限公司 | Data access method, hard disk and storage device |
CN113076056A (en) * | 2020-01-06 | 2021-07-06 | 华为技术有限公司 | Data access method, hard disk and storage device |
CN113377278A (en) * | 2020-03-10 | 2021-09-10 | 阿里巴巴集团控股有限公司 | Solid state disk, garbage recycling and controlling method, equipment, system and storage medium |
CN111309645A (en) * | 2020-03-12 | 2020-06-19 | 上海交通大学 | Novel hybrid memory garbage collection method and system based on nonvolatile memory |
CN111309645B (en) * | 2020-03-12 | 2023-06-27 | 上海交通大学 | Novel hybrid memory garbage collection method and system based on nonvolatile memory |
CN111930517B (en) * | 2020-09-18 | 2023-07-14 | 北京中科立维科技有限公司 | High-performance self-adaptive garbage collection method and computer system |
CN111930517A (en) * | 2020-09-18 | 2020-11-13 | 北京中科立维科技有限公司 | High-performance self-adaptive garbage collection method and computer system |
CN112333283A (en) * | 2020-11-20 | 2021-02-05 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | Autonomous high-end storage array system architecture |
CN113535092A (en) * | 2021-07-20 | 2021-10-22 | 阿里巴巴新加坡控股有限公司 | Storage engine, method and readable medium for reducing memory metadata |
CN113535092B (en) * | 2021-07-20 | 2024-05-17 | 阿里巴巴创新公司 | Storage engine, method and readable medium for reducing memory metadata |
CN114237518A (en) * | 2022-02-22 | 2022-03-25 | 苏州浪潮智能科技有限公司 | A data reading method, system, device and terminal |
CN114237518B (en) * | 2022-02-22 | 2022-05-24 | 苏州浪潮智能科技有限公司 | A data reading method, system, device and terminal |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110018966A (en) | A kind of memory, storage system, host and data manipulation, rubbish recovering method | |
US11989160B2 (en) | Heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device | |
US20250036283A1 (en) | Memory system and method for controlling nonvolatile memory | |
US12189947B2 (en) | Memory device and host device | |
US10474397B2 (en) | Unified indirection in a multi-device hybrid storage unit | |
US8521949B2 (en) | Data deleting method and apparatus | |
KR102541492B1 (en) | Storage device including multi-partitions for multimode operations, and operation method thereof | |
WO2017000658A1 (en) | Storage system, storage management device, storage device, hybrid storage device, and storage management method | |
US8645614B2 (en) | Method and apparatus for managing data of flash memory via address mapping | |
CN107391774B (en) | Garbage Collection Method for Log File System Based on Data Deduplication | |
CN112771493B (en) | Splitting write streams into multiple partitions | |
JP2018041245A (en) | Storage device and storage control device | |
CN104969170A (en) | Tiered storage system, storage controller and method of substituting data transfer between tiers | |
CN107678981A (en) | Data processing method and device | |
US11119912B2 (en) | Ordering data updates for improving garbage collection being performed while performing the set of data updates | |
US8046391B2 (en) | Storage apparatus and its file control method and storage system | |
KR20110005817A (en) | How to virtualize memory drives and optical drives as optical disk drives that can act like optical disk drives | |
CN115794676A (en) | Storage System | |
KR20220006458A (en) | Key-value storage device and method for sorting key | |
US20100131469A1 (en) | Storage management device and file deletion control method | |
KR100638638B1 (en) | Flash memory control method | |
KR101465426B1 (en) | Extent mapping flash device | |
WO2022021280A1 (en) | Storage controller, storage control method, solid state disk and storage system | |
CN110968520B (en) | Multi-stream storage device based on unified cache architecture | |
KR102719939B1 (en) | LightNVM data storage method and device for improving read performance |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40010965 Country of ref document: HK |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190716 |