WO2015058493A1 - 一种存储数据处理方法及装置 - Google Patents

一种存储数据处理方法及装置 Download PDF

Info

Publication number
WO2015058493A1
WO2015058493A1 PCT/CN2014/074811 CN2014074811W WO2015058493A1 WO 2015058493 A1 WO2015058493 A1 WO 2015058493A1 CN 2014074811 W CN2014074811 W CN 2014074811W WO 2015058493 A1 WO2015058493 A1 WO 2015058493A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage unit
storage
storage space
data blocks
data block
Prior art date
Application number
PCT/CN2014/074811
Other languages
English (en)
French (fr)
Inventor
魏明昌
张程伟
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2015058493A1 publication Critical patent/WO2015058493A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Definitions

  • the present invention relates to the field of communications, and in particular, to a storage data processing method and apparatus. Background technique
  • an embodiment of the present invention provides a storage data processing method and apparatus, and aims to solve the problem of SSD wear caused by the movement of a useful data block.
  • a first aspect of the embodiments of the present invention provides a storage data processing method, including: counting, when a storage space meets a preset condition, counting the number of useless data blocks in each storage unit, where each storage unit is divided by Storage space is obtained;
  • the useful data blocks in the storage space to be recycled are moved to other storage spaces.
  • the useless data block includes: a data block with an identifier value of 0, where the identifier value is used to indicate a number of times the data block is referenced, and the identifier value is The initial value is 1.
  • the method for setting the identifier value includes at least one of the following:
  • the identification value of the data block in the first storage unit is incremented by one
  • the first storage when the logical block address corresponding to the first storage unit points to the second storage unit The identification value of the data block in the unit is decremented by one.
  • the moving the useful data block in the storage space to be reclaimed to another storage space includes:
  • the preset condition includes at least one of the following:
  • a second aspect of the embodiments of the present invention provides a hard disk controller, including:
  • a statistics module configured to count, when the storage space meets the preset condition, the number of useless data blocks in each storage unit, where the respective storage units are obtained by pre-dividing the storage space;
  • a determining module configured to use a storage unit with a maximum number of unnecessary data blocks or greater than a preset value as a storage space to be recycled;
  • a data moving module configured to move the useful data block in the storage space to be recycled to another storage space.
  • the determining module is specifically configured to use, as the storage space to be reclaimed, the storage unit that uses the maximum number of unnecessary data blocks or is greater than a preset value.
  • the storage unit with the largest value of the data block with the value of 0 or greater than the preset value is used as the storage space to be reclaimed, and the identifier value is used to indicate the number of times the data block is referenced, and the initial value of the identifier value is 1.
  • the method further includes:
  • An identifier value setting module configured to: when the data block in the first storage unit is written into the second storage unit, the identifier value of the data block in the first storage unit is incremented by one, and/or, when Storage order When the logical block address corresponding to the element points to the second storage unit, the identification value of the data block in the first storage unit is decremented by one.
  • the data moving module in the moving the useful data block in the storage space to be reclaimed to another storage space, is specifically configured to:
  • the statistics module is specifically configured to:
  • the storage data processing method and device provided by the embodiment of the present invention, when the storage space meets the preset condition, the number of useless data blocks in each storage unit is counted, and the storage unit having the largest number or greater than the preset value is used as the storage to be recycled. Space, move the useful data from it to other storage space. Because the most unnecessary data blocks in the storage unit to be recycled, the useful data blocks are the least compared with other storage units, so the number of data blocks that need to be moved is the least, and the useful data blocks are used when the storage unit is recycled.
  • the number of moves is the least; or, because the useless data block in the storage unit to be recycled is larger than the preset value, the number of shifts can be controlled within a preset range by a preset value, and the number of times of moving the data block is minimized. It can be seen that the storage data processing method and device provided in this embodiment recovers the storage unit with the most unnecessary data block or larger than the preset value when the storage space is reclaimed, thereby reducing the number of times the data block is moved during the storage space recovery process. Reduce the wear and tear on the SSD caused by data block movement.
  • FIG. 1 is a flowchart of a method for processing stored data according to an embodiment of the present invention
  • FIG. 2 is a flowchart of still another storage data processing method according to an embodiment of the present invention.
  • FIG. 3 is a flowchart of still another storage data processing method according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a hard disk controller according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of still another hard disk controller according to an embodiment of the present invention. detailed description
  • a storage data processing method disclosed in the embodiment of the present invention, as shown in FIG. 1, includes:
  • each storage unit may be the same or different.
  • each storage unit has a capacity of 1 MB.
  • S102 A storage unit that has a maximum number of useless data blocks or greater than a preset value is used as a storage space to be reclaimed;
  • the preset value may be preset by the user according to the requirement.
  • S103 Move the useful data block in the storage space to be reclaimed to another storage space.
  • the useful data blocks in the storage space to be recycled need to be moved to other storage spaces, and for the SSD, the data block moving may cause the SSD to wear out. Thereby reducing the service life of the SSD.
  • the storage data processing method of the present embodiment determines the storage space to be reclaimed according to the number of useless data blocks in each storage unit, that is, the storage unit with the most unnecessary data blocks or the number greater than the preset value is used as the storage space to be reclaimed,
  • the number of useful data blocks in the storage unit to be recovered is the smallest, or less than the preset value. Therefore, the number of times of moving the useful data block can be minimized, or controlled within a certain range, and the number of movements can be reduced as much as possible.
  • the purpose is to minimize the wear and tear of the SSD caused by the movement.
  • Another storage data processing method disclosed in the embodiment of the present invention can be applied to an SSD system, wherein the SSD is divided into a plurality of storage units in advance, and each storage unit has the same capacity. As shown in FIG. 2, the method in this embodiment includes:
  • S201 When the proportion of the number of memory cells full of data in all the storage units is greater than a preset ratio (for example, 80%), the number of data blocks whose identifier value is 0 in each storage unit is counted;
  • the identifier value is used to indicate the number of times the data block is referenced, and the data block is referred to, the data block is used by a file or a program in the system.
  • the identification value of the data block is 0, indicating that the data block is not used by any file or program in the system, that is, the data block with the identifier value of 0 is a garbage block.
  • an identifier value of each data block in the storage unit may be recorded, and an initial value of the identifier value is 1.
  • S202 The storage unit with the largest number of data blocks with the identifier value of 0 is used as the storage space to be reclaimed;
  • S204 Move the data block with the identifier value greater than 1 or the snapshot or backup mark in the storage space to be reclaimed to the second storage unit, where the first storage unit is different from the second storage unit;
  • S205 The useless data block in the storage space to be recovered is erased.
  • the storage unit with the largest data block with the identifier value of 0 is used as the storage space to be reclaimed, and the data blocks with different identification values in the storage space to be reclaimed are moved.
  • the identification value indicates the number of times the data block is referenced, so the number of times the data block with the identification value greater than 1 is referenced is greater than the number of times the data block with the identification value of 0 is referenced. Therefore, the flag value is greater than 1.
  • the probability that the data block becomes a useless data block is smaller than the data block whose identification value is 0. Therefore, by placing the useful data in different storage units according to the number of times of reference, it is possible to place the data blocks that have similar probability of useless data blocks.
  • a storage unit when the storage unit is used as a storage space to be reclaimed, the data blocks included therein are all likely to be useless data blocks, and therefore, the moving process of the useful data blocks can be avoided, thereby reducing the SSD. abrasion.
  • Another storage data processing method disclosed in the embodiment of the present invention can be applied to an SSD system, wherein the SSD can be divided into multiple storage units, which are recorded as segments, and each storage unit (segment) has the same capacity, each The physical address of the storage unit corresponds to a logical block address (LB A) pointing to the storage unit, each segment has a unique number, and the physical address of the storage unit uses ⁇ segment number + segment number offset ⁇ indicates.
  • LB A logical block address
  • the segments of different states are marked: for example, the segment marked with full data is Fulledsegment, and the segment with no write data is marked as Idlesegment, and the segment marked with ongoing ⁇ : is GCS. Segment.
  • the method in this embodiment includes:
  • the identifier value is used to indicate the number of times the data block is referenced, and its initial value is 1.
  • the setting method of the identifier value may include any one of the following:
  • the identification value of the data block in the first storage unit is incremented by one, for example, the data block in the segment numbered 1
  • the identifier value is 1, and the data block is written into the segment numbered 2, and the data block in the segment numbered 1 has an identifier value of 2.
  • B when the logical block address corresponding to the first storage unit points to the second storage unit, the identifier value of the data block in the first storage unit is decremented by one, for example, the data block with the identifier value of 1 is stored in In the segment numbered 1, the physical address of the data block is ⁇ segment 1 + segment 1 offset ⁇ , the physical address corresponds to LBA1, and LBA1 is changed from pointing to ⁇ segment 1 + segment 1 offset ⁇ to When the physical address ⁇ segment 2+ segment 2 offset ⁇ is pointed to, the identification value of the data block of the physical address ⁇ segment 1 + segment 1 offset] becomes 0.
  • the above A or B process can be applied to the process of writing data to the SSD hard disk. For example, when writing new data to the SSD hard disk, it can be determined whether the data to be written exists in the SSD hard disk, and if so, the first one is satisfied. A condition in which a data block in a storage unit is written to a second storage unit.
  • the storage unit with the largest number of data blocks with the identifier value of 0 is used as the storage space to be reclaimed, and may be marked as GCSegment;
  • S303 Move the data block with the identifier value of 1 in the GCSegment to the first Hlesegment; the first Hlesegment may be marked as a static data storage unit (StaticDataSegment), and is used to store the data block with the identifier value of 1, when the first Hlesegment is full. After that, turn to Fulledsegment.
  • StaticDataSegment static data storage unit
  • the second Hlesegment can be marked as a dynamic data storage unit (Dynamic DataSegment) for storing data blocks with an identifier value greater than 1, or with a snapshot or backup mark. After the second Hlesegment is full, it is converted to Fulledsegmento.
  • Dynamic DataSegment Dynamic DataSegment
  • the LBA pointing to the data block does not change, and the physical address pointed by the LBA changes to satisfy the condition of the above B, so if the data block is copied After being moved to a new storage unit, the identification value of the data block in the storage space to be reclaimed is updated to zero.
  • S305 Erase the data block with the identifier value of 0 in the GCSegment.
  • the embodiment of the present invention further discloses a hard disk controller, as shown in FIG. 4, including:
  • the statistics module 401 is configured to: when the storage space meets the preset condition, count the number of useless data blocks in each storage unit, where the respective storage units are obtained by pre-dividing the storage space; and the determining module 402 is configured to use the useless data a storage unit having a maximum number of blocks or greater than a preset value as a storage space to be reclaimed;
  • the data moving module 403 is configured to move the useful data block in the storage space to be recycled to another storage space.
  • the hard disk controller of the embodiment uses the storage unit with the largest number of unnecessary data blocks or larger than the preset value as the storage space to be recovered. Therefore, the number of times of moving the useful data block can be reduced, or the useful data block can be moved. The number of times is controlled within the preset value, so that the number of times of moving the data block can be minimized, thereby avoiding the wear of the data block by the moving data block and improving the service life of the storage device.
  • the determining module may be specifically configured to: use the storage unit that has the largest number of data blocks or the storage value that is greater than the preset value as the storage space to be collected.
  • the storage unit having the largest number of data blocks or greater than the preset value is used as the storage space to be reclaimed, and the identifier value is used to indicate the number of times the data block is referenced, and the initial value of the identifier value is 1.
  • the hard disk controller in this embodiment may further include: an identifier value setting module, configured to: when the data block in the first storage unit is written into the second storage unit, in the first storage unit The identifier value of the data block is incremented by one, and/or, when the logical block address corresponding to the first storage unit points to the second storage unit, the identifier value of the data block in the first storage unit is decremented by one.
  • an identifier value setting module configured to: when the data block in the first storage unit is written into the second storage unit, in the first storage unit The identifier value of the data block is incremented by one, and/or, when the logical block address corresponding to the first storage unit points to the second storage unit, the identifier value of the data block in the first storage unit is decremented by one.
  • the data moving module in the moving the useful data block in the storage space to be reclaimed to another storage space, is specifically configured to: in the storage space to be reclaimed The data block with the identifier value of 1 is moved to the first storage unit, and the data block with the identifier value greater than 1 or the snapshot or backup mark in the storage space to be reclaimed is moved to the second storage unit, The first storage unit is different from the second storage unit, and the identifier value is used to indicate the number of times the data block is referenced, and the initial value of the identifier value is 1.
  • the statistic module is specifically configured to: when the remaining storage space in the storage space is less than a preset threshold, and/or, the proportion of the number of storage units full of data in all storage units is greater than a preset ratio , Count the number of useless data blocks in each storage unit.
  • a hard disk controller as shown in FIG. 5, including:
  • the processor 501 is configured to: when the storage space meets the preset condition, count the number of useless data blocks in each storage unit, where the respective storage units are obtained by pre-dividing the storage space, and the number of useless data blocks is maximized or greater than
  • the storage unit of the preset value is used as the storage space to be recycled, and the useful data block in the storage space to be recycled is moved to another storage space;
  • a memory 502 configured to store a program running in the processor and data generated during the running of the program
  • the processor 501 and the memory 502 communicate over a data bus 503.
  • the hard disk controller described in this embodiment can minimize the number of times the useful data block is moved, thereby avoiding wear of the hard disk caused by the moving of the data block.
  • the processor in the embodiment is used to: use the data unit with the identifier value of 0 as the storage unit to be reclaimed.
  • the storage unit with the largest number or greater than the preset value is used as the storage space to be reclaimed, and the identifier value is used to indicate the number of times the data block is referenced, and the initial value of the identifier value is 1.
  • the processor in this embodiment is further configured to: when the data block in the first storage unit is written into the second storage unit, the identifier value of the data block in the first storage unit is added And, or, when the logical block address corresponding to the first storage unit points to the second storage unit, the identifier value of the data block in the first storage unit is decremented by one.
  • the processor is specifically configured to: set an identifier value of the storage space to be reclaimed to 1 Moving the data block to the first storage unit, and moving the data block with the snapshot value or the backup mark in the storage space to be reclaimed to the second storage unit, the first storage unit and the storage unit Different from the second storage unit, the identifier value is used to indicate the number of times the data block is referenced, The initial value of the identity value is 1.
  • the processor is specifically configured to: when the remaining storage space in the storage space is less than a preset threshold, and/or The number of memory cells filled with data counts the number of useless data blocks in each memory cell when the proportion of all memory cells is greater than a preset ratio.
  • the functions described in the method of the present embodiment can be stored in a computing device readable storage medium if implemented in the form of a software functional unit and sold or used as a standalone product. Based on such understanding, a portion of the embodiments of the present invention that contributes to the prior art or a portion of the technical solution may be embodied in the form of a software product stored in a storage medium, including a plurality of instructions for causing a
  • the computing device (which may be a personal computer, server, mobile computing device, or network device, etc.) performs all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and the like, which can store program codes. .

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供的存储数据处理方法及装置,当存储空间满足预设条件时,统计各个存储单元中的无用数据块的数量,将数量最大或大于预设值的存储单元作为待回收的存储空间,将其中的有用数据搬块移到其它存储空间。因为待回收的存储单元中的无用数据块最多,所以,其中的有用数据块与其它存储单元相比最少,因此,需要进行搬移的数据块的数量最少,在回收此存储单元时,有用数据块搬移的次数最少;或者,因为待回收的存储单元中的无用数据块大于预设值,所以,能够通过预设值将搬移次数控制在预设范围内,尽量减少数据块的搬移次数。因此能够减少存储空间回收过程中的数据块的搬移次数,减轻数据块搬移对SSD的磨损。

Description

一种存储数据处理方法 ^置
技术领域
本发明涉及通信领域, 尤其涉及一种存储数据处理方法及装置。 背景技术
固态硬盘( Solid State Device , SSD )在使用的过程中, 需要进行存储空 间的回收, 即将写满数据的存储空间中的无用数据块删除,将其中的有用数据 块搬移到其它存储空间, 而有用数据块的搬移会导致固态硬盘的磨损。 发明内容
有鉴于此, 本发明实施例提供了一种存储数据处理方法及装置, 目的在于 解决有用数据块的搬移而导致的 SSD磨损的问题。
为了实现上述目的, 本发明实施例提供了以下技术方案:
本发明实施例的第一方面提供了一种存储数据处理方法, 包括: 当存储空间满足预设条件时, 统计各个存储单元中的无用数据块的数量, 所述各个存储单元通过预先划分所述存储空间获得;
将无用数据块的数量最大或大于预设值的存储单元作为待回收的存储空 间;
将所述待回收的存储空间中的有用数据块搬移到其它存储空间。
在本发明实施例的第一方面的第一种实现方式中, 所述无用数据块包括: 标识值为 0的数据块, 所述标识值用于表示数据块被引用的次数, 所述标 识值的初始值为 1。
在本发明实施例的第一方面的第二种实现方式中,所述标识值的设置方法 至少包括以下一项:
当第一存储单元中的数据块被写入第二存储单元时,所述第一存储单元中 的所述数据块的标识值加一;
当第一存储单元对应的逻辑区块地址指向第二存储单元时,所述第一存储 单元中的数据块的标识值减一。
在本发明实施例的第一方面的第三种实现方式中,所述将所述待回收的存 储空间中的有用数据块搬移到其它存储空间包括:
将所述待回收的存储空间中的标识值为 1的数据块搬移到第一存储单元; 将所述待回收的存储空间中的标识值大于 1、 或者带有快照或备份标记的 数据块搬移到第二存储单元, 所述第一存储单元与所述第二存储单元不同, 所 述标识值用于表示数据块被引用的次数, 所述标识值的初始值为 1。
在本发明实施例的第一方面的第四种实现方式中,所述预设条件至少包括 以下一项:
存储空间中的剩余存储空间 d、于预设阔值;
写满数据的存储单元数量在所有存储单元中所占的比例大于预设比值。 本发明实施例的第二方面提供了一种硬盘控制器, 包括:
统计模块, 用于当存储空间满足预设条件时, 统计各个存储单元中的无用 数据块的数量, 所述各个存储单元通过预先划分所述存储空间获得;
确定模块,用于将无用数据块的数量最大或大于预设值的存储单元作为待 回收的存储空间;
数据搬移模块,用于将所述待回收的存储空间中的有用数据块搬移到其它 存储空间。
在本发明实施例的第二方面的第一种实现方式中,在所述将无用数据块的 数量最大或大于预设值的存储单元作为待回收的存储空间方面,所述确定模块 具体用于:
将标识值为 0 的数据块的数量最大或大于预设值的存储单元作为待回收 的存储空间, 所述标识值用于表示数据块被引用的次数, 所述标识值的初始值 为 1。
在本发明实施例的第二方面的第二种实现方式中, 还包括:
标识值设置模块, 用于当第一存储单元中的数据块被写入第二存储单元 时, 所述第一存储单元中的所述数据块的标识值加一, 和 /或, 当第一存储单 元对应的逻辑区块地址指向第二存储单元时,所述第一存储单元中的数据块的 标识值减一。
在本发明实施例的第二方面的第三种实现方式中,在所述将所述待回收的 存储空间中的有用数据块搬移到其它存储空间方面,所述数据搬移模块具体用 于:
将所述待回收的存储空间中的标识值为 1的数据块搬移到第一存储单元; 将所述待回收的存储空间中的标识值大于 1、 或者带有快照或备份标记的 数据块搬移到第二存储单元, 所述第一存储单元与所述第二存储单元不同, 所 述标识值用于表示数据块被引用的次数, 所述标识值的初始值为 1。
在本发明实施例的第二方面的第四种实现方式中,在所述当存储空间满足 预设条件时, 统计各个存储单元中的无用数据块的数量方面, 所述统计模块具 体用于:
当存储空间中的剩余存储空间小于预设阔值, 和 /或, 写满数据的存储单 元数量在所有存储单元中所占的比例大于预设比值时,统计各个存储单元中的 无用数据块的数量。
本发明实施例提供的存储数据处理方法及装置,当存储空间满足预设条件 时, 统计各个存储单元中的无用数据块的数量,将数量最大或大于预设值的存 储单元作为待回收的存储空间, 将其中的有用数据搬块移到其它存储空间。 因 为待回收的存储单元中的无用数据块最多, 所以, 其中的有用数据块与其它存 储单元相比最少, 因此, 需要进行搬移的数据块的数量最少, 在回收此存储单 元时, 有用数据块搬移的次数最少; 或者, 因为待回收的存储单元中的无用数 据块大于预设值, 所以, 能够通过预设值将搬移次数控制在预设范围内, 尽量 减少数据块的搬移次数。 可见, 本实施例提供的存储数据处理方法及装置, 在 回收存储空间时,先回收无用数据块最多或大于预设值的存储单元, 因此能够 减少存储空间回收过程中的数据块的搬移次数, 减轻数据块搬移对 SSD 的磨 损。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲, 在不付 出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例公开的一种存储数据处理方法的流程图;
图 2为本发明实施例公开的又一种存储数据处理方法的流程图;
图 3为本发明实施例公开的又一种存储数据处理方法的流程图;
图 4为本发明实施例公开的一种硬盘控制器的结构示意图;
图 5为本发明实施例公开的又一种硬盘控制器的结构示意图。 具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是 全部的实施例。基于本发明中的实施例, 本领域普通技术人员在没有做出创造 性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
本发明实施例公开的一种存储数据处理方法, 如图 1所示, 包括:
S101: 当存储空间满足预设条件时,统计各个存储单元中的无用数据块的 数量, 所述各个存储单元通过预先划分所述存储空间获得;
可选地, 各个存储单元的容量大小可以相同, 也可以不同, 例如, 各个存 储单元的容量均为 1MB。
S102:将无用数据块的数量最大或大于预设值的存储单元作为待回收的存 储空间;
其中, 所述预设值可以由用户依据需求预先设定。
S103: 将所述待回收的存储空间中的有用数据块搬移到其它存储空间。 通常, 在进行存储空间的回收时, 需要将待回收的存储空间中的有用数据 块搬移到其它存储空间中,而对于 SSD而言,数据块搬移会导致 SSD的磨损, 从而降低 SSD的使用寿命。
本实施例所述的存储数据处理方法,依据各个存储单元中无用数据块的数 量确定待回收的存储空间,即将无用数据块最多或数量大于预设值的存储单元 作为待回收的存储空间,因此,待回收的存储单元中的有用数据块的数量最小, 或者小于预设值, 因此, 能够将搬移有用数据块的次数降到最小, 或者控制在 一定范围内, 实现尽可能地降低搬移的次数的目的,尽量减少因搬移而导致的 SSD的磨损。 本发明实施例公开的又一种存储数据处理方法, 可以应用于 SSD系统, 其中, SSD预先被划分为多个存储单元, 每个存储单元的容量大小相同。 如图 2所示, 本实施例所述方法包括:
S201:当写满数据的存储单元的数量在所有存储单元中所占的比例大于预 设比值(例如 80% ) 时, 统计各个存储单元中的标识值为 0的数据块的数量; 本实施例中, 所述标识值用于表示数据块被引用的次数,数据块被引用是 指, 数据块被系统中的文件或程序使用。 数据块的标识值为 0, 说明数据块没 有被系统中任何文件或程序使用, 即标识值为 0的数据块为无用数据块。
可选地,每个存储单元各自的描述信息中, 可以记录此存储单元中的各个 数据块的标识值, 所述标识值的初始值为 1。
S202:将标识值为 0的数据块的数量最大的存储单元作为待回收的存储空 间;
S203:将所述待回收的存储空间中的标识值为 1的数据块搬移到第一存储 单元;
S204: 将所述待回收的存储空间中的标识值大于 1、 或者带有快照或备份 标记的数据块搬移到第二存储单元,其中,第一存储单元与第二存储单元不同; S205: 将所述待回收的存储空间中的无用数据块擦除。
本实施例所述的存储数据处理方法,将标识值为 0的数据块最多的存储单 元作为待回收的存储空间,并将待回收的存储空间中的标识值不同的数据块搬 移到不同的存储单元, 因为标识值表示数据块被引用的次数, 所以, 标识值大 于 1的数据块被引用的次数大于标识值为 0的数据块被引用的次数, 因此, 标 志值大于 1的数据块变为无用数据块的概率小于标识值为 0的数据块, 所以, 按照被引用的次数将有用数据放置在不同的存储单元,能够将变为无用数据块 概率相近的数据块集中放置在一个存储单元中,当此存储单元作为待回收存储 空间时, 其中包括的数据块均为无用数据块的可能性较大, 因此, 能够避免有 用数据块的搬移过程, 从而减小对 SSD的磨损。 本发明实施例公开的又一种存储数据处理方法, 可以应用于 SSD系统, 其中, SSD可以被划分为多个存储单元,记为 segment,每个存储单元( segment ) 的容量大小相同,每个存储单元的物理地址与指向所述存储单元的逻辑区块地 址 (Logical Block Address, LB A)相对应, 每个 segment具有唯一的编号, 存储 单元的物理地址使用 { segment编号 + segment编号内偏移 }表示。
本实施例中,对不同状态的 segment进行标记:例如,将写满数据的 segment 标己为 Fulledsegment, 寻没有写人数据 segment标己为 Idlesegment, ^寻正在 进行回 ^:的 segment标己为 GCS segment。
如图 3所示, 本实施例所述方法包括:
S301 : 当存储空间中的剩余存储空间小于预设阔值时, 统计每个 Fulledsegment中的标识值为 0的数据块的数量;
本实施例中, 标识值用于表示数据块被引用的次数, 其初始值为 1。 所述 标识值的设置方法可以包括以下任意一项:
A: 当第一存储单元中的数据块被写入第二存储单元时, 所述第一存储单 元中的所述数据块的标识值加一, 例如, 编号为 1的 segment中的数据块的标 识值为 1, 所述数据块又被写入编号为 2的 segment, 则编号为 1的 segment 中的数据块的标识值为 2。
或者, B: 当第一存储单元对应的逻辑区块地址指向第二存储单元时, 所 述第一存储单元中的数据块的标识值减一, 例如, 标识值为 1的数据块存储在 编号为 1的 segment中, 所述数据块的物理地址为 { segment 1+ segment 1内偏 移}, 所述物理地址与 LBA1对应, 当 LBA1从指向 { segment 1+ segment 1内偏 移 }变更为指向物理地址 { segment2+ segment2 内偏移 }时, 物理地址 { segment 1+ segment 1内偏移 }的数据块的标识值变为 0。
上述 A或 B过程可以应用于向 SSD硬盘写入数据的过程中,例如向 SSD 硬盘写入新的数据时, 可以判断待写入的数据是否存在于 SSD硬盘中, 如果 是, 则满足第一存储单元中的数据块被写入第二存储单元的条件。
S302:将标识值为 0的数据块的数量最大的存储单元作为待回收的存储空 间, 可以标记为 GCSegment;
S303: 将 GCSegment中标识值为 1的数据块搬移到第一 Hlesegment中; 第一 Hlesegment可以标记为静态数据存储单元 ( StaticDataSegment ), 用 于存放标识值为 1的数据块, 当第一 Hlesegment写满后,转为 Fulledsegment。
S304: 将 GCSegment中的标识值大于 1、 或者带有快照或备份标记的数 据块搬移到第二 Hlesegment中;
第二 Hlesegment可以标记为动态数据存储单元 ( DynamicDataSegment ), 用于存放标识值大于 1、 或者带有快照或备份标记的数据块, 第二 Hlesegment 写满后, 转为 Fulledsegmento
需要说明的是, 当数据块被搬移后, 指向所述数据块的 LBA不变, 则所 述 LBA指向的物理地址发生变化, 满足上述 B的条件, 所以, 如果所述数据 块以复制的方式被搬移到新的存储单元,则待回收存储空间中的所述数据块的 标识值更新为 0。
S305: 将 GCSegment中的标识值为 0的数据块擦除。
本实施例所述的方法, 可以在向 SSD硬盘写入数据块时, 设置已存储在 SSD硬盘中的数据块的标识值,从而依据标识值优先回收无用数据块最多的存 储单元, 并将引用次数相近的有用数据块集中放置,从而减少在回收过程中对 有用数据块的搬移次数, 降低数据搬移对 SSD硬盘的磨损。 与上述方法实施例相对应地, 本发明实施例还公开了一种硬盘控制器, 如 图 4所示, 包括:
统计模块 401, 用于当存储空间满足预设条件时, 统计各个存储单元中的 无用数据块的数量, 所述各个存储单元通过预先划分所述存储空间获得; 确定模块 402, 用于将无用数据块的数量最大或大于预设值的存储单元作 为待回收的存储空间;
数据搬移模块 403, 用于将所述待回收的存储空间中的有用数据块搬移到 其它存储空间。
本实施例所述的硬盘控制器,将无用数据块数量最大或大于预设值的存储 单元作为待回收的存储空间, 因此, 能够减小有用数据块的搬移次数, 或者将 有用数据块的搬移次数控制在预设值内, 从而能够尽量减少数据块的搬移次 数, 从而避免搬移数据块对存储设备造成的磨损, 提高存储设备的使用寿命。
可选地, 本实施例中, 在所述将无用数据块的数量最大或大于预设值的存 储单元作为待回收的存储空间方面, 所述确定模块可以具体用于: 将标识值为 0的数据块的数量最大或大于预设值的存储单元作为待回收的存储空间, 所述 标识值用于表示数据块被引用的次数, 所述标识值的初始值为 1。
可选地, 本实施例所述的硬盘控制器, 还可以包括: 标识值设置模块, 用 于当第一存储单元中的数据块被写入第二存储单元时,所述第一存储单元中的 所述数据块的标识值加一, 和 /或, 当第一存储单元对应的逻辑区块地址指向 第二存储单元时, 所述第一存储单元中的数据块的标识值减一。
可选地, 本实施例中, 在所述将所述待回收的存储空间中的有用数据块搬 移到其它存储空间方面, 所述数据搬移模块具体用于: 将所述待回收的存储空 间中的标识值为 1的数据块搬移到第一存储单元,以及将所述待回收的存储空 间中的标识值大于 1、 或者带有快照或备份标记的数据块搬移到第二存储单 元, 所述第一存储单元与所述第二存储单元不同, 所述标识值用于表示数据块 被引用的次数, 所述标识值的初始值为 1。
在所述当存储空间满足预设条件时,统计各个存储单元中的无用数据块的 数量方面, 所述统计模块具体用于: 当存储空间中的剩余存储空间小于预设阔 值, 和 /或, 写满数据的存储单元数量在所有存储单元中所占的比例大于预设 比值时, 统计各个存储单元中的无用数据块的数量。 本发明实施例还公开了另一种硬盘控制器, 如图 5所示, 包括:
处理器 501, 用于当存储空间满足预设条件时, 统计各个存储单元中的无 用数据块的数量, 所述各个存储单元通过预先划分所述存储空间获得, 将无用 数据块的数量最大或大于预设值的存储单元作为待回收的存储空间,并将所述 待回收的存储空间中的有用数据块搬移到其它存储空间;
存储器 502, 用于存储所述处理器中运行的程序以及在所述程序的运行过 程中产生的数据;
所述处理器 501和所述存储器 502通过数据总线 503进行通信。
本实施例所述的硬盘控制器, 能够尽量减少有用数据块的搬移次数,从而 避免因数据块的搬移而导致的硬盘磨损。
可选地,在所述将无用数据块的数量最大或大于预设值的存储单元作为待 回收的存储空间方面, 本实施例所述处理器具体用于: 将标识值为 0的数据块 的数量最大或大于预设值的存储单元作为待回收的存储空间,所述标识值用于 表示数据块被引用的次数, 所述标识值的初始值为 1。
可选地, 本实施例中的处理器还可以用于: 当第一存储单元中的数据块被 写入第二存储单元时, 所述第一存储单元中的所述数据块的标识值加一, 和 / 或, 当第一存储单元对应的逻辑区块地址指向第二存储单元时, 所述第一存储 单元中的数据块的标识值减一。
可选地,在所述将所述待回收的存储空间中的有用数据块搬移到其它存储 空间方面, 所述处理器具体用于: 将所述待回收的存储空间中的标识值为 1 的数据块搬移到第一存储单元, 并将所述待回收的存储空间中的标识值大于 1、 或者带有快照或备份标记的数据块搬移到第二存储单元, 所述第一存储单 元与所述第二存储单元不同, 所述标识值用于表示数据块被引用的次数, 所述 标识值的初始值为 1。
在所述当存储空间满足预设条件时,统计各个存储单元中的无用数据块的 数量方面,所述处理器具体用于:当存储空间中的剩余存储空间小于预设阔值, 和 /或, 写满数据的存储单元数量在所有存储单元中所占的比例大于预设比值 时, 统计各个存储单元中的无用数据块的数量。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的 产品销售或使用时, 可以存储在一个计算设备可读取存储介质中。基于这样的 理解,本发明实施例对现有技术做出贡献的部分或者该技术方案的部分可以以 软件产品的形式体现出来, 该软件产品存储在一个存储介质中, 包括若干指令 用以使得一台计算设备(可以是个人计算机, 服务器, 移动计算设备或者网络 设备等)执行本发明各个实施例所述方法的全部或部分步骤。 而前述的存储介 质包括: U盘、 移动硬盘、 只读存储器(ROM, Read-Only Memory ), 随机存 取存储器(RAM, Random Access Memory ) , 磁碟或者光盘等各种可以存储程 序代码的介质。
本说明书中各个实施例釆用递进的方式描述,每个实施例重点说明的都是 与其它实施例的不同之处, 各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本 发明。 对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见 的, 本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下, 在 其它实施例中实现。 因此, 本发明将不会被限制于本文所示的这些实施例, 而 是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims

1、 一种存储数据处理方法, 其特征在于, 包括:
当存储空间满足预设条件时, 统计各个存储单元中的无用数据块的数量, 所述各个存储单元通过预先划分所述存储空间获得;
将无用数据块的数量最大或大于预设值的存储单元作为待回收的存储空 间;
将所述待回收的存储空间中的有用数据块搬移到其它存储空间。
2、 根据权利要求 1所述的方法, 其特征在于, 所述无用数据块包括: 标识值为 0的数据块, 所述标识值用于表示数据块被引用的次数, 所述标 识值的初始值为 1。
3、 根据权利要求 2所述的方法, 其特征在于, 所述标识值的设置方法至 少包括以下一项:
当第一存储单元中的数据块被写入第二存储单元时,所述第一存储单元中 的所述数据块的标识值加一;
当第一存储单元对应的逻辑区块地址指向第二存储单元时,所述第一存储 单元中的数据块的标识值减一。
4、 根据权利要求 1至 3任一项所述的方法, 其特征在于, 所述将所述待 回收的存储空间中的有用数据块搬移到其它存储空间包括:
将所述待回收的存储空间中的标识值为 1的数据块搬移到第一存储单元; 将所述待回收的存储空间中的标识值大于 1、 或者带有快照或备份标记的 数据块搬移到第二存储单元, 所述第一存储单元与所述第二存储单元不同, 所 述标识值用于表示数据块被引用的次数, 所述标识值的初始值为 1。
5、 根据权利要求 1至 3任一项所述的方法, 其特征在于, 所述预设条件 至少包括以下一项:
存储空间中的剩余存储空间 d、于预设阔值;
写满数据的存储单元数量在所有存储单元中所占的比例大于预设比值。
6、 一种硬盘控制器, 其特征在于, 包括:
统计模块, 用于当存储空间满足预设条件时, 统计各个存储单元中的无用 数据块的数量, 所述各个存储单元通过预先划分所述存储空间获得; 确定模块,用于将无用数据块的数量最大或大于预设值的存储单元作为待 回收的存储空间;
数据搬移模块,用于将所述待回收的存储空间中的有用数据块搬移到其它 存储空间。
7、 根据权利要求 6所述的硬盘控制器, 其特征在于, 在所述将无用数据 块的数量最大或大于预设值的存储单元作为待回收的存储空间方面,所述确定 模块具体用于:
将标识值为 0 的数据块的数量最大或大于预设值的存储单元作为待回收 的存储空间, 所述标识值用于表示数据块被引用的次数, 所述标识值的初始值 为 1。
8、 根据权利要求 7所述的硬盘控制器, 其特征在于, 还包括:
标识值设置模块, 用于当第一存储单元中的数据块被写入第二存储单元 时, 所述第一存储单元中的所述数据块的标识值加一, 和 /或, 当第一存储单 元对应的逻辑区块地址指向第二存储单元时,所述第一存储单元中的数据块的 标识值减一。
9、 根据权利要求 6至 8任一项所述的硬盘控制器, 其特征在于, 在所述 将所述待回收的存储空间中的有用数据块搬移到其它存储空间方面,所述数据 搬移模块具体用于:
将所述待回收的存储空间中的标识值为 1的数据块搬移到第一存储单元; 将所述待回收的存储空间中的标识值大于 1、 或者带有快照或备份标记的 数据块搬移到第二存储单元, 所述第一存储单元与所述第二存储单元不同, 所 述标识值用于表示数据块被引用的次数, 所述标识值的初始值为 1。
10、 根据权利要求 6至 8任一项所述的硬盘控制器, 其特征在于, 在所述 当存储空间满足预设条件时, 统计各个存储单元中的无用数据块的数量方面, 所述统计模块具体用于:
当存储空间中的剩余存储空间小于预设阔值, 和 /或, 写满数据的存储单 元数量在所有存储单元中所占的比例大于预设比值时,统计各个存储单元中的 无用数据块的数量。
PCT/CN2014/074811 2013-10-23 2014-04-04 一种存储数据处理方法及装置 WO2015058493A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310505056.8A CN103577336B (zh) 2013-10-23 2013-10-23 一种存储数据处理方法及装置
CN201310505056.8 2013-10-23

Publications (1)

Publication Number Publication Date
WO2015058493A1 true WO2015058493A1 (zh) 2015-04-30

Family

ID=50049159

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/074811 WO2015058493A1 (zh) 2013-10-23 2014-04-04 一种存储数据处理方法及装置

Country Status (2)

Country Link
CN (2) CN103577336B (zh)
WO (1) WO2015058493A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577336B (zh) * 2013-10-23 2017-03-08 华为技术有限公司 一种存储数据处理方法及装置
CN105980992B (zh) * 2014-12-05 2018-02-13 华为技术有限公司 一种存储系统、识别数据块稳定性的方法以及装置
CN105843746A (zh) * 2015-01-12 2016-08-10 广明光电股份有限公司 固态硬盘的写入方法
CN105138282A (zh) * 2015-08-06 2015-12-09 上海七牛信息技术有限公司 一种存储空间回收的方法及存储系统
CN114546293A (zh) * 2017-09-22 2022-05-27 慧荣科技股份有限公司 快闪存储器的数据内部搬移方法以及使用该方法的装置
CN108255742A (zh) * 2017-11-29 2018-07-06 深圳忆联信息系统有限公司 一种大容量固态硬盘映射方法
CN109947353B (zh) * 2017-12-20 2021-03-09 浙江宇视科技有限公司 存储管理方法、固态硬盘及可读存储介质
CN108664413A (zh) * 2018-05-23 2018-10-16 中国联合网络通信集团有限公司 磁盘清理方法和磁盘清理装置
CN108984124B (zh) * 2018-07-13 2022-03-25 深圳忆联信息系统有限公司 减少写放大的方法、装置、计算机设备及存储介质
CN109690485B (zh) * 2018-08-24 2023-08-18 袁振南 基于数据结构的垃圾回收方法、计算机及存储介质
CN111078137B (zh) * 2019-11-07 2021-07-06 深圳市金泰克半导体有限公司 清理存储空间的方法
CN113126916B (zh) * 2021-03-29 2024-06-25 广州安凯微电子股份有限公司 一种异常掉电后的数据修复方法及装置
CN116880776B (zh) * 2023-09-06 2023-11-17 上海凯翔信息科技有限公司 一种存储数据的数据处理系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110058A (zh) * 2006-07-20 2008-01-23 何纯淳 闪速存储器的回收方法
CN101944068A (zh) * 2010-08-23 2011-01-12 中国科学技术大学苏州研究院 一种共享高速缓存的性能优化方法
CN102073464A (zh) * 2011-01-14 2011-05-25 南开大学 一种按需分配增量卷的创建方法
CN102262512A (zh) * 2011-07-21 2011-11-30 浪潮(北京)电子信息产业有限公司 一种实现磁盘阵列缓存分区管理的系统、装置及方法
CN103577336A (zh) * 2013-10-23 2014-02-12 华为技术有限公司 一种存储数据处理方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7567188B1 (en) * 2008-04-10 2009-07-28 International Business Machines Corporation Policy based tiered data deduplication strategy
US8762621B2 (en) * 2008-10-28 2014-06-24 Micron Technology, Inc. Logical unit operation
CN101930345B (zh) * 2010-08-24 2012-05-02 苏州国芯科技有限公司 一种基于块访问的闪存读写方法
CN102436418A (zh) * 2010-09-29 2012-05-02 富泰华工业(深圳)有限公司 将存储器恢复为出厂状态的电子装置及方法
US20120159098A1 (en) * 2010-12-17 2012-06-21 Microsoft Corporation Garbage collection and hotspots relief for a data deduplication chunk store

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110058A (zh) * 2006-07-20 2008-01-23 何纯淳 闪速存储器的回收方法
CN101944068A (zh) * 2010-08-23 2011-01-12 中国科学技术大学苏州研究院 一种共享高速缓存的性能优化方法
CN102073464A (zh) * 2011-01-14 2011-05-25 南开大学 一种按需分配增量卷的创建方法
CN102262512A (zh) * 2011-07-21 2011-11-30 浪潮(北京)电子信息产业有限公司 一种实现磁盘阵列缓存分区管理的系统、装置及方法
CN103577336A (zh) * 2013-10-23 2014-02-12 华为技术有限公司 一种存储数据处理方法及装置

Also Published As

Publication number Publication date
CN103577336B (zh) 2017-03-08
CN106775496B (zh) 2020-01-21
CN103577336A (zh) 2014-02-12
CN106775496A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
WO2015058493A1 (zh) 一种存储数据处理方法及装置
CN109656486B (zh) 固态硬盘的配置方法、数据存储方法、固态硬盘和存储控制器
TWI632457B (zh) 用於資料儲存裝置的損耗平均方法
CN106681934B (zh) 一种存储设备垃圾回收的方法及设备
KR100725410B1 (ko) 전원 상태에 따라 비휘발성 메모리의 블록 회수를 수행하는장치 및 그 방법
JP2014522537A (ja) 使用によるフラッシュ・ベースの記憶装置へのデータ配置の管理
CN109496300B (zh) 一种存储介质垃圾回收方法、存储介质和程序产品
CN106406759B (zh) 一种数据存储方法及装置
US10303374B2 (en) Data check method and storage system
WO2014127684A1 (zh) 内存回收方法及装置
CN105607867B (zh) 主-从重复删除储存系统及其方法和计算机可读储存介质
WO2017173623A1 (zh) 用于处理存储设备中分条的方法和存储设备
US9213634B2 (en) Efficient reuse of segments in nonoverwrite storage systems
CN108205473B (zh) 内存处理方法及装置、计算机装置及计算机可读存储介质
CN107665098B (zh) 信息处理方法、存储设备及计算机存储介质
TWI498735B (zh) 由主機至儲存裝置之刪除資料的暗示
WO2017092596A1 (zh) 处理写请求的方法和移动终端
CN109491606B (zh) 一种全闪存储空间管理方法、系统、设备及计算机介质
CN109086141B (zh) 内存管理方法和装置以及计算机可读存储介质
CN105493080A (zh) 基于上下文感知的重复数据删除的方法和装置
KR101473837B1 (ko) Ssd 기반 스토리지 시스템에서 입출력 성능 향상을 위한 ssd 스토리지의 무효데이터 재활용 방법
CN108563586A (zh) 一种分离固态盘中垃圾回收数据与用户数据的方法
CN108153481B (zh) 一种nand的存储块回收方法和装置
US20200104384A1 (en) Systems and methods for continuous trim commands for memory systems
CN109960463B (zh) 一种磁盘管理方法、装置及存储介质

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: 14855264

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14855264

Country of ref document: EP

Kind code of ref document: A1