[发明专利]一种基于文件预测的分布式缓存模型有效
申请号: | 201310703851.8 | 申请日: | 2013-12-10 |
公开(公告)号: | CN103795781A | 公开(公告)日: | 2014-05-14 |
发明(设计)人: | 陈莉君;张胜利 | 申请(专利权)人: | 西安邮电大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 710061 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 文件 预测 分布式 缓存 模型 | ||
技术领域
本发明涉及一种基于文件预测的分布式缓存模型,属于计算机技术领域。
背景技术
随着处理器的高速发展,I/O与处理器之间的鸿沟越来越大,低下的I/O速度严重影响了分布式存储的性能,缓存与预取技术的发展从软件角度提升了I/O性能。预取可改善系统I/O的两个主要性能指标:利用异步预取在程序使用文件之前将文件准备就绪,可对应用程序隐藏磁盘I/O延时;将小粒度读取合并为大粒度读取,可提高磁盘有效利用率和I/O吞吐量。
利用大量廉价PC搭起来的分布式存储系统中,同时具备了单机中的磁盘I/O瓶颈和网络带宽的瓶颈,从数据库中查找数据也是一个重要延时因素。典型的分布式缓存系统如Oracle coherence,Memcached,Terracotta,此类分布式缓存对网格中的缓存资源进行统一管理,支持在线扩展以及数据分布均衡等功能,从数据管理方面来讲可认为是从系统层面对时间局部性强的数据进行缓存。缓存也可以从应用程序角度对数据的读取操作进行优化,根据应用程序使用文件的规律,预测将要使用的文件并提前异步读入,在程序使用文件时便可降低访问延时,一种基于用户的LNS文件预测模型、一种识别I_OFeature的文件预测模型就属于此类型缓存策略。
数据的访问请求并非完全随机,它是由用户或程序的行为驱动,用户执行某种应用程序去访问数据,连续访问的不同文件之间必然存在一定的关联。可构造一种文件预测模型,通过对数据本体间的内在联系或者历史访问记录进行分析并构造出预测数据库,依预测数据对文件进行异步预读取并缓存,当应用程序使用这些数据时,便可大幅度减少数据的访问延时,同时也减少了网络空闲时间,提升了网络使用效率。
发明内容
本发明的目的在于提供一种基于文件预测的分布式缓存模型DLSDCM(DLS based distribute cache model),此模型以客户端文件预测模型为基础进行文件预测,从服务器角度对分布式网络中所有用户请求进行统筹调度,在提高客户端吞吐量和数据访问的同时又不会影响其它客户的数据访问。
为了实现上述目的,本发明的技术方案如下。
一种基于文件预测的分布式缓存模型,所述缓存模型建立在分布式文件系统之上,每个客户端维护本机之上的DLS文件预测数据,每次读请求时,同时预读DLS文件预测模型中预测的读请求目标文件之后的两个文件;服务器端维护两个队列:读请求队列和预读请求队列,其中读请求队列的优先级高于预读请求队列,即只要读请求队列不为空,预读请求队列就处于等待状态;
DLSDCM的实现分为两部分:客户端的实现和服务器端的实现;每个客户端独立维护一份文件预测数据,预测数据中每个数据节点包括文件名、两个预读文件名以及每个预读文件所命中的次数,每次读请求时都根据文件预测数据节点中预测的文件进行异步预读;服务器端负责客户端的读请求调度和预读请求调度;
其中,所述DLSDCM客户端的实现是根据DLS文件预测模型所预测的数据进行文件的预读,并将过大的数据存储于本地磁盘;一次读请求的系统执行过程如下:
①读取存储于磁盘的DLS文件预测数据;
②申请大小数据一定量(大小视具体软硬件而定,能手动修改)内存作为读请求缓存和预读请求缓存,在磁盘上创建缓存目录;
⑧遍历DLS文件预测数据节点:若数据节点中无本次读请求文件对应的数据则向服务器发送读请求,创建数据节点并插入文件预读数据,并将本次读请求文件名写入上一次读请求文件名对应的预测数据节点中,并替换其中命中次数较少的预测文件;若预测数据中存在本次读请求文件,则检查读请求文件是否存在于预读请求缓存或磁盘缓存目录中:
A、读请求文件存在于缓存并且数据仍未传输完成,则向服务器发送信号把该文件预读请求改为读请求,终止另一个预读文件的数据传输,并将预测数据中上一次读请求文件对应的预读数据节点中本次读请求文件的命中次数+1操作;
B、读请求文件存在于缓存并且文件已传输完毕,则将预测数据中上一次读请求文件对应的预读数据节点中本次读请求文件的命中次数+1操作;
C、读请求文件不存在于缓存中且预读文件正在传输,则向服务器发信号中断正在传输的数据,将缓存空间清零并发送本次读请求和预读请求;
D、读请求文件不存在于缓存中且预读文件已传输完毕,则将缓存空间清零并发送本次读请求和预读请求;
④当预读文件大于内存缓存大小时,将预读文件写入磁盘缓存目录:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安邮电大学,未经西安邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310703851.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:存储资源调度方法及存储计算系统
- 下一篇:终端安全设备精简配置管理方法与系统