[发明专利]一种基于文件预测的分布式缓存模型有效
申请号: | 201310703851.8 | 申请日: | 2013-12-10 |
公开(公告)号: | CN103795781A | 公开(公告)日: | 2014-05-14 |
发明(设计)人: | 陈莉君;张胜利 | 申请(专利权)人: | 西安邮电大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 710061 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 文件 预测 分布式 缓存 模型 | ||
1.一种基于文件预测的分布式缓存模型,其特征在于:所述缓存模型建立在分布式文件系统之上,每个客户端维护本机之上的DLS文件预测数据,每次读请求时,同时预读DLS文件预测模型中预测的读请求目标文件之后的两个文件;服务器端维护两个队列:读请求队列和预读请求队列,其中读请求队列的优先级高于预读请求队列,即只要读请求队列不为空,预读请求队列就处于等待状态;
DLSDCM的实现分为两部分:客户端的实现和服务器端的实现;每个客户端独立维护一份文件预测数据,预测数据中每个数据节点包括文件名、两个预读文件名以及每个预读文件所命中的次数,每个读请求操作同时对文件预测数据节点中预测的文件进行预读操作;服务器端负责客户端的读请求调度和预读请求调度;
其中,所述DLSDCM客户端的实现是根据DLS文件预测模型所预测的数据进行文件的预读,并将过大的数据存储于本地磁盘;一次读请求的系统执行过程如下:
①读取存储于磁盘的DLS文件预测数据;
②申请大小数据一定量(大小视具体软硬件而定,能手动修改)内存作为读请求缓存和预读请求缓存,在磁盘上创建缓存目录;
③查询DLS文件预测数据节点:若数据节点中无本次读请求文件对应的数据则向服务器发送读请求,创建本次读请求文件数据节点并写入文件预读数据,将本次读请求文件名写入上一次读请求文件名对应的预测数据节点中,并替换其中命中次数较少的预测文件;若预测数据中存在本次读请求文件,则检查读请求文件是否存在于预读请求缓存或磁盘缓存目录中:
A、读请求文件存在于缓存并且数据传输仍未结束,则向服务器发送信号把该文件的预读请求转为读请求,并发送信号终止另一个预读文件的数据传输,同时将预测数据中上一次读请求文件对应的预读数据节点中本次读请求文件的命中次数+1操作;;
B、读请求文件存在于缓存并且文件已传输完毕,则将预测数据中上一次读请求文件对应的预读数据节点中本次读请求文件的命中次数+1操作;
C、读请求文件不存在于缓存中且预读文件正在传输,则向服务器发送信号中断正在传输的数据,将缓存空间清零并发送本次读请求和预读请求;
D、读请求文件不存在于缓存中且预读文件已传输完毕,则将缓存空间清零并发送本次读请求和预读请求;
④当预读文件大于内存缓存大小时,将预读文件写入磁盘缓存目录:
读请求缓存区和预读请求缓存区在一次读请求结束后会保留一段时间,若长时间无新读请求则回收读请求缓存区和预读请求缓存区;磁盘缓存目录中数据长时间保留,当缓存目录中数据将要达到规定值时采用先存放先回收的策略回收最早存放的数据;
所述DLSDCM服务器端的实现过程为:
服务器端主要负责响应客户端的请求信号和对读请求队列与预读请求队列的调度;在调度方面,服务器视所有客户端为平等优先级(默认为平等优先级,可对特定客户端优先级进行修改),按照传统的先来先服务策略分别对读请求和预读请求进行调度,预读请求队列每个节点中包含两个文件信息,在被调度传输时同时传输两个文件,并根据相应的比例来分配传输带宽;响应请求信号方面,主要响应客户端的五种请求信号:读请求,预读请求,预读请求转读请求,预读终止以及读终止;对于五种信号的处理如下:
①「收到读请求信号,将响应的读请求文件加入读请求队列的队尾,读请求队列为空则直接加入并抢占正在被调度的预读请求的数据传输;
②「收到预读请求信号,将预读请求文件加入预读请求队列,并标记两个预读请求文件在传输时占据的带宽比例,队列中两个文件占用一个节点,在被调度时根据比例传输两个文件数据;
③「收到预读请求转读请求信号,则将对应文件加入读请求队列队尾;将文件所在的预读请求队列节点删除;
④「收到预读终止信号,则终止数据传输,将预读文件所在节点从预读队列中删除;
⑤「收到读终止信号,结束文件传输,将文件节点从读请求队列删除。
2.根据权利要1所述的一种基于文件预测的分布式缓存模型,其特征在于:所述DLSDCM需要进行性能测试,所述DLSDCM的性能测试以HDFS(Hadoop Distributed File System)为例进行测试,首先单独使用HDFS进行文件的读操作,然后使用DLSDCM基于HDFS对同样的目标文件进行重复的读操作,对比二者的访问延时,可得出使用DLSDCM模型后的HDFS是否有I/O性能的提高;所述测试环境如下:①硬件环境:3台PC机搭建而成的后台集群和1台客户端pc机,硬件配置为Pentium E5800双核,3.20GHz主频CPU;2G内存;7200转硬盘;②软件环境:操作系统为ubuntu11.10,hadoop版本为1.0.4;⑧读操作对象文件:大小介于10K至120k之间总计46434个文件;所述测试过程为:首先单独使用HDFS对文件进行读操作10分钟,计算平均读操作延时,然后使用DLSDCM基于HDFS对文件进行重复读操作一小时(因为DLSDCM是一个针对长期读操作的缓存模型,重复读1小时是为了创造一个已经进行了长期读操作的环境),然后再运行10分钟,计算这10分钟之内的平均读操作延时。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安邮电大学,未经西安邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310703851.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:存储资源调度方法及存储计算系统
- 下一篇:终端安全设备精简配置管理方法与系统