缓存的读取、读取处理方法及装置制造方法及图纸

技术编号:13306820 阅读:73 留言:0更新日期:2016-07-10 02:07
本发明专利技术提供了一种缓存的读取、读取处理方法及装置,其中,所述读取方法包括:发送对本地文件系统中多个数据块的读取请求;在判定所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,读取所述多个数据块中的下一个数据块。采用本发明专利技术提供的上述技术方案,解决了相关技术中,由于数据块的访问方式以顺序访问流的形式而导致的内存资源无法合理利用的问题,实现了异步获取多个数据块的过程,进而快速提升获取数据块的速度,合理使用内存资源。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体而言,涉及一种缓存的读取、读取处理方法及装置
技术介绍
随着计算、存储、通信等技术的发展,大规模流媒体服务已经广泛的应用到娱乐、教育、商业等各个领域,如何实现大规模流媒体文件的高效存储,同时支持高并发的用户是一个非常关键的问题。本专利提出的分布式流媒体服务中的本地文件用户态缓存方法不仅可以很好的提高流媒体文件的存储效率,同时也可以很好的应用在基于分块存储的分布式存储系统中,例如淘宝文件系统(TaobaoFileSystem,简称为TFS),分布式文件系统(HadoopDistributedFileSystem,简称为HDFS)等系统中。由于视频文件较大,所以存储系统通常会将视频文件切分成固定大小的块文件(例如,切分成64MB大小的块文件)存储在后台分布式存储系统中。传统的文件系统在块文件存储上存在如下问题:传统的文件系统的缓存采用page_cache(分页缓存)的方式管理,流媒体文件的热点数据较低,空间局部性较差,数据多以顺序访问流的方式访问,容易出现缓存污染的问题,从而内存的资源无法得到合理的利用,并且通用文件系统的预取粒度并不高。针对相关技术中,由于数据块的访问方式以顺序访问流的形式而导致的内存资源无法合理利用的问题,尚未提出有效的解决方案。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种存的读取、读取处理方法及装置。根据本专利技术的一个方面,提供了一种缓存的读取方法,包括:发送对本地文件系统中多个数据块的读取请求;在判定所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,读取所述多个数据块中的下一个数据块。优选地,所述预设比例取值为1/2。优选地,发送对本地文件系统中多个数据块的读取请求之后,还包括:在所述读取请求所请求的多个数据块位于所述本地文件系统的缓存中时,接收所述本地文件系统中共享内存的标识ID;确定所述ID与所述缓存的对应关系。优选地,读取所述多个数据块中的下一个数据块,包括:根据所述对应关系确定所述缓存所对应的共享内存;通过所述共享内存中读取所述下一个数据块。优选地,将所述缓存中指定文件发生变化后产生的脏数据块同步到硬盘中。优选地,将所述缓存中指定文件发生变化后产生的脏数据块同步到硬盘中之后,包括:对所述脏数据进行更新;对更新后的脏数据块标记用于指示所述脏数据块已完成更新的标识。根据本专利技术的另一个方面,还提供了一种缓存的读取处理方法,包括:获取本地文件系统中多个数据块的读取请求;在监测到所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,发送所述多个数据块中的下一个数据块至客户端。优选地,在判断所述读取请求所请求的多个数据块未位于所述本地文件系统的缓存中时,通过所述缓存从所述本地文件系统的硬盘中获取所述多个数据块。根据本专利技术的另一个方面,还提供了一种缓存的读取装置,包括:发送模块,用于发送对本地文件系统中多个数据块的读取请求;读取模块,用于在判定所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,读取所述多个数据块中的下一个数据块。根据本专利技术的另一个方面,还提供了一种缓存的读取处理装置,包括:获取模块,用于获取本地文件系统中多个数据块的读取请求;发送模块,用于在监测到所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,发送所述多个数据块中的下一个数据块至客户端。通过本专利技术,采用在多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,就执行“读取所述多个数据块中的下一个数据块”过程的技术手段,解决了相关技术中,由于数据块的访问方式以顺序访问流的形式而导致的内存资源无法合理利用的问题,实现了异步获取多个数据块的过程,进而快速提升获取数据块的速度,合理使用内存资源。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据本专利技术实施例的缓存的读取方法的流程图;图2是根据本专利技术实施例的缓存管理系统的数据读取策略的流程图;图3为根据本专利技术实施例的缓存的读取装置的结构框图;图4为根据本专利技术实施例的缓存的读取处理方法的流程图;图5为根据本专利技术实施例的缓存的读取处理装置的结构框图;图6为根据本专利技术优选实施例的缓存的读取策略的流程图;图7为根据本专利技术优选实施例的读取策略中的数据块状态处理流程图;图8为根据本专利技术优选实施例的缓存写入策略示意图。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。为了解决上述技术问题,在本实施例中提供了一种缓存的读取方法,图1是根据本专利技术实施例的缓存的读取方法的流程图,如图1所示,包括以下步骤:步骤S102,发送对本地文件系统中多个数据块的读取请求;步骤S104,在判定上述多个数据块位于上述本地文件系统的缓存中,且上述多个数据块中的指定数据块的已读取部分的大小超过上述指定数据块大小的预设比例时,读取上述多个数据块中的下一个数据块。通过上述各个步骤,采用在多个数据块中的指定数据块的已读取部分的大小超过上述指定数据块大小的预设比例时,就执行“读取上述多个数据块中的下一个数据块”过程的技术手段,解决了相关技术中,由于数据块的访问方式以顺序访问流的形式而导致的内存资源无法合理利用的问题,实现了异步获取多个数据块的过程,进而快速提升获取数据块的速度,合本文档来自技高网
...

【技术保护点】
一种缓存的读取方法,其特征在于,包括:发送对本地文件系统中多个数据块的读取请求;在判定所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,读取所述多个数据块中的下一个数据块。

【技术特征摘要】
1.一种缓存的读取方法,其特征在于,包括:
发送对本地文件系统中多个数据块的读取请求;
在判定所述多个数据块位于所述本地文件系统的缓存中,且所述多个数据块中
的指定数据块的已读取部分的大小超过所述指定数据块大小的预设比例时,读取所
述多个数据块中的下一个数据块。
2.根据权利要求1所述的方法,其特征在于,所述预设比例取值为1/2。
3.根据权利要求1所述的方法,其特征在于,发送对本地文件系统中多个数据块的读
取请求之后,还包括:
在所述读取请求所请求的多个数据块位于所述本地文件系统的缓存中时,接收
所述本地文件系统中共享内存的标识ID;
确定所述ID与所述缓存的对应关系。
4.根据权利要求3所述的方法,其特征在于,读取所述多个数据块中的下一个数据块,
包括:
根据所述对应关系确定所述缓存所对应的共享内存;
通过所述共享内存中读取所述下一个数据块。
5.根据权利要求1所述的方法,其特征在于,
将所述缓存中指定文件发生变化后产生的脏数据块同步到硬盘中。
6.根据权利要求5所述的方法,其特征在于,将所述缓存中指定文件发生变化后产生
的脏数据块同步到硬盘中之后,包括:
对所述脏数据进行更新;对更新后的脏数据块标记用于指示所述脏数据块已完
成更新...

【专利技术属性】
技术研发人员:张广艳罗圣美唐小岚沈岩
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1