CN113590547B - 一种icfs的缓存管理方法和系统 - Google Patents

一种icfs的缓存管理方法和系统 Download PDF

Info

Publication number
CN113590547B
CN113590547B CN202110744217.3A CN202110744217A CN113590547B CN 113590547 B CN113590547 B CN 113590547B CN 202110744217 A CN202110744217 A CN 202110744217A CN 113590547 B CN113590547 B CN 113590547B
Authority
CN
China
Prior art keywords
solid state
state disk
data
cache
brushing
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.)
Active
Application number
CN202110744217.3A
Other languages
English (en)
Other versions
CN113590547A (zh
Inventor
张英杰
孟祥瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Jinan data Technology Co ltd
Original Assignee
Inspur Jinan data Technology Co ltd
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 Inspur Jinan data Technology Co ltd filed Critical Inspur Jinan data Technology Co ltd
Priority to CN202110744217.3A priority Critical patent/CN113590547B/zh
Publication of CN113590547A publication Critical patent/CN113590547A/zh
Application granted granted Critical
Publication of CN113590547B publication Critical patent/CN113590547B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • 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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开一种ICFS的缓存管理方法和系统,其中,ICFS的缓存管理方法包括:检测所述ICFS中作为缓存设备的固态硬盘的磨损程度;根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据。本发明的技术方案能解决现有技术中缓存设备容易发生故障,导致下发至主存设备中的数据容易丢失的问题。

Description

一种ICFS的缓存管理方法和系统
技术领域
本发明涉及分布式存储技术领域,尤其涉及一种ICFS的缓存管理方法和系统。
背景技术
ICFS,即分布式文件系统,是一种分布式的文件存储系统,广泛应用于视频监控、广电传媒、生物科技和高性能等多种场景中,为了提高ICFS中数据的可用性,需要针对ICFS设计缓存方案。
针对ICFS,其数据的缓存方案是一种支持缓存设备的对象存储方案。如图1所示,具体利用固态硬盘SSD作为缓存设备1,以提升硬盘驱动器HDD作为主存设备2的读写性能,这种方案同时确保了读写流程的数据一致性。这样读对象3可通过作为缓存设备1的SSD从主存设备2中读取IO数据,写对象4也能够通过向SSD写缓存的方式,从主存设备2中上拉数据。此方案能够通过改变IO大小、Cache水位和主副本属性等控制写盘策略,并支持下刷速度的控制。通常情况下,单块SSD可划分为多个缓存分区以供多个主存设备2使用,其中,缓存分区与主存设备一一对应。
在原有ICFS的数据缓存方案中,是通过将数据副本分布在不同节点的方式对数据进行保护的,并且在一块或多块HDD故障时进行系统的降级与重构,以恢复丢失的数据,通过维持数据副本数以保障数据安全。然而,通常情况下单块SSD为多块HDD提供缓存服务,这样与单块HDD的故障相比,由于单块SSD为多块HDD提供缓存分区,因此当SSD发生磨损,出现故障时,缓存SSD未下刷至主存HDD的脏数据的丢失,将会导致多块HDD需要重构,对ICFS的性能会造成严重影响。
发明内容
本发明提供了一种ICFS的缓存管理方法和系统,旨在解决现有技术中作为ICFS中作为缓存设备的SSD容易发生磨损出现故障,导致下刷至主存设备的数据容易丢失的问题。
根据本发明的第一方面,本发明提供了一种ICFS的缓存管理方法,包括:
检测ICFS中作为缓存设备的固态硬盘的磨损程度;
根据固态硬盘的磨损程度对应的缓存写入及下刷策略,控制固态硬盘写入及下刷数据。
优选地,所述缓存管理方法中,检测ICFS中作为缓存设备的固态硬盘的磨损程度的步骤包括:
周期性读取固态硬盘的SMART信息;其中,SMART信息包括固态硬盘的闪存颗粒擦写次数;
根据固态硬盘的闪存颗粒擦写次数与预设擦写次数上限的关系,计算固态硬盘的磨损度百分比,其中,磨损度百分比用于衡量固态硬盘的磨损程度。
优选地,所述缓存管理方法中,根据固态硬盘的磨损程度对应的缓存写入及下刷策略,控制固态硬盘写入及下刷数据的步骤包括:
当固态硬盘的磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息;
当固态硬盘的磨损程度大于或等于第二磨损阈值时,减少固态硬盘的数据写入量,并且增加固态硬盘的数据下刷速率;
以及,当固态硬盘的磨损程度大于或等于第三磨损阈值时,禁止固态硬盘的数据写入,并且将固态硬盘缓存的所有脏数据下刷至主存设备。
优选地,所述缓存管理方法还包括:
当禁止固态硬盘的数据写入时,使用备用缓存接入主存设备进行数据的写入和下刷;
或者,将ICFS的上层设备下发的数据直接下刷至主存设备。
优选地,所述缓存管理方法,还包括:
当更换固态硬盘时,使用其他节点的数据副本重构固态硬盘的缓存数据;
将固态硬盘的缓存数据下刷至对应的主存设备。
根据本发明的第二方面,本发明还提供了一种ICFS的缓存管理系统,包括:
磨损程度检测模块,用于检测ICFS中作为缓存设备的固态硬盘的磨损程度;
硬盘策略控制模块,用于根据固态硬盘的磨损程度对应的缓存写入及下刷策略,控制固态硬盘写入及下刷数据。
优选地,所述磨损程度检测模块,包括:
信息读取子模块,用于周期性读取固态硬盘的SMART信息;其中,SMART信息包括固态硬盘的闪存颗粒擦写次数;
磨损度计算子模块,用于根据固态硬盘的闪存颗粒擦写次数与预设擦写次数上限的关系,计算固态硬盘的磨损度百分比,其中,磨损度百分比用于衡量固态硬盘的磨损程度。
优选地,所述硬盘策略控制模块,包括:
信息上报子模块,用于当固态硬盘的磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息;
第一数据读写子模块,用于当固态硬盘的磨损程度大于或等于第二磨损阈值时,减少固态硬盘的数据写入量,并且增加固态硬盘的数据下刷速率;
以及第二数据读写子模块,用于当固态硬盘的磨损程度大于或等于第三磨损阈值时,禁止固态硬盘的数据写入,并且将固态硬盘缓存的所有脏数据下刷至主存设备。
优选地,所述缓存管理系统,还包括:
备用缓存模块,用于当禁止固态硬盘的数据写入时,使用备用缓存接入主存设备进行数据的写入和下刷;
第一下刷控制模块,用于将ICFS的上层设备下发的数据直接下刷至主存设备。
优选地,所述缓存管理系统,还包括:
数据重构模块,用于当更换固态硬盘时,使用其他节点的数据副本重构固态硬盘的缓存数据;
第二下刷控制模块,用于将固态硬盘的缓存数据下刷至对应的主存设备。
本申请提供的ICFS的缓存管理方案,通过检测所述ICFS中作为缓存设备的固态硬盘的磨损程度;该磨损程度反应了固态硬盘SSD的寿命,根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据。具体地,当固态硬盘磨损程度较低时,按照正常的缓存写入速度和下刷量进行写入及下刷,当固态硬盘的磨损程度较高时,降低缓存写入速度,提高缓存对主存设备的脏数据的下刷量。通过上述方式,能够解决现有技术中缓存设备容易发生故障,导致下发至主存设备中的数据容易丢失的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1是本发明实施例提供的一种分布式文件系统ICFS的结构示意图;
图2是本发明实施例提供的第一种ICFS的缓存管理方法的流程示意图;
图3是图2所示实施例提供的一种固态硬盘的磨损程度检测方法的流程示意图;
图4是图2所示实施例提供的一种固态硬盘的写入及下刷方法的流程示意图;
图5是本发明实施例提供的第二种ICFS的缓存管理方法的流程示意图;
图6是本发明实施例提供的第三种ICFS的缓存管理方法的流程示意图;
图7是本发明实施例提供的第四种ICFS的缓存管理方法的流程示意图;
图8是本发明实施例提供的第一种ICFS的缓存管理系统的结构示意图;
图9是图8所示实施例提供的一种磨损程度检测模块的结构示意图;
图10是图8所示实施例提供的一种硬盘策略控制模块的结构示意图;
图11是本发明实施例提供的第二种ICFS的缓存管理系统的结构示意图;
图12是本发明实施例提供的第三种ICFS的缓存管理系统的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要技术问题如下:
现有的ICFS的数据缓存方案中,通过将数据副本分布在不同节点的方式对数据进行保护,并且在一块或多块HDD故障时进行系统的降级与重构,以恢复丢失的数据,通过维持数据副本数以保障数据安全。然而,通常情况下单块SSD为多块HDD提供缓存服务,这样与单块HDD的故障相比,由于单块SSD为多块HDD提供缓存分区,因此当SSD发生磨损,出现故障时,缓存SSD未下刷至主存HDD的脏数据的丢失,将会导致多块HDD需要重构,对ICFS的性能会造成严重影响。
为了解决上述问题,具体参见图2,图2为本发明实施例提供的一种ICFS的缓存管理方法的流程示意图。如图2所示,该ICFS的缓存管理方法包括:
S110:检测ICFS中作为缓存设备的固态硬盘的磨损程度;该固态硬盘作为缓存设备,上级设备下发的数据大多需要通过该固态硬盘SSD下刷到各个主存设备中,因此固态硬盘极容易磨损,使用寿命受到影响,进而可能导致SSD未下刷至主存HDD的脏数据的丢失,导致多块HDD数据需要重构。通过检测ICFS中固态硬盘的磨损程度,就能够确定固态硬盘的使用寿命,从而根据固态硬盘的使用寿命进行相应的处理。
作为一种优选的实施例,如图3所示,该检测ICFS中作为缓存设备的固态硬盘的磨损程度的步骤包括:
S111:周期性读取固态硬盘的SMART信息;其中,SMART信息包括固态硬盘的闪存颗粒擦写次数。通过周期行的读取固态硬盘的SMART信息,,能够获取到上述闪存颗粒擦写次数,SSD存储芯片上的擦写次数是有上限的,决定了固态硬盘的寿命,因此相较于机械硬盘,通过读取固态硬盘的SMART信息,获取固态硬盘的闪存颗粒擦写次数,就能够得到固态硬盘的磨损程度,进而预测固态硬盘是使用寿命情况。
S112:根据固态硬盘的闪存颗粒擦写次数与预设擦写次数上限的关系,计算固态硬盘的磨损度百分比,其中,磨损度百分比用于衡量固态硬盘的磨损程度。
固态硬盘的磨损度百分比反映了固态硬盘的磨损程度,进而反映了固态硬盘的寿命使用情况,该固态硬盘的磨损度百分比可通过读取到的固态硬盘的闪存颗粒擦写次数与预设擦写次数上限之间的比值计算得到,具体技术公式如下:
磨损度百分比=闪存颗粒擦写次数/预设擦写次数上限*100%
综上通过读取固态硬盘的SMART信息,获取固态硬盘的闪存颗粒擦写次数,然后根据该闪存颗粒擦写次数与预设擦写次数上限之间的关系,就能够计算得到固态硬盘的磨损程度,从而预测固态硬盘的使用寿命。
S120:根据固态硬盘的磨损程度对应的缓存写入及下刷策略,控制固态硬盘写入及下刷数据。通过改变固态硬盘的磨损程度对应的缓存写入及下刷策略,根据固态硬盘的磨损程度控制固态硬盘的写入及下刷数据,能够及时确定固态硬盘的运行寿命,并提高固态硬盘的使用期限,另外,根据相应的缓存写入及下刷策略,控制固态硬盘的写入及下刷,能够在固态硬盘出现故障前及时将SSD中的数据下刷至相应的HDD中,减少脏数据丢失的情况。
作为一种优选的实施例,如图4所示,上述步骤S120:根据固态硬盘的磨损程度对应的缓存写入及下刷策略,控制固态硬盘写入及下刷数据的步骤包括:
S121:判断固态硬盘的磨损程度是否大于或等于第一磨损阈值;第一磨损度阈值即告警阈值,可以设置为80%,上述磨损程度使用磨损度百分比衡量。
S122:当固态硬盘的磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息;当磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息,从而提醒用户设备磨损程度已达到告警阈值,这样用户可根据需要,在业务空闲器件,执行后续强制下刷流程并更换相关的固态硬盘。
S123:判断固态硬盘的磨损程度是否大于或等于第二磨损阈值;第二磨损阈值为限速阈值,可以设置为85%。
S124:当固态硬盘的磨损程度大于或等于第二磨损阈值时,减少固态硬盘的数据写入量,并且增加固态硬盘的数据下刷速率。当设备磨损程度达到限速阈值时,调整ICFS存储系统的写缓存策略与下刷策略,从而减少写缓存并加大下刷力度,尽量减少固态硬盘中缓存的脏数据。
S125:判断固态硬盘的磨损程度是否大于或等于第三磨损阈值;第三磨损阈值为强制禁用缓存阈值,该强制禁用缓存阈值设置为90%。
S126:当固态硬盘的磨损程度大于或等于第三磨损阈值时,禁止固态硬盘的数据写入,并且将固态硬盘缓存的所有脏数据下刷至主存设备。当设备磨损程度大于或等于该强制禁用缓存阈值时,禁止向SSD缓存设备写入数据,但是仍然允许从SSD中读取缓存数据。此时所有下发IO数据的请求都由HDD接管,同时固态硬盘将缓存的脏数据下刷到HDD中。整个ICFS集群仍然能够正常进行IO数据的收发,此时需要提醒用户进行缓存设备的更换。
综上,本申请实施例提供的ICFS的缓存管理方法,通过检测所述ICFS中作为缓存设备的固态硬盘的磨损程度;该磨损程度反应了固态硬盘SSD的寿命,根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据。具体地,当固态硬盘磨损程度较低时,按照正常的缓存写入速度和下刷量进行写入及下刷,当固态硬盘的磨损程度较高时,降低缓存写入速度,提高缓存对主存设备的脏数据的下刷量。通过上述方式,能够解决现有技术中缓存设备容易发生故障,导致下发至主存设备中的数据容易丢失的问题。
作为一种优选的实施例,如图5所示,本申请实施例提供的缓存管理方法除了上述步骤外还包括:
S210:当禁止固态硬盘的数据写入时,使用备用缓存接入主存设备进行数据的写入和下刷;
本申请实施例中,可设置备用缓存,即备用的固态硬盘,当禁止固态硬盘的数据写入时,为了保证数据的下刷效率和ICFS性能,使用备用缓存接入主存设备,即可实现数据的写入和下刷。
S220:将ICFS的上层设备下发的数据直接下刷至主存设备。
本申请实施例提供的技术方案中,通过将ICFS的上层设备下发的数据直接下刷至主存设备,这样ICFS集群仍然能够正常进行IO数据的传输,虽然性能较低,此时提醒用户进行缓存设备的更换,以使ICFS性能快速恢复。
作为一种优选的实施例,如图6所示,本申请实施例提供的缓存管理方法还包括:
S310:当更换固态硬盘时,使用其他节点的数据副本重构固态硬盘的缓存数据;
S320:将固态硬盘的缓存数据下刷至对应的主存设备。
本申请实施例提供的技术方案中,因为数据副本存储于不同的节点,即不同的服务器中,当更换固态硬盘时,为了保证固态硬盘中未下刷的数据的恢复,可适用其他节点的数据副本重构固态硬盘的缓存数据,从而实现对数据的保护,保障数据的安全。
另外,作为一种优选的实施例,如图7所示,本实施例提供的缓存管理方法,包括以下步骤:
S410:设置各项阈值。
S420:判断是否到达强制禁用缓存阈值;若是,则执行步骤S430;若否,则执行步骤S440。
S430:禁用写缓存强制下刷。
S440:判断是否到达限速阈值;若是,则执行步骤S450;若否,则执行步骤S460。
S450:限速写缓存,加快下刷。
S460:判断是否到达告警阈值;若是,则执行步骤S470;若否,则执行步骤S460。
S460:等待一个周期,然后执行步骤S420,判断是否到达强制禁用缓存阈值。
S470:上报告警。
S480:手动更换缓存盘。
为了实现上述方法,本申请下述各实施例还提供了ICFS的缓存管理系统,通过下述缓存管理系统能够实现上述方法的功能,因为具体操作步骤上述方法已经提及,因此重复部分不再赘述。
参见图8,图8为本发明实施例提供的一种ICFS的缓存管理系统的结构示意图。如图8所示,该ICFS的缓存管理系统包括:
磨损程度检测模块110,用于检测ICFS中作为缓存设备的固态硬盘的磨损程度;
硬盘策略控制模块120,用于根据固态硬盘的磨损程度对应的缓存写入及下刷策略,控制固态硬盘写入及下刷数据。
综上,本申请实施例提供的ICFS的缓存管理系统,通过磨损程度检测模块110检测所述ICFS中作为缓存设备的固态硬盘的磨损程度;该磨损程度反应了固态硬盘SSD的寿命,然后,硬盘策略控制模块120根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据。具体地,当固态硬盘磨损程度较低时,按照正常的缓存写入速度和下刷量进行写入及下刷,当固态硬盘的磨损程度较高时,降低缓存写入速度,提高缓存对主存设备的脏数据的下刷量。通过上述方式,能够解决现有技术中缓存设备容易发生故障,导致下发至主存设备中的数据容易丢失的问题。
作为一种优选的实施例,如图9所示,磨损程度检测模块110包括:
信息读取子模块111,用于周期性读取固态硬盘的SMART信息;其中,SMART信息包括固态硬盘的闪存颗粒擦写次数;
磨损度计算子模块112,用于根据固态硬盘的闪存颗粒擦写次数与预设擦写次数上限的关系,计算固态硬盘的磨损度百分比,其中,磨损度百分比用于衡量固态硬盘的磨损程度。
作为一种优选的实施例,如图10所示,硬盘策略控制模块120,包括:
信息上报子模块121,用于当固态硬盘的磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息;
第一数据读写子模块122,用于当固态硬盘的磨损程度大于或等于第二磨损阈值时,减少固态硬盘的数据写入量,并且增加固态硬盘的数据下刷速率;
以及第二数据读写子模块123,用于当固态硬盘的磨损程度大于或等于第三磨损阈值时,禁止固态硬盘的数据写入,并且将固态硬盘缓存的所有脏数据下刷至主存设备。
作为一种优选的实施例,如图11所示,本申请实施例提供的缓存管理系统除了上述模块外还包括:
备用缓存模块210,用于当禁止固态硬盘的数据写入时,使用备用缓存接入主存设备进行数据的写入和下刷;
第一下刷控制模块220,用于将ICFS的上层设备下发的数据直接下刷至主存设备。
作为一种优选的实施例,如图12所示,本申请实施例提供的缓存管理系统除了上述模块外还包括:
数据重构模块310,用于当更换固态硬盘时,使用其他节点的数据副本重构固态硬盘的缓存数据;
第二下刷控制模块320,用于将固态硬盘的缓存数据下刷至对应的主存设备。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (4)

1.一种ICFS的缓存管理方法,其特征在于,包括:
检测所述ICFS中作为缓存设备的固态硬盘的磨损程度;
根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据;
所述检测所述ICFS中作为缓存设备的固态硬盘的磨损程度的步骤,包括:
周期性读取所述固态硬盘的SMART信息;其中,所述SMART信息包括所述固态硬盘的闪存颗粒擦写次数;
根据所述固态硬盘的闪存颗粒擦写次数与预设擦写次数上限的关系,计算所述固态硬盘的磨损度百分比,其中,所述磨损度百分比用于衡量所述固态硬盘的磨损程度;
所述根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据的步骤,包括:
当所述固态硬盘的磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息;
当所述固态硬盘的磨损程度大于或等于第二磨损阈值时,减少所述固态硬盘的数据写入量,并且增加所述固态硬盘的数据下刷速率;
以及,当固态硬盘的磨损程度大于或等于第三磨损阈值时,禁止所述固态硬盘的数据写入,并且将所述固态硬盘缓存的所有脏数据下刷至主存设备;
还包括:
当更换所述固态硬盘时,使用其他节点的数据副本重构所述固态硬盘的缓存数据;
将所述固态硬盘的缓存数据下刷至对应的所述主存设备。
2.根据权利要求1所述的缓存管理方法,其特征在于,还包括:
当禁止所述固态硬盘的数据写入时,使用备用缓存接入所述主存设备进行数据的写入和下刷;
或者,将所述ICFS的上层设备下发的数据直接下刷至所述主存设备。
3.一种ICFS的缓存管理系统,其特征在于,包括:
磨损程度检测模块,用于检测所述ICFS中作为缓存设备的固态硬盘的磨损程度;
硬盘策略控制模块,用于根据所述固态硬盘的磨损程度对应的缓存写入及下刷策略,控制所述固态硬盘写入及下刷数据;
所述磨损程度检测模块,包括:
信息读取子模块,用于周期性读取所述固态硬盘的SMART信息;其中,所述SMART信息包括所述固态硬盘的闪存颗粒擦写次数;
磨损度计算子模块,用于根据所述固态硬盘的闪存颗粒擦写次数与预设擦写次数上限的关系,计算所述固态硬盘的磨损度百分比,其中,所述磨损度百分比用于衡量所述固态硬盘的磨损程度;
所述硬盘策略控制模块,包括:
信息上报子模块,用于当所述固态硬盘的磨损程度大于或等于第一磨损阈值时,上报缓存磨损告警信息;
第一数据读写子模块,用于当所述固态硬盘的磨损程度大于或等于第二磨损阈值时,减少所述固态硬盘的数据写入量,并且增加所述固态硬盘的数据下刷速率;
以及第二数据读写子模块,用于当固态硬盘的磨损程度大于或等于第三磨损阈值时,禁止所述固态硬盘的数据写入,并且将所述固态硬盘缓存的所有脏数据下刷至主存设备;
还包括:
数据重构模块,用于当更换所述固态硬盘时,使用其他节点的数据副本重构所述固态硬盘的缓存数据;
第二下刷控制模块,用于将所述固态硬盘的缓存数据下刷至对应的所述主存设备。
4.根据权利要求3所述的缓存管理系统,其特征在于,还包括:
备用缓存模块,用于当禁止所述固态硬盘的数据写入时,使用备用缓存接入所述主存设备进行数据的写入和下刷;
第一下刷控制模块,用于将所述ICFS的上层设备下发的数据直接下刷至所述主存设备。
CN202110744217.3A 2021-06-30 2021-06-30 一种icfs的缓存管理方法和系统 Active CN113590547B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110744217.3A CN113590547B (zh) 2021-06-30 2021-06-30 一种icfs的缓存管理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110744217.3A CN113590547B (zh) 2021-06-30 2021-06-30 一种icfs的缓存管理方法和系统

Publications (2)

Publication Number Publication Date
CN113590547A CN113590547A (zh) 2021-11-02
CN113590547B true CN113590547B (zh) 2024-02-23

Family

ID=78245726

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110744217.3A Active CN113590547B (zh) 2021-06-30 2021-06-30 一种icfs的缓存管理方法和系统

Country Status (1)

Country Link
CN (1) CN113590547B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9288077B1 (en) * 2012-09-28 2016-03-15 Emc Corporation Cluster file system with server block cache
CN108268219A (zh) * 2018-02-01 2018-07-10 杭州宏杉科技股份有限公司 一种处理io请求的方法及装置
CN111142803A (zh) * 2019-12-29 2020-05-12 北京浪潮数据技术有限公司 一种元数据刷盘方法、装置、设备及介质
CN111324304A (zh) * 2020-02-14 2020-06-23 西安奥卡云数据科技有限公司 一种基于ssd硬盘寿命预测的数据保护方法及装置
CN111708484A (zh) * 2020-05-22 2020-09-25 苏州浪潮智能科技有限公司 一种控制数据下刷速度的方法、系统、设备及介质
CN111857589A (zh) * 2020-07-16 2020-10-30 苏州浪潮智能科技有限公司 分布式存储系统中ssd缓存下刷速度控制方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8275815B2 (en) * 2008-08-25 2012-09-25 International Business Machines Corporation Transactional processing for clustered file systems

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9288077B1 (en) * 2012-09-28 2016-03-15 Emc Corporation Cluster file system with server block cache
CN108268219A (zh) * 2018-02-01 2018-07-10 杭州宏杉科技股份有限公司 一种处理io请求的方法及装置
CN111142803A (zh) * 2019-12-29 2020-05-12 北京浪潮数据技术有限公司 一种元数据刷盘方法、装置、设备及介质
CN111324304A (zh) * 2020-02-14 2020-06-23 西安奥卡云数据科技有限公司 一种基于ssd硬盘寿命预测的数据保护方法及装置
CN111708484A (zh) * 2020-05-22 2020-09-25 苏州浪潮智能科技有限公司 一种控制数据下刷速度的方法、系统、设备及介质
CN111857589A (zh) * 2020-07-16 2020-10-30 苏州浪潮智能科技有限公司 分布式存储系统中ssd缓存下刷速度控制方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种高性能高可靠的混合客户端缓存系统;李楚;冯丹;王芳;;计算机研究与发展(11);全文 *
以固态硬盘为缓存的存储技术研究;梁俊杰;熊亚军;;微电子学与计算机(01);全文 *

Also Published As

Publication number Publication date
CN113590547A (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
CN111857589B (zh) 分布式存储系统中ssd缓存下刷速度控制方法及系统
KR101702201B1 (ko) 솔리드 스테이트 드라이브(ssd)에 대한 최적화된 컨텍스트 드롭
US7490103B2 (en) Method and system for backing up data
US7971021B2 (en) Systems and methods for managing stalled storage devices
US8407403B2 (en) Extending SSD lifetime using hybrid storage
CN102782683B (zh) 用于数据库服务器的缓冲池扩展
US8745449B2 (en) Systems and methods for managing end of life in a solid state drive
US6859888B2 (en) Data storage array apparatus storing error information without delay in data access, and method, program recording medium, and program for the same
US20100293337A1 (en) Systems and methods of tiered caching
CN101145372A (zh) 用于故障数据存储的非易失存储器的盘驱动器
US20100312976A1 (en) Method and apparatus for controlling data volume creation in data storage system with dynamic chunk allocation capability
CN1821980A (zh) 用于存储修改后数据的装置、系统及方法
CN109710456B (zh) 一种数据恢复方法及装置
CN104583930A (zh) 数据迁移的方法、控制器和数据迁移装置
CN104375954A (zh) 基于工作负载实施动态的高速缓存启用和禁用
CN114265670B (zh) 一种内存块整理方法、介质及计算设备
CN113806087B (zh) 一种基于下刷速度调整业务速度的方法和装置
CN104063184B (zh) 磁盘记录方法及其非易失性存储媒体与电子装置
CN115328407A (zh) 一种缓存盘更换方法、装置、设备、存储介质
US20180276142A1 (en) Flushes after storage array events
CN113590547B (zh) 一种icfs的缓存管理方法和系统
US20230297257A1 (en) Resiliency and performance for cluster memory
EP3742297A1 (en) Data processing
CN113434296B (zh) 缓存回刷方法、装置、电子设备及存储介质
CN115993932A (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
GR01 Patent grant
GR01 Patent grant