CN103744611A - 基于固态硬盘为缓存的计算机***及缓存加速方法 - Google Patents
基于固态硬盘为缓存的计算机***及缓存加速方法 Download PDFInfo
- Publication number
- CN103744611A CN103744611A CN201310694867.7A CN201310694867A CN103744611A CN 103744611 A CN103744611 A CN 103744611A CN 201310694867 A CN201310694867 A CN 201310694867A CN 103744611 A CN103744611 A CN 103744611A
- Authority
- CN
- China
- Prior art keywords
- solid state
- state hard
- hard disc
- disc
- read request
- 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
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明适用于存储技术领域,提供了一种计算机***的缓存加速方法,所述***包括内存、固态硬盘及磁盘驱动器,其特征在于,所述方法包括:在作为缓存设备的固态硬盘中维护一地址映射表,所述地址映射表储存所述磁盘驱动器的逻辑区块地址与所述固态硬盘的物理区块地址的映射关系;拦截发往所述磁盘驱动器的读请求,并将所述读请求发送至所述固态硬盘,所述读请求包含所述磁盘驱动器的逻辑区块地址信息;所述固态硬盘接收到所述读请求命令后,查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则返回数据,否则返回失败提示信息给所述内存。借此,本发明可以降低***内存的占用,也简化了数据查表路径,降低***负荷。
Description
技术领域
本发明涉及存储技术领域,尤其涉及一种基于固态硬盘为缓存的计算机***及缓存加速方法。
背景技术
固态硬盘(Solid State Disk,SSD)是一种建立在标准NAND Flash等非挥发存储介质基础上的新一代存储设备,完全半导体化,无机械结构,具有低功耗、无噪音、抗震动、低热量等特点,不存在磁盘寻道时间,数据存取速度快,数据吞吐量能和IOPS能达到传统硬盘的数千倍。隨著NAND Flash制程技术不断提高及成本的降低,有效地降低了SSD的成本,推进SSD的应用普及。闪存的读写单位为页,而页的大小一般为4KB或8KB,但我们的操作***读写数据是按HDD的扇区尺寸进行的(512Byte(字节)),SSD通过FTL(Flash translationlayer)闪存转换层把对磁盘的独立扇区操作转换成对闪存的操作。一般的,FTL层会维护一个全局的地址映射表,通过地址映射实现从LBA(逻辑区块地址)到PBA(物理区块地址)的转换。
现有的SSD缓存加速架构如图1所示,其具体读数据处理过程如下:
操作***创建缓存管理层,拦截发往HDD的读请求(含有HDD的LBA信息);缓存管理层在***内存中维护HDD的LBA与SSD的LBA的映射表(称为缓存映射表),看读地址是否在缓存映射表中;若读地址不在表中(不命中),则交由HDD读数据;若访问地址在表中查到(命中),则直接访问SSD,由FTL的地址映射表得到SSD的PBA,读出数据;缓存管理层将读出的数据返回给应用层,完成本次请求。上述传统的SSD缓存加速方法,需要在缓存管理层维护缓存映射表,会占用大量的内存,且查表过程消耗***资源。
综上可知,现有的以固态硬盘为缓存的***数据读取方法,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种基于固态硬盘为缓存的计算机***及缓存加速方法,可降低内存占用,并简化缓存加速的路径。
为了实现上述目的,本发明提供一种计算机***的缓存加速方法,所述***包括内存、固态硬盘及磁盘驱动器,所述方法包括:
在作为缓存设备的固态硬盘中维护一地址映射表,所述地址映射表储存所述磁盘驱动器的逻辑区块地址与所述固态硬盘的物理区块地址的映射关系;
拦截发往所述磁盘驱动器的读请求,并将所述读请求发送至所述固态硬盘,所述读请求包含所述磁盘驱动器的逻辑区块地址信息;
所述固态硬盘接收到所述读请求命令后,查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则返回数据,否则返回失败提示信息给所述内存。
根据本发明的计算机***的缓存加速方法,所述返回失败提示信息给所述内存步骤之后包括:
将所述读请求发送到所述磁盘驱动器读数据;
所述内存将读出的数据发给所述固态硬盘,所述固态硬盘写入所述数据并更新更新所述地址映射表。
本发明还提供一种基于固态硬盘为缓存的计算机***,包括:
内存,具有缓存管理层,用于拦截发往磁盘驱动器的读请求,并将所述读请求发送至作为缓存设备的固态硬盘,所述读请求包含磁盘驱动器的逻辑区块地址信息;
固态硬盘,具有闪存转换层,所述闪存转换层维护一地址映射表,用于储存所述磁盘驱动器的逻辑区块地址与固态硬盘的物理区块地址的映射关系,所述固态硬盘接收到所述读请求命令后,所述闪存转换层查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则从所述固态硬盘中返回数据,否则返回失败提示信息给所述内存;以及
磁盘驱动器。
根据本发明的基于固态硬盘为缓存的计算机***,所述固态硬盘返回失败提示信息给所述内存后,所述内存将所述读请求发送到所述磁盘驱动器读数据;
所述内存将读出的数据发给所述固态硬盘,所述固态硬盘写入所述数据并更新更新所述地址映射表。
本发明通过在固态硬盘中维护闪存转换层的地址映射表,其储存了磁盘驱动器的逻辑区块地址与固态硬盘的物理区块地址的映射关系,***发送读请求时,内存通过缓存管理层将读请求发送至作为缓存设备的固态硬盘,所述固态硬盘的闪存转换层查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则从所述固态硬盘中返回数据,否则返回失败提示信息给所述内存。借此,本发明可以降低***内存的占用,也简化了数据查表路径,降低***负荷。
附图说明
图1是现有技术一实施例的计算机***的结构示意图;
图2是本发明一实施例的计算机***的结构示意图;
图3是本发明一实施例的计算机***的缓存加速方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图2,本发明提供了一种基于固态硬盘为缓存的计算机***,该***100具有内存10、固态硬盘20以及磁盘驱动器30。其中:
内存10,具有缓存管理层11,用于拦截发往磁盘驱动器30的读请求,并将所述读请求发送至作为缓存设备的固态硬盘20,所述读请求包含磁盘驱动器30的逻辑区块地址信息。
固态硬盘20,具有闪存转换层21,所述闪存转换层21维护一地址映射表,用于储存所述磁盘驱动器30的逻辑区块地址(LBA)与固态硬盘的物理区块地址(PBA)的映射关系,所述固态硬盘20接收到所述读请求命令后,所述闪存转换层21查找所述地址映射表是否具有所述读请求的所述磁盘驱动器30的逻辑区块地址,若是,则从所述固态硬盘中返回数据,否则返回失败提示信息给所述内存10。
磁盘驱动器30,用于存储***数据。
优选的是,缓存管理层11若收到失败信息,则交由磁盘驱动器30读数据,缓存管理层11将读出的数据发给固态硬盘20,固态硬盘20写入同样数据。需要说明的,固态硬盘20有空闲空间时直接在空闲空间写,没有空闲空间时,通过预定置换算法淘汰原有数据再写,同时更新映射表。缓存管理层11将读出的数据返回给应用层后,完成本次请求。
本发明将传统的缓存映射表与FTL(闪存转换层)地址映射表合二为一,并由FTL维护,降低了***内存的占用,也简化了传统方法需要两次查表的路径;同时,缓存管理层查找映射表、更新映射表的操作均由FTL来实现,降低了操作***的负荷。
参见图3,本发明提供了一种计算机***的缓存加速方法,其可以通过如图2所示的***100实现,所述***100包括内存10、固态硬盘20及磁盘驱动器30,该方法包括:
步骤S301,在作为缓存设备的固态硬盘20中维护一地址映射表,所述地址映射表储存所述磁盘驱动器30的逻辑区块地址与所述固态硬盘20的物理区块地址的映射关系。
步骤S302,拦截发往所述磁盘驱动器30的读请求,并将所述读请求发送至所述固态硬盘20,所述读请求包含所述磁盘驱动器的逻辑区块地址信息。
步骤S303,所述固态硬盘20接收到所述读请求命令后,查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则执行步骤S304,否则执行步骤S305。
步骤S304,则返回数据至内存10。否则返回失败提示信息给所述内存
步骤S305,返回失败提示信息。
优选的是,内存10的缓存管理层11收到失败信息后,交由磁盘驱动器30读数据,缓存管理层11将读出的数据发给固态硬盘20,固态硬盘20写入同样数据。需要说明的,固态硬盘20有空闲空间时直接在空闲空间写,没有空闲空间时,通过预定置换算法淘汰原有数据再写,同时更新地址映射表。缓存管理层11将读出的数据返回给应用层后,完成本次请求。
综上所述,本发明通过在固态硬盘中维护闪存转换层的地址映射表,其储存了磁盘驱动器的逻辑区块地址与固态硬盘的物理区块地址的映射关系,***发送读请求时,内存通过缓存管理层将读请求发送至作为缓存设备的固态硬盘,所述固态硬盘的闪存转换层查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则从所述固态硬盘中返回数据,否则返回失败提示信息给所述内存。借此,本发明可以降低***内存的占用,也简化了数据查表路径,降低***负荷。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (4)
1.一种计算机***的缓存加速方法,所述***包括内存、固态硬盘及磁盘驱动器,其特征在于,所述方法包括:
在作为缓存设备的固态硬盘中维护一地址映射表,所述地址映射表储存所述磁盘驱动器的逻辑区块地址与所述固态硬盘的物理区块地址的映射关系;
拦截发往所述磁盘驱动器的读请求,并将所述读请求发送至所述固态硬盘,所述读请求包含所述磁盘驱动器的逻辑区块地址信息;
所述固态硬盘接收到所述读请求命令后,查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则返回数据,否则返回失败提示信息给所述内存。
2.根据权利要求1所述的计算机***的缓存加速方法,其特征在于,所述返回失败提示信息给所述内存步骤之后包括:
将所述读请求发送到所述磁盘驱动器读数据;
所述内存将读出的数据发给所述固态硬盘,所述固态硬盘写入所述数据并更新更新所述地址映射表。
3.一种基于固态硬盘为缓存的计算机***,其特征在于,包括:
内存,具有缓存管理层,用于拦截发往磁盘驱动器的读请求,并将所述读请求发送至作为缓存设备的固态硬盘,所述读请求包含磁盘驱动器的逻辑区块地址信息;
固态硬盘,具有闪存转换层,所述闪存转换层维护一地址映射表,用于储存所述磁盘驱动器的逻辑区块地址与固态硬盘的物理区块地址的映射关系,所述固态硬盘接收到所述读请求命令后,所述闪存转换层查找所述地址映射表是否具有所述读请求的所述磁盘驱动器的逻辑区块地址,若是,则从所述固态硬盘中返回数据,否则返回失败提示信息给所述内存;以及
磁盘驱动器。
4.根据权利要求3所述的基于固态硬盘为缓存的计算机***,其特征在于,所述固态硬盘返回失败提示信息给所述内存后,所述内存将所述读请求发送到所述磁盘驱动器读数据;
所述内存将读出的数据发给所述固态硬盘,所述固态硬盘写入所述数据并更新更新所述地址映射表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310694867.7A CN103744611A (zh) | 2013-12-17 | 2013-12-17 | 基于固态硬盘为缓存的计算机***及缓存加速方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310694867.7A CN103744611A (zh) | 2013-12-17 | 2013-12-17 | 基于固态硬盘为缓存的计算机***及缓存加速方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103744611A true CN103744611A (zh) | 2014-04-23 |
Family
ID=50501632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310694867.7A Pending CN103744611A (zh) | 2013-12-17 | 2013-12-17 | 基于固态硬盘为缓存的计算机***及缓存加速方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103744611A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224474A (zh) * | 2014-06-03 | 2016-01-06 | 深圳市腾讯计算机***有限公司 | 固态硬盘闪存转换层的实现***和闪存转换层的实现装置 |
CN105809069A (zh) * | 2015-01-21 | 2016-07-27 | 联想(新加坡)私人有限公司 | 防止固态驱动器可访问时被移除的装置、方法和该驱动器 |
CN106708416A (zh) * | 2015-11-13 | 2017-05-24 | 群联电子股份有限公司 | 数据重建方法与***及其存储器控制电路单元 |
CN106775466A (zh) * | 2016-12-05 | 2017-05-31 | 深圳市金泰克半导体有限公司 | 一种无dram的ftl读缓存管理方法及装置 |
CN107562648A (zh) * | 2016-07-01 | 2018-01-09 | 北京忆恒创源科技有限公司 | 无锁ftl访问方法与装置 |
CN107656702A (zh) * | 2017-09-27 | 2018-02-02 | 联想(北京)有限公司 | 加速硬盘读写的方法及其***、以及电子设备 |
CN110502455A (zh) * | 2018-05-18 | 2019-11-26 | 杭州海康威视数字技术股份有限公司 | 数据存储方法及*** |
CN110825314A (zh) * | 2018-08-10 | 2020-02-21 | 浙江宇视科技有限公司 | 一种数据调度方法及装置 |
CN111177033A (zh) * | 2019-12-24 | 2020-05-19 | 河南文正电子数据处理有限公司 | 一种固态硬盘的使用方法 |
CN111581118A (zh) * | 2019-12-31 | 2020-08-25 | 北京忆芯科技有限公司 | 计算加速*** |
CN111666044A (zh) * | 2016-02-29 | 2020-09-15 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
CN118244996A (zh) * | 2024-05-28 | 2024-06-25 | 山东云海国创云计算装备产业创新中心有限公司 | 硬盘读写方法、装置、电子设备、可读存储介质及产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101782872A (zh) * | 2009-01-16 | 2010-07-21 | 马维尔国际贸易有限公司 | 使用固态盘的缓存***和方法 |
US20110072198A1 (en) * | 2009-09-23 | 2011-03-24 | Lsi Corporation | Accessing logical-to-physical address translation data for solid state disks |
CN102521147A (zh) * | 2011-11-17 | 2012-06-27 | 曙光信息产业(北京)有限公司 | 一种使用高速非易失介质做缓存的管理方法 |
-
2013
- 2013-12-17 CN CN201310694867.7A patent/CN103744611A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101782872A (zh) * | 2009-01-16 | 2010-07-21 | 马维尔国际贸易有限公司 | 使用固态盘的缓存***和方法 |
US20110072198A1 (en) * | 2009-09-23 | 2011-03-24 | Lsi Corporation | Accessing logical-to-physical address translation data for solid state disks |
CN102521147A (zh) * | 2011-11-17 | 2012-06-27 | 曙光信息产业(北京)有限公司 | 一种使用高速非易失介质做缓存的管理方法 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224474B (zh) * | 2014-06-03 | 2019-05-31 | 深圳市腾讯计算机***有限公司 | 固态硬盘闪存转换层的实现***和闪存转换层的实现装置 |
CN105224474A (zh) * | 2014-06-03 | 2016-01-06 | 深圳市腾讯计算机***有限公司 | 固态硬盘闪存转换层的实现***和闪存转换层的实现装置 |
CN105809069A (zh) * | 2015-01-21 | 2016-07-27 | 联想(新加坡)私人有限公司 | 防止固态驱动器可访问时被移除的装置、方法和该驱动器 |
CN105809069B (zh) * | 2015-01-21 | 2019-10-29 | 联想(新加坡)私人有限公司 | 防止固态驱动器可访问时被移除的装置、方法和该驱动器 |
CN106708416A (zh) * | 2015-11-13 | 2017-05-24 | 群联电子股份有限公司 | 数据重建方法与***及其存储器控制电路单元 |
CN106708416B (zh) * | 2015-11-13 | 2020-06-09 | 群联电子股份有限公司 | 数据重建方法与***及其存储器控制电路单元 |
US11270734B2 (en) | 2016-02-29 | 2022-03-08 | Huawei Technologies Co., Ltd. | Method for accessing shingled magnetic recording SMR disk, and server |
CN111666044B (zh) * | 2016-02-29 | 2021-11-30 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
CN111666044A (zh) * | 2016-02-29 | 2020-09-15 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
CN107562648A (zh) * | 2016-07-01 | 2018-01-09 | 北京忆恒创源科技有限公司 | 无锁ftl访问方法与装置 |
CN106775466A (zh) * | 2016-12-05 | 2017-05-31 | 深圳市金泰克半导体有限公司 | 一种无dram的ftl读缓存管理方法及装置 |
CN107656702A (zh) * | 2017-09-27 | 2018-02-02 | 联想(北京)有限公司 | 加速硬盘读写的方法及其***、以及电子设备 |
CN107656702B (zh) * | 2017-09-27 | 2020-11-20 | 联想(北京)有限公司 | 加速硬盘读写的方法及其***、以及电子设备 |
CN110502455A (zh) * | 2018-05-18 | 2019-11-26 | 杭州海康威视数字技术股份有限公司 | 数据存储方法及*** |
CN110825314B (zh) * | 2018-08-10 | 2024-02-02 | 浙江宇视科技有限公司 | 一种数据调度方法及装置 |
CN110825314A (zh) * | 2018-08-10 | 2020-02-21 | 浙江宇视科技有限公司 | 一种数据调度方法及装置 |
CN111177033A (zh) * | 2019-12-24 | 2020-05-19 | 河南文正电子数据处理有限公司 | 一种固态硬盘的使用方法 |
CN111581118B (zh) * | 2019-12-31 | 2021-04-13 | 北京忆芯科技有限公司 | 计算加速*** |
CN111581118A (zh) * | 2019-12-31 | 2020-08-25 | 北京忆芯科技有限公司 | 计算加速*** |
CN118244996A (zh) * | 2024-05-28 | 2024-06-25 | 山东云海国创云计算装备产业创新中心有限公司 | 硬盘读写方法、装置、电子设备、可读存储介质及产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103744611A (zh) | 基于固态硬盘为缓存的计算机***及缓存加速方法 | |
CN108804350B (zh) | 一种内存访问方法及计算机*** | |
US9753847B2 (en) | Non-volatile semiconductor memory segregating sequential, random, and system data to reduce garbage collection for page based mapping | |
US8683131B2 (en) | Direct memory address for solid-state drives | |
US8364931B2 (en) | Memory system and mapping methods using a random write page mapping table | |
US11126544B2 (en) | Method and apparatus for efficient garbage collection based on access probability of data | |
US20190114272A1 (en) | Methods and apparatus for variable size logical page management based on hot and cold data | |
US10360155B1 (en) | Multi-tier memory management | |
CN104461397A (zh) | 一种固态硬盘及其读写方法 | |
EP3776163A1 (en) | Specifying media type in write commands | |
JP2016522942A (ja) | 高性能でかつ低コストのフラッシュ変換層のためのシステムおよび方法 | |
WO2016048599A1 (en) | Caching technologies employing data compression | |
EP3196767B1 (en) | Method for writing data into flash memory device, flash memory device and storage system | |
CN103543955A (zh) | 利用固态硬盘作为设备读缓存的方法、***及固态硬盘 | |
EP3346387B1 (en) | Storage system and system garbage collection method | |
CN109164976B (zh) | 利用写缓存优化存储设备性能 | |
KR101374065B1 (ko) | 칩 레벨 평행 플래시 메모리를 위한 정보 분별 방법 및 장치 | |
CN101719099A (zh) | 减小固态硬盘写入放大的方法及装置 | |
US8429339B2 (en) | Storage device utilizing free pages in compressed blocks | |
KR20200116372A (ko) | 저장 장치, 컨트롤러 및 컨트롤러의 동작 방법 | |
US11422945B2 (en) | Generating, maintaining, or utilizing a compressed logical-to-physical table based on sequential writes | |
CN115617503A (zh) | 用于异构存储器***中的负载均衡的***和方法 | |
US10031689B2 (en) | Stream management for storage devices | |
KR101191650B1 (ko) | 낸드 플래시 메모리에서 데이터의 주소를 사상시키는 장치 및 방법 | |
CN105589912A (zh) | 一种利用mram处理频写文件的方法及存储结构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20140423 |