• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 10
    • 下载费用:30 金币  

    重庆时时彩一直输: 一种基于固态盘的文件更新方法及系统.pdf

    关 键 词:
    一种 基于 固态 文件 更新 方法 系统
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201611176282.6

    申请日:

    2016.12.19

    公开号:

    CN106802923A

    公开日:

    2017.06.06

    当前法律状态:

    实审

    有效性:

    审中

    法律详情: 实质审查的生效IPC(主分类):G06F 17/30申请日:20161219|||公开
    IPC分类号: G06F17/30 主分类号: G06F17/30
    申请人: 华中科技大学
    发明人: 万继光; 陶志; 徐鹏; 汤陈蕾; 谭志虎; 谢长生
    地址: 430074 湖北省武汉市洪山区珞喻路1037号
    优先权:
    专利代理机构: 华中科技大学专利中心 42201 代理人: 李智
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201611176282.6

    授权公告号:

    |||

    法律状态公告日:

    2017.06.30|||2017.06.06

    法律状态类型:

    实质审查的生效|||公开

    摘要

    本发明公开了一种基于固态盘的文件更新方法及系统,针对文件的修改操作,文件系统在文件索引节点inode中添加修改记录,在文件执行修改操作时在修改记录中添加修改信息,在修改文件时,只需将修改的文件部分写入固态盘即可,减少了写入固态盘的数据量,减少了文件写入消耗的时间,提高了文件应用的性能。并且较少的数据量写入可以减少固态盘异地更新引起的写放大,延长固态盘的寿命。

    权利要求书

    1.一种基于固态盘的文件更新方法,其特征在于,包括:
    (1)文件应用向待修改文件中删除和/或插入一段数据;
    (2)存储系统读取该待修改文件的索引节点inode,并放置到内存中;
    (3)将对待修改文件的修改记录添加到inode中,其中,对于待修改文件的插入操作,将
    在待修改文件中的插入位置、待插入数据的物理地址以及待插入数据的长度写入修改记
    录,对于待修改文件的删除操作,将在待修改文件中的删除位置以及待删除数据的长度写
    入修改记录,即将待删除的数据部分标记为删除状态;
    (4)在内存中写入待插入的数据和/或删除待删除的数据;
    (5)将对待修改文件的修改部分写回到固态硬盘SSD中与inode中的修改记录对应的位
    置,其中,修改部分包括内存中写入的待插入数据和/或删除待删除的数据。
    2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当对修改后的文件执行读取操作时,读取inode中的修改记录中的修改信息,判断对文
    件的修改类型是插入操作还是删除操作;
    若是删除操作,则跳过从删除位置开始的长度为待删除数据长度的数据,获取剩余位
    置处的数据;
    若是插入操作,则读取到文件的插入位置时,先读取从待插入数据的物理地址开始的
    长度为待插入数据的长度的数据,然后从插入位置的下一位置处继续读取数据。
    3.一种基于固态盘的文件更新系统,其特征在于,包括:
    文件修改???,用于通过文件应用向待修改文件中删除和/或插入一段数据;
    inode读取???,用于通过存储系统读取该待修改文件的索引节点inode,并放置到内
    存中;
    修改记录添加???,用于将对待修改文件的修改记录添加到inode中,其中,对于待修
    改文件的插入操作,将在待修改文件中的插入位置、待插入数据的物理地址以及待插入数
    据的长度写入修改记录,对于待修改文件的删除操作,将在待修改文件中的删除位置以及
    待删除数据的长度写入修改记录,即将待删除的数据部分标记为删除状态;
    内存数据修改???,用于在内存中写入待插入的数据和/或删除待删除的数据;
    固态硬盘数据修改???,用于将对待修改文件的修改部分写回到固态硬盘SSD中与
    inode中的修改记录对应的位置,其中,修改部分包括内存中写入的待插入数据和/或删除
    待删除的数据。
    4.根据权利要求3所述的系统,其特征在于,所述系统还包括:
    判断???,用于当对修改后的文件执行读取操作时,读取inode中的修改记录中的修改
    信息,判断对文件的修改类型是插入操作还是删除操作;
    第一判断处理???,用于在是删除操作时,跳过从删除位置开始的长度为待删除数据
    长度的数据,获取剩余位置处的数据;
    第二判断处理???,用于在是插入操作时,读取到文件的插入位置时,先读取从待插入
    数据的物理地址开始的长度为待插入数据的长度的数据,然后从插入位置的下一位置处继
    续读取数据。

    说明书

    一种基于固态盘的文件更新方法及系统

    技术领域

    本发明属于数据存储技术领域,更具体地,涉及一种基于固态盘的文件更新方法
    及系统。

    背景技术

    闪存是一种非易失的存储器,基于闪存的固态盘具有高性能、低功耗、高可靠等诸
    多优点,一出现就迅速得到学术界和工业界的接受和重视,逐渐成为计算机存储系统的重
    要组成部分。近年来,闪存技术得到了长足的发展,随着制造技术的不断进步,闪存存储器
    在容量上得到了提升,单位价格也有所下降。闪存芯片的部署正在从移动设备中走到个人
    计算机以及大规模数据中心中去。

    针对文件的更新操作,传统的处理方法是将整个文件读取到内存中,添加待插入
    的数据或者删除数据,然后将整个文件写回到磁盘中。特别地,如果对MB级甚至GB级的大文
    件仅仅修改几个bit,会产生很大的写放大。

    发明内容

    针对现有技术的以上缺陷或改进需求,本发明提供了一种基于固态盘的文件更新
    方法及系统,可以支持对文件的插入和删除,并且对文件中已有数据的修改,可以结合插入
    和删除实现。由此解决现有技术文件系统中文件更新造成的写放大的技术问题。

    为实现上述目的,按照本发明的一个方面,提供了一种基于固态盘的文件更新方
    法,包括:

    (1)文件应用向待修改文件中删除和/或插入一段数据;

    (2)存储系统读取该待修改文件的索引节点inode,并放置到内存中;

    (3)将对待修改文件的修改记录添加到inode中,其中,对于待修改文件的插入操
    作,将在待修改文件中的插入位置、待插入数据的物理地址以及待插入数据的长度写入修
    改记录,对于待修改文件的删除操作,将在待修改文件中的删除位置以及待删除数据的长
    度写入修改记录,即将待删除的数据部分标记为删除状态;

    (4)在内存中写入待插入的数据和/或删除待删除的数据;

    (5)将对待修改文件的修改部分写回到固态硬盘SSD中与inode中的修改记录对应
    的位置,其中,修改部分包括内存中写入的待插入数据和/或删除待删除的数据。

    优选地,所述方法还包括:

    当对修改后的文件执行读取操作时,读取inode中的修改记录中的修改信息,判断
    对文件的修改类型是插入操作还是删除操作;

    若是删除操作,则跳过从删除位置开始的长度为待删除数据长度的数据,获取剩
    余位置处的数据;

    若是插入操作,则读取到文件的插入位置时,先读取从待插入数据的物理地址开
    始的长度为待插入数据的长度的数据,然后从插入位置的下一位置处继续读取数据。

    按照本发明的另一方面,提供了一种基于固态盘的文件更新系统,包括:

    文件修改???,用于通过文件应用向待修改文件中删除和/或插入一段数据;

    inode读取???,用于通过存储系统读取该待修改文件的索引节点inode,并放置
    到内存中;

    修改记录添加???,用于将对待修改文件的修改记录添加到inode中,其中,对于
    待修改文件的插入操作,将在待修改文件中的插入位置、待插入数据的物理地址以及待插
    入数据的长度写入修改记录,对于待修改文件的删除操作,将在待修改文件中的删除位置
    以及待删除数据的长度写入修改记录,即将待删除的数据部分标记为删除状态;

    内存数据修改???,用于在内存中写入待插入的数据和/或删除待删除的数据;

    固态硬盘数据修改???,用于将对待修改文件的修改部分写回到固态硬盘SSD中
    与inode中的修改记录对应的位置,其中,修改部分包括内存中写入的待插入数据和/或删
    除待删除的数据。

    优选地,所述系统还包括:

    判断???,用于当对修改后的文件执行读取操作时,读取inode中的修改记录中的
    修改信息,判断对文件的修改类型是插入操作还是删除操作;

    第一判断处理???,用于在是删除操作时,跳过从删除位置开始的长度为待删除
    数据长度的数据,获取剩余位置处的数据;

    第二判断处理???,用于在是插入操作时,读取到文件的插入位置时,先读取从待
    插入数据的物理地址开始的长度为待插入数据的长度的数据,然后从插入位置的下一位置
    处继续读取数据。

    总体而言,通过本发明所构思的以上技术方案与现有技术相比,主要有以下的技
    术优点:

    1、修改文件时,只需将待修改的文件部分写入固态盘,减少了写入固态盘的数据
    量。

    2、由于只写入修改部分的数据,减少了文件写入消耗的时间,提高了文件应用的
    性能。

    3、由于闪存单元的擦除次数有限,较少的数据量写入可以减少固态盘异地更新引
    起的写放大,延长固态盘的寿命。

    附图说明

    图1为本发明实施例公开的一种基于固态盘的文件更新方法的流程示意图;

    图2为文件inode的结构示意图;

    图3为本发明实施例公开的一种基于固态盘的文件更新流程的交互结构示意图;

    图4为插入数据前的数据布局;

    图5为插入数据后的数据布局;

    图6为删除数据前的数据布局;

    图7为删除数据后的数据布局;

    图8为修改数据之前的数据布局;

    图9为修改数据之后的数据布局;

    图10为更新缓存前的数据布局;

    图11为更新缓存后的数据布局;

    图12为本发明实施例公开的一种基于固态盘的文件更新系统的结构示意图。

    具体实施方式

    为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对
    本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并
    不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要
    彼此之间未构成冲突就可以相互组合。

    图1是本发明实施例公开的一种基于固态盘的文件更新方法的流程示意图,在图1
    所示的方法中,包括以下步骤:

    (1)文件应用向待修改文件中删除和/或插入一段数据;

    (2)存储系统读取该待修改文件的索引节点inode,并放置到内存中;

    (3)将对待修改文件的修改记录添加到inode中,其中,对于待修改文件的插入操
    作,将在待修改文件中的插入位置、待插入数据的物理地址以及待插入数据的长度写入修
    改记录,对于待修改文件的删除操作,将在待修改文件中的删除位置以及待删除数据的长
    度写入修改记录,即将待删除的数据部分标记为删除状态;

    为了减少由修改文件数据导致的写放大,可以通过在元数据层修改指针来降低写
    的数据量。在索引节点inode中添加了修改记录ModificationRecords用于记录对文件的修
    改信息。如图2所示,修改记录中的修改项是<operation,*addr1,*addr2,length>四元组的
    形式,其中operation分为两种状态插入INSERT和删除DELETE,表示对文件的修改是插入数
    据还是删除数据。*addr1表示对文件修改的位置,*addr2表示插入数据的物理地址。对于
    INSERT状态,len表示待插入数据的长度;对于DELETE状态,len表示待删除数据的长度,即
    将被删除的部分标记为删除状态。

    (4)在内存中写入待插入的数据和/或删除待删除的数据;

    (5)将对待修改文件的修改部分写回到固态硬盘SSD中与inode中的修改记录对应
    的位置,其中,修改部分包括内存中写入的待插入数据和/或删除待删除的数据。

    为了方便对本发明实施例公开的一种基于固态盘的文件更新方法的理解,以下分
    别进行具体的举例说明。

    图3为本发明实施例公开的一种基于固态盘的文件更新方法的流程的交互结构示
    意图,在对文件进行插入操作时,在元数据中的修改记录添加修改信息,只需要写入插入数
    据就能完成对文件的修改,达到了降低写放大的目的。以图4为例,是向一个文件中插入数
    据的具体过程。如图4中所示,在插入数据之前,该文件由4096*4字节的数据内容,由4个指
    针指向这4个数据页。如图5中所示,插入大小为100字节的数据之后,该文件指向数据的指
    针多出一项,修改记录中的项记录了添加这个指针的修改信息。而多出的指针指向的数据
    页P5,包含插入的100字节数据。以这种方式只需要写入一个4KB大小的数据页和一个指针,
    即可完成对文件的修改,相比于重新写入数据大大降低了写放大。

    当需要删除文件中的一段数据时,我们只需要在inode中的修改记录中添加一条
    删除数据的记录,即将待删除数据标记为删除状态,并不是物理意义上的删除。删除数据前
    的数据布局如图6所示,删除数据后的数据布局如图7所示。

    当需要对文件做修改时,我们可以将插入和删除结合起来达到修改文件的目的。
    如图8所示,是通过插入和删除来修改文件的实例。图8是插入数据前的数据布局,该文件由
    4096*4字节的数据内容,由4个指针指向这4个数据页。我们对闪存页P2上的数据进行修改,
    首先我们读取P2上的数据到内存中,修改数据,写入到一个新的闪存页P5,然后将P2所在的
    闪存页标记为删除,最后更新元数据中指向数据的指针即可。修改文件之后的数据布局如
    图9所示。

    当对修改后的文件执行读取操作时,我们需要读取inode中的修改记录中的项,根
    据operation的类型判断对文件执行了插入操作还是删除操作。若是删除操作,则需要跳
    过*addr1开始长度为len的数据,获取剩余位置的数据;若是插入操作,则读取到文件的*
    addr1位置时,先读取*addr2开始长度为len的数据,然后再从*addr1+1处继续读取数据。

    如图10所示,由于为了避免写入过多的数据在元数据中添加了指向待插入数据的
    指针,导致缓存cache中的数据和实际数据不一致。因此,需要更新缓存保证数据的一致性。
    一种可行的方式是,通过更新缓存中的数据页,将新插入的数据插入到缓存中的对应位置,
    但是这种方式相对复杂,会增加写操作的开销。本发明实施例提出一种简单高效的方法,当
    因为元数据中添加指针导致缓存中数据不一致时,将缓存中的数据全部释放掉,然后从固
    态硬盘SSD上重新读取数据,更新缓存后的数据布局如图11所示。由于SSD具有读写的不对
    称性,读性能比写性能要好,可以很快重新缓存数据,同时不会占据SSD有限的写带宽。

    如图12所示为本发明实施例公开的一种基于固态盘的文件更新系统,在图12所示
    的系统中包括以下??椋?br />

    文件修改???,用于通过文件应用向待修改文件中删除和/或插入一段数据;

    inode读取???,用于通过存储系统读取该待修改文件的索引节点inode,并放置
    到内存中;

    修改记录添加???,用于将对待修改文件的修改记录添加到inode中,其中,对于
    待修改文件的插入操作,将在待修改文件中的插入位置、待插入数据的物理地址以及待插
    入数据的长度写入修改记录,对于待修改文件的删除操作,将在待修改文件中的删除位置
    以及待删除数据的长度写入修改记录,即将待删除的数据部分标记为删除状态;

    内存数据修改???,用于在内存中写入待插入的数据和/或删除待删除的数据;

    固态硬盘数据修改???,用于将对待修改文件的修改部分写回到固态硬盘SSD中
    与inode中的修改记录对应的位置,其中,修改部分包括内存中写入的待插入数据和/或删
    除待删除的数据。

    本发明所述的基于固态盘的文件更新方法及系统,其基本思想是在元数据中的修
    改记录添加修改信息,只需要写入插入数据就能完成对文件的修改,达到了降低写放大的
    目的。具体修改信息的记录会有多种,凡是采用本发明的设计结构和思路,做一些简单的变
    化或更改的设计,都落入本发明?;さ姆段?。

    本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以
    限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含
    在本发明的?;し段е?。

       内容来自专利网重庆时时彩单双窍门 www.4mum.com.cn转载请标明出处

    关于本文
    本文标题:一种基于固态盘的文件更新方法及系统.pdf
    链接地址://www.4mum.com.cn/p-6001348.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 黑马股票推荐分析 单双中特规律公式 河北11选50 足球指数返还率 网络棋牌游戏平台哪个最赚钱 股票基金排名 贵州十一选五任选基本走势 神龙坛二肖中特期期准 天易棋牌 曼秀雷敦 2018年十一月黄道吉日 宁波麻将七百搭清一色 000157个股资料股票行情 中国重庆幸运农场 合肥2017彩票中奖信息 上次福彩中奖号码 生肖时时彩技巧