CN106649132A - 一种固态硬盘垃圾回收的方法 - Google Patents
一种固态硬盘垃圾回收的方法 Download PDFInfo
- Publication number
- CN106649132A CN106649132A CN201611246461.2A CN201611246461A CN106649132A CN 106649132 A CN106649132 A CN 106649132A CN 201611246461 A CN201611246461 A CN 201611246461A CN 106649132 A CN106649132 A CN 106649132A
- Authority
- CN
- China
- Prior art keywords
- block
- data
- page
- directly
- mark table
- 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
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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
Abstract
本发明公开了一种固态硬盘垃圾回收的方法,其特征在于在每个block中预留一个固定页用于存储数据有效性标识表,所述数据有效性标识表记录了该block中所有的有效数据页的逻辑地址,当该block需要垃圾回收时,回收程序直接读取该block的数据有效性标识表,根据数据有效性标识表获取到该block中各个页的逻辑地址,并通过逻辑地址直接判断出哪些页的数据有效,回收程序直接只读写并搬移有效的数据页到新的block中,所有有效数据页数据完成后,擦除该block,完成该block的回收。去除了固态存储设备垃圾回收过程无效物理页的读取的浪费,从而提高固态存储设备垃圾回收的效率,提升固态存储设备性能。
Description
技术领域
本发明涉及信息存储领域,尤其涉及一种固态硬盘垃圾回收的方法。
背景技术
固态存储设备在使用过程中一定会发生部分数据失效的情况,存在有效数据和无效数据共存的情况,累积多了必然会造成空间浪费。因此垃圾回收是存储设备必须要有的机制,现有技术中垃圾回收过程通常是:读取待回收块的每个页,获取页的带外数据中存储的逻辑地址,根据逻辑地址判断该物理页包含的数据是否有效,如果有效,则将该物理页的数据搬移到新的块中;当这个块中所有的有效数据页都搬移完成后,就可将该块进行擦除操作,完成该块的回收工作。
图1是一般的垃圾回收过程示例,在一般的垃圾回收中,由于在回收一个block前,我们无法知道该block中每个page的逻辑地址信息,因此也并不知道待回收block中的哪些page是有效的,所以我们需要读取该block的所有page,每读取一个page后,根据其meta中记录的逻辑地址,确认该page包含的数据是否有效,假设该block中只有Meta为1、8、10等是有效数据,而Meta为99、134等数据为无效数据,要实现数据回收,回收流程需要将所有的page的数据都读取出才能完整的判断其中哪些数据为有效数据,完整的将所有有效数据搬移到新的block中,才能将该block擦除实现回收。由于meta数据分布在各个Page中,要实现meta数据的读取,就要对整个页数据进行读取并进行校验,整个读取过程耗时较大,因此存在许多无效数据读取操作,造成整体的数据垃圾回收过程耗时较长的问题。
发明内容
针对以上缺陷,本发明目的在于如何避免固态存储设备垃圾回收过程无效物理页的读取,从而提高固态存储设备垃圾回收的效率,提升固态存储设备性能。
为了实现上述目的,本发明提供了一种固态硬盘垃圾回收的方法,其特征在于在每个block中预留一个固定页用于存储数据有效性标识表,所述数据有效性标识表记录了该block中所有的有效数据页的逻辑地址,当该block需要垃圾回收时,回收程序直接读取该block的数据有效性标识表,根据数据有效性标识表获取到该block中各个页的逻辑地址,并通过逻辑地址直接判断出哪些页的数据有效,回收程序直接只读写并搬移有效的数据页到新的block中,所有有效数据页数据完成后,擦除该block,完成该block的回收。
所述的固态硬盘垃圾回收的方法,其特征在于所述的存储数据有效性标识表中直接按各个块的页序号顺序存储各个页数据的有效性状态,当该block需要垃圾回收时,回收程序直接读取该block的数据有效性标识表,根据数据有效性标识表可直接获得数据有效的页序号,回收程序直接只读写并搬移有效的数据页到新的block中,所有有效数据页数据完成后,擦除该block,完成该block的回收。
本发明通过增加数据有效性标识表,去除了固态存储设备垃圾回收过程无效物理页的读取的浪费,从而提高固态存储设备垃圾回收的效率,提升固态存储设备性能。
附图说明
图1是一般的垃圾回收过程示例;
图2是增加数据有效性标识表后的块数据存储结构。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图2是增加数据有效性标识表后的块数据存储结构,现有技术的块数据存储一般在每个页中的数据都包括标签Meta和该页的数据,一般标签一般由该页的逻辑地址构成,本发明在每个块中,固定分配一个页作为图2是数据有效性标识表用于存储本块的所有页的Meta数据,当该块中的任何一个数据页的M eta数据发生变化了,则同步更新到该数据有效性标识表中;也可以直接在数据有效性标识表中存储本块中各个页的数据有效性标识。
当该block需要垃圾回收时,回收程序直接读取该block的数据有效性标识表,根据数据有效性标识表获取到该block中所有页的逻辑地址,并通过逻辑地址直接判断出哪些页的数据还依然有效,回收程序直接只读写并搬移有效的数据页到新的block中,所有有效数据页数据完成后,擦除该block,完成该block的回收。而不会需要额外的去读取所有的页后才能判断出哪些页数据是有效,哪些页数据是无效的。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
Claims (2)
1.一种固态硬盘垃圾回收的方法,其特征在于在每个block中预留一个固定页用于存储数据有效性标识表,所述数据有效性标识表记录了该block中所有的有效数据页的逻辑地址,当该block需要垃圾回收时,回收程序直接读取该block的数据有效性标识表,根据数据有效性标识表获取到该block中各个页的逻辑地址,并通过逻辑地址直接判断出哪些页的数据有效,回收程序直接只读写并搬移有效的数据页到新的block中,所有有效数据页数据完成后,擦除该block,完成该block的回收。
2.根据权利要求1所述的固态硬盘垃圾回收的方法,其特征在于所述的存储数据有效性标识表中直接按各个块的页序号顺序存储各个页数据的有效性状态,当该block需要垃圾回收时,回收程序直接读取该block的数据有效性标识表,根据数据有效性标识表可直接获得数据有效的页序号,回收程序直接只读写并搬移有效的数据页到新的block中,所有有效数据页数据完成后,擦除该block,完成该block的回收。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611246461.2A CN106649132A (zh) | 2016-12-29 | 2016-12-29 | 一种固态硬盘垃圾回收的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611246461.2A CN106649132A (zh) | 2016-12-29 | 2016-12-29 | 一种固态硬盘垃圾回收的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106649132A true CN106649132A (zh) | 2017-05-10 |
Family
ID=58836188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611246461.2A Pending CN106649132A (zh) | 2016-12-29 | 2016-12-29 | 一种固态硬盘垃圾回收的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106649132A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562646A (zh) * | 2017-08-28 | 2018-01-09 | 记忆科技(深圳)有限公司 | 一种提升固态存储垃圾回收性能的方法 |
CN108345431A (zh) * | 2017-12-29 | 2018-07-31 | 杭州华为数字技术有限公司 | 一种数据读取的方法及装置 |
CN109144428A (zh) * | 2018-09-11 | 2019-01-04 | 浪潮电子信息产业股份有限公司 | 一种应用于固态硬盘的垃圾回收方法、设备及介质 |
CN109376095A (zh) * | 2018-12-04 | 2019-02-22 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于flash区域地址映射机制的垃圾回收方法 |
CN109725853A (zh) * | 2018-12-04 | 2019-05-07 | 浙江大华技术股份有限公司 | 一种数据回收方法及装置 |
CN110502451A (zh) * | 2019-07-10 | 2019-11-26 | 深圳市金泰克半导体有限公司 | 固态硬盘垃圾回收方法、装置、固态硬盘和存储介质 |
CN111158598A (zh) * | 2019-12-29 | 2020-05-15 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
CN111722807A (zh) * | 2020-06-20 | 2020-09-29 | 苏州浪潮智能科技有限公司 | 固态硬盘垃圾回收方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070268754A1 (en) * | 2000-01-06 | 2007-11-22 | Super Talent Electronics Inc. | Recycling Partially-Stale Flash Blocks Using a Sliding Window for Multi-Level-Cell (MLC) Flash Memory |
CN103049222A (zh) * | 2012-12-28 | 2013-04-17 | 中国船舶重工集团公司第七0九研究所 | 一种raid5的写io优化处理方法 |
CN104090730A (zh) * | 2014-07-08 | 2014-10-08 | 飞天诚信科技股份有限公司 | 一种对存储设备进行数据读写的方法及装置 |
CN104636285A (zh) * | 2015-02-03 | 2015-05-20 | 北京麓柏科技有限公司 | 一种闪存存储系统及其读写、删除方法 |
CN105740162A (zh) * | 2015-12-31 | 2016-07-06 | 上海盈方微电子有限公司 | 应用于nand存储器的nftl数据存储系统及方法 |
-
2016
- 2016-12-29 CN CN201611246461.2A patent/CN106649132A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070268754A1 (en) * | 2000-01-06 | 2007-11-22 | Super Talent Electronics Inc. | Recycling Partially-Stale Flash Blocks Using a Sliding Window for Multi-Level-Cell (MLC) Flash Memory |
CN103049222A (zh) * | 2012-12-28 | 2013-04-17 | 中国船舶重工集团公司第七0九研究所 | 一种raid5的写io优化处理方法 |
CN104090730A (zh) * | 2014-07-08 | 2014-10-08 | 飞天诚信科技股份有限公司 | 一种对存储设备进行数据读写的方法及装置 |
CN104636285A (zh) * | 2015-02-03 | 2015-05-20 | 北京麓柏科技有限公司 | 一种闪存存储系统及其读写、删除方法 |
CN105740162A (zh) * | 2015-12-31 | 2016-07-06 | 上海盈方微电子有限公司 | 应用于nand存储器的nftl数据存储系统及方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562646A (zh) * | 2017-08-28 | 2018-01-09 | 记忆科技(深圳)有限公司 | 一种提升固态存储垃圾回收性能的方法 |
CN108345431A (zh) * | 2017-12-29 | 2018-07-31 | 杭州华为数字技术有限公司 | 一种数据读取的方法及装置 |
CN109144428A (zh) * | 2018-09-11 | 2019-01-04 | 浪潮电子信息产业股份有限公司 | 一种应用于固态硬盘的垃圾回收方法、设备及介质 |
CN109376095A (zh) * | 2018-12-04 | 2019-02-22 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于flash区域地址映射机制的垃圾回收方法 |
CN109725853A (zh) * | 2018-12-04 | 2019-05-07 | 浙江大华技术股份有限公司 | 一种数据回收方法及装置 |
CN109376095B (zh) * | 2018-12-04 | 2023-06-13 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于flash区域地址映射机制的垃圾回收方法 |
CN110502451A (zh) * | 2019-07-10 | 2019-11-26 | 深圳市金泰克半导体有限公司 | 固态硬盘垃圾回收方法、装置、固态硬盘和存储介质 |
CN111158598A (zh) * | 2019-12-29 | 2020-05-15 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
CN111158598B (zh) * | 2019-12-29 | 2022-03-22 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
CN111722807A (zh) * | 2020-06-20 | 2020-09-29 | 苏州浪潮智能科技有限公司 | 固态硬盘垃圾回收方法、装置、计算机设备及存储介质 |
CN111722807B (zh) * | 2020-06-20 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 固态硬盘垃圾回收方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106649132A (zh) | 一种固态硬盘垃圾回收的方法 | |
CN102511044B (zh) | 一种数据删除方法及装置 | |
EP2115595B1 (en) | Memory device performance enhancement through pre-erase mechanism | |
CN102622309B (zh) | 数据安全擦除方法及装置 | |
CN102508788B (zh) | Ssd及ssd垃圾回收方法和装置 | |
CN101354715B (zh) | 用于操作数据处理系统的系统、方法和计算机程序产品 | |
CN109542358A (zh) | 一种固态硬盘冷热数据分离方法、装置及设备 | |
CN106484323A (zh) | 一种固态存储的损耗均衡方法及系统 | |
CN106598878A (zh) | 一种固态硬盘冷热数据分离方法 | |
CN102799535A (zh) | 固态硬盘的数据处理方法及固态硬盘 | |
CN102622310A (zh) | 无效数据擦除方法、装置及系统 | |
CN102929795B (zh) | 一种NandFlash坏块管理方法 | |
CN103699492A (zh) | 非易失性存储器的数据收集方法 | |
CN101673243B (zh) | 数据储存装置与方法 | |
CN103455435A (zh) | 数据写入方法及装置 | |
CN103279366A (zh) | 固态硬盘及掉电后基于固态硬盘快速开机的方法 | |
CN107301132A (zh) | 一种闪存垃圾回收优化方法 | |
CN106598493A (zh) | 一种固态硬盘地址映射表管理方法 | |
CN107797772A (zh) | 一种基于闪存介质的垃圾回收系统及方法 | |
CN105260325A (zh) | 固态硬盘搜集垃圾区块的方法 | |
CN103970669A (zh) | 用于加速在固态设备中的回收操作的物理到逻辑地址映射 | |
CN103744798A (zh) | 固态硬盘的垃圾回收方法 | |
CN101079010A (zh) | 一种实现flash芯片数据安全的方法 | |
CN101246440A (zh) | Java卡系统垃圾回收方法 | |
CN103077118A (zh) | 一种无效数据回收方法及系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170510 |