云存储客户端多路恒定速率io缓存的构建方法及装置的制造方法

文档序号:9667078阅读:283来源:国知局
云存储客户端多路恒定速率io缓存的构建方法及装置的制造方法
【技术领域】
[0001] 本发明涉及计算机存储领域,更具体地说,涉及一种云存储客户端多路恒定速率 ?ο缓存的构建方法及装置。
【背景技术】
[0002] 随着因特网的蓬勃发展和社会的数字化变革,数据爆炸式增长对存储系统提出了 巨大的挑战。传统的直连式存储难以满足日益严峻的数据存储需求,促使人们不断探索新 型的存储系统,云存储技术在这个背景下应运而生。云存储是在云计算概念上延伸和发展 出来的一个新的概念,是一种新兴的网络存储技术,是指通过集群应用、网络技术或分布 式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工 作,共同对外提供数据存储和业务访问功能的一个系统。目前比较主流的存储供应商都在 该领域投入了巨大的人力物力。
[0003] 作为解决I/O瓶颈问题的主要软件方法,缓存技术始终是存储系统的一个研究热 点。缓存技术通过将数据暂存在相对高速的存储器中,可以提高后续的重复访问速度。由 于缓存的容量通常远远小于I/O路径中下一级存储器的容量,当缓存满了以后,需要在一 个恰当的时机选择恰当的数据进行淘汰,回收缓存空间以存储新的数据。这种选择的依据 就是缓存替换策略,是影响缓存性能的关键因素。但是在流媒体,视频监控,广播电视行业 中经常需要庞大的10并发,而且每一路10需要恒定的码流,而传统的云存储系统无法支撑 该特殊需求。
[0004] 因此,如何构建高效的缓存,从而对每个文件的10进行并发控制和缓存是现在需 要解决的问题。

【发明内容】

[0005] 本发明的目的在于提供一种云存储客户端多路恒定速率10缓存的构建方法及 装,以实现构建高效的缓存,从而对每个文件的10进行并发控制和缓存。
[0006] 为实现上述目的,本发明实施例提供了如下技术方案:
[0007] -种云存储客户端多路恒定速率10缓存的构建方法,包括:
[0008] 将多个文件并行写入相应的目标缓存节点中;
[0009] 判断每个文件的缓存值是否大于第一缓存阈值;其中,所述第一缓存阈值为动态 获得的每个节点的缓存阈值;
[0010] 若是,则确定缓存值大于所述第一缓存阈值的文件所对应的第一缓存节点,并按 照第一预定替换规则释放所述第一缓存节点中的第一预存文件;
[0011] 判断所述多个文件的总缓存值是否大于第二缓存阈值;其中,所述第二缓存阈值 为云存储客户端的总缓存阈值;
[0012] 若是,则按照第二预定规则释放第二缓存节点中的第二预存文件。
[0013] 优选的,所述确定缓存值大于所述第一缓存阈值的文件所对应的第一缓存节点, 并按照第一预定替换规则释放所述第一缓存节点中的第一预存文件,包括:
[0014] 根据LRU算法,确定所述第一缓存节点的双向循环链表中尾部的预存文件为所述 第一预存文件,并释放所述第一预存文件的数据块;和/或,
[0015] 计算所述第一缓存节点中预存文件的保留度,确定保留度最小的预存文件为所述 第一预存文件,并释放所述第一预存文件的数据块。
[0016] 优选的,所述按照第二预定规则释放第二缓存节点中的第二预存文件,包括:
[0017] 根据LRU算法,确定所有缓存节点的双向循环链表中的尾部的预存文件为所述第 二预存文件,并释放所述第二预存文件的数据块;和/或,
[0018] 计算所有缓存节点中预存文件的保留度,确定保留度最小的预存文件为所述第二 预存文件,并释放所述第二文件的数据块。
[0019] 优选的,保留度的计算方法,包括:
[0020] 根据预存文件的最近访问时间和访问频率,计算第一参数;
[0021] 根据预存文件所占内存值,计算第二参数;其中,所述第二参数与预存文件所占内 存值成反比;
[0022] 根据所述第一参数和所述第二参数,计算所述保留度。
[0023] -种云存储客户端多路恒定速率10缓存的构建装置,包括:
[0024] 写入模块,用于将多个文件并行写入相应的目标缓存节点中;
[0025] 第一判断模块,用于判断每个文件的缓存值是否大于第一缓存阈值;其中,所述第 一缓存阈值为动态获得的每个节点的缓存阈值;
[0026] 若是,则触发第一释放模块;
[0027] 所述第一释放模块,用于确定缓存值大于所述第一缓存阈值的文件所对应的第一 缓存节点,并按照第一预定替换规则释放所述第一缓存节点中的第一预存文件;
[0028] 第二判断模块,用于判断所述多个文件的总缓存值是否大于第二缓存阈值;其中, 所述第二缓存阈值为云存储客户端的总缓存阈值;
[0029] 若是,则触发第二释放模块;
[0030] 所述第二释放模块,用于按照第二预定规则释放第二缓存节点中的第二预存文 件。
[0031] 优选的,所述第一释放模块,包括:
[0032] 第一释放单元,用于根据LRU算法,确定所述第一缓存节点的双向循环链表中尾 部的预存文件为所述第一预存文件,并释放所述第一预存文件的数据块;
[0033] 第二释放单元,用于计算所述第一缓存节点中预存文件的保留度,确定保留度最 小的预存文件为所述第一预存文件,并释放所述第一预存文件的数据块。
[0034] 优选的,所述第二释放模块,包括:
[0035] 第三释放单元,用于根据LRU算法,确定所有缓存节点的双向循环链表中的尾部 的预存文件为所述第二预存文件,并释放所述第二预存文件的数据块;
[0036] 第四释放单元,用于计算所有缓存节点中预存文件的保留度,确定保留度最小的 预存文件为所述第二预存文件,并释放所述第二文件的数据块。
[0037] 优选的,所述构建装置包括保留度计算模块;其中,所述保留度计算模块包括:
[0038] 第一计算单元,用于根据预存文件的最近访问时间和访问频率,计算第一参数;
[0039] 第二计算单元,用于根据预存文件所占内存值,计算第二参数;其中,所述第二参 数与预存文件所占内存值成反比;
[0040] 第三计算单元,用于根据所述第一参数和所述第二参数,计算所述保留度。
[0041] 通过以上方案可知,本发明实施例提供的一种云存储客户端多路恒定速率10缓 存的构建方法及装置,包括:将多个文件并行写入相应的目标缓存节点中;判断每个文件 的缓存值是否大于第一缓存阈值;其中,所述第一缓存阈值为动态获得的每个节点的缓存 阈值;若是,则确定缓存值大于所述第一缓存阈值的文件所对应的第一缓存节点,并按照第 一预定替换规则释放所述第一缓存节点中的第一预存文件;判断所述多个文件的总缓存 值是否大于第二缓存阈值;其中,所述第二缓存阈值为云存储客户端的总缓存阈值;若是, 则按照第二预定规则释放第二缓存节点中的第二预存文件,可见,本实施例通过将多个文 件并行写入相应的目标缓存节点中,并通过将缓存节点中的预存文件按照预定规则进行替 换,构建了高效的缓存,能对每个文件的10进行并发控制和缓存。
【附图说明】
[0042] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0043] 图1为本发明实施例公开的一种云存储客户端多路恒定速率10缓存的构建方法 流程示意图;
[0044] 图2为本发明实施例公开的缓存节点的双向循环链表示意图;
[0045] 图3为本发明实施例公开的客户端中缓存节点的双向循环链表示意图;
[0046] 图4为本发明实施例公开的一种云存储客户端多路恒定速率10缓存的构建装置 结构示意图。
【具体实施方式】
[0047] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0048] 本发明实施例公开了一种云存储客户端多路恒定速率10缓存的构建方法及装, 以实现构建高效的缓存,从而对每个文件的10进
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1