基于分层存储的写操作控制方法、系统、装置及存储介质制造方法及图纸

技术编号:18397924 阅读:20 留言:0更新日期:2018-07-08 19:05
本发明专利技术公开了一种基于分层存储的写操作控制方法、系统、装置及存储介质,包括:在接收到写操作请求时,判断待写入数据对应的base池的类型;如果base池为纠删池,则判断写操作请求对应的写操作的类型,当写操作为覆盖写时,将待写入数据写入cache池,并把待写入数据以纠删的形式写入base池;如果base池为副本池,则将待写入数据写入cache池,并把待写入数据以副本的形式写入base池。本申请中达到base池类型和写操作类型的预设标准时,使得cache池和base池中保存的这部分待写入数据是一致的,降低了cache池使用空间到达水位时的数据迁移压力,使文件系统保持一个较平滑的性能,提升了用户体验。

【技术实现步骤摘要】
基于分层存储的写操作控制方法、系统、装置及存储介质
本专利技术涉及存储
,特别是涉及一种基于分层存储的写操作控制方法、系统、装置及存储介质。
技术介绍
随着类似于SSD(SolidStateDrives,固态硬盘)这样的高性能存储设备的出现,分层存储技术在企业存储市场中变得越来越重要。分层存储通过使用性能高的存储设备作为缓存池(cache池)存放热点数据、性能低容量高的存储设备作为后备池(base池)存放冷数据来提升分布式文件系统整体的性能。在writeback模式中,对于写请求,客户端将数据写入缓存池就返回,缓存池的使用空间达到预设的水位阈值时,执行数据迁移操作,将缓存池中存储的变冷的数据刷到后备池,然后把它们从缓存池中移除。可见,现有技术中,对于writeback模式,初始写入时,分布式文件系统的性能很高,然而当缓存池的使用空间到达水位时,数据要迁移到后备池,数据迁移压力较大,再加上客户端的读写压力,严重降低了访问性能。因此如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
技术实现思路
本专利技术的目的是提供一种基于分层存储的写操作控制方法、系统、装置及存储介质,达到base池类型和写操作类型的预设标准时,使得cache池和base池中保存的这部分待写入数据是一致的,降低了cache池使用空间到达水位时的数据迁移压力,使文件系统保持一个较平滑的性能,提升了用户体验。为解决上述技术问题,本专利技术提供了一种基于分层存储的写操作控制方法,包括:在接收到写操作请求时,判断待写入数据对应的base池的类型;如果所述base池为纠删池,则判断所述写操作请求对应的写操作的类型,当所述写操作为覆盖写时,将所述待写入数据写入cache池,并把所述待写入数据以纠删的形式写入所述base池;如果所述base池为副本池,则将所述待写入数据写入cache池,并把所述待写入数据以副本的形式写入所述base池。优选地,所述判断所述写操作请求对应的写操作的类型的过程具体为:在do_op调用init_op_flags函数获取所述写操作请求对应的写操作的类型。优选地,所述把所述待写入数据以纠删或副本的形式写入所述base池的过程具体为:调用do_proxy_write函数直接把所述待写入数据以纠删或副本的形式写入所述base池。优选地,所述调用do_proxy_write函数直接把所述待写入数据以纠删或副本的形式写入所述base池之前,该方法还包括:调用maybe_handle_cache函数封装maybe_handle_cache_detail函数;调用所述maybe_handle_cache_detail函数引入代理写入模式。为解决上述技术问题,本专利技术还提供了一种基于分层存储的写操作控制系统,包括:判断模块,用于在接收到写操作请求时,判断待写入数据对应的base池的类型;如果所述base池为纠删池,则触发纠删代理写入单元,如果所述base池为副本池,则触发副本代理写入单元;所述纠删代理写入单元,用于判断所述写操作请求对应的写操作的类型,当所述写操作为覆盖写时,将所述待写入数据写入cache池,并把所述待写入数据以纠删的形式写入所述base池;所述副本代理写入单元,用于将所述待写入数据写入cache池,并把所述待写入数据以副本的形式写入所述base池。优选地,所述纠删代理写入单元具体用于在do_op调用init_op_flags函数获取所述写操作请求对应的写操作的类型。优选地,所述纠删代理写入单元或所述副本代理写入单元具体用于调用do_proxy_write函数直接把所述待写入数据以纠删或副本的形式写入所述base池。优选地,该系统还包括调用单元,用于调用maybe_handle_cache函数封装maybe_handle_cache_detail函数;调用所述maybe_handle_cache_detail函数引入代理写入模式。为解决上述技术问题,本专利技术还提供了一种基于分层存储的写操作控制装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述任一项所述写操作控制方法的步骤。为解决上述技术问题,本专利技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述写操作控制方法的步骤。本专利技术提供了一种基于分层存储的写操作控制方法,包括:在接收到写操作请求时,判断待写入数据对应的base池的类型;如果base池为纠删池,则判断写操作请求对应的写操作的类型,当写操作为覆盖写时,将待写入数据写入cache池,并把待写入数据以纠删的形式写入base池;如果base池为副本池,则将待写入数据写入cache池,并把待写入数据以副本的形式写入base池。相比于现有技术中分布式文件系统初始性能高后续性能低,本申请中客户端向cache池发起写操作,达到base池类型和写操作类型的预设标准时,将待写入数据写入cache池,同时把待写入数据写入base池,使得cache池和base池中保存的这部分数据是一致的,从而降低了cache池使用空间到达水位时的数据迁移压力,使分布式文件系统保持一个较平滑的性能,提升了用户体验。本专利技术还提供了一种基于分层存储的写操作控制系统、装置及存储介质,与上述写操作控制方法具有相同的有益效果。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的一种基于分层存储的写操作控制方法的过程流程图;图2为本专利技术提供的一种基于分层存储的写操作控制系统的结构示意图。具体实施方式本专利技术的核心是提供一种基于分层存储的写操作控制方法、系统、装置及存储介质,达到base池类型和写操作类型的预设标准时,使得cache池和base池中保存的这部分待写入数据是一致的,降低了cache池使用空间到达水位时的数据迁移压力,使文件系统保持一个较平滑的性能,提升了用户体验。为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参照图1,图1为本专利技术提供的一种基于分层存储的写操作控制方法的过程流程图,该方法包括:步骤S11:在接收到写操作请求时,判断待写入数据对应的base池的类型;需要说明的是,分层存储,又称为分级存储,可将存储空间划分为不同的存储级别,根据分层存储管理策略将数据存放在不同的存储级别上,满足用户对处理速度、传输带宽和存储容量的多样需求,以达到合理利用存储空间、提升存储系统访问性能、降低总体部署成本的目的。配置分层功能时需要建立不同的磁盘池,来配置不同类型的存储介质。基于此,分层存储的分布式文件系统至少需要3个池子,1个元数据池,1个后备池,1个缓存池,其中,1个池子对应一种冗本文档来自技高网...

【技术保护点】
1.一种基于分层存储的写操作控制方法,其特征在于,包括:在接收到写操作请求时,判断待写入数据对应的base池的类型;如果所述base池为纠删池,则判断所述写操作请求对应的写操作的类型,当所述写操作为覆盖写时,将所述待写入数据写入cache池,并把所述待写入数据以纠删的形式写入所述base池;如果所述base池为副本池,则将所述待写入数据写入cache池,并把所述待写入数据以副本的形式写入所述base池。

【技术特征摘要】
1.一种基于分层存储的写操作控制方法,其特征在于,包括:在接收到写操作请求时,判断待写入数据对应的base池的类型;如果所述base池为纠删池,则判断所述写操作请求对应的写操作的类型,当所述写操作为覆盖写时,将所述待写入数据写入cache池,并把所述待写入数据以纠删的形式写入所述base池;如果所述base池为副本池,则将所述待写入数据写入cache池,并把所述待写入数据以副本的形式写入所述base池。2.根据权利要求1所述的写操作控制方法,其特征在于,所述判断所述写操作请求对应的写操作的类型的过程具体为:在do_op调用init_op_flags函数获取所述写操作请求对应的写操作的类型。3.根据权利要求1所述的写操作控制方法,其特征在于,所述把所述待写入数据以纠删或副本的形式写入所述base池的过程具体为:调用do_proxy_write函数直接把所述待写入数据以纠删或副本的形式写入所述base池。4.根据权利要求3所述的写操作控制方法,其特征在于,所述调用do_proxy_write函数直接把所述待写入数据以纠删或副本的形式写入所述base池之前,该方法还包括:调用maybe_handle_cache函数封装maybe_handle_cache_detail函数;调用所述maybe_handle_cache_detail函数引入代理写入模式。5.一种基于分层存储的写操作控制系统,其特征在于,包括:判断模块,用于在接收到写操作请求时,判断待写入数据对应的base池的类型;如果所述base池为纠...

【专利技术属性】
技术研发人员:贺计文
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1