[发明专利]一种机群文件系统中文件读取的方法及系统有效
申请号: | 200810223488.9 | 申请日: | 2008-09-28 |
公开(公告)号: | CN101382955A | 公开(公告)日: | 2009-03-11 |
发明(设计)人: | 刘岳;熊劲 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/06 |
代理公司: | 北京律诚同业知识产权代理有限公司 | 代理人: | 梁 挥;祁建国 |
地址: | 100080北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 机群 文件系统 文件 读取 方法 系统 | ||
技术领域
本发明涉及计算机存储领域,尤其涉及一种机群文件系统中文件读取的方法及系统。
背景技术
机群(cluster)系统由互相连接的多个独立计算机所组成,该计算机可以是单机或多处理器系统,例如PC(个人计算机)、工作站或SMP(对称多处理系统),每个计算机都有自己的存储器、I/O(输入/输出)设备和操作系统。机群系统对用户和应用来说是一个单一的系统,能够提供低价高效的高性能环境和快速可靠的服务。由于机群系统具有高性价比的优势,其已成为高性能计算机的主流结构。
在机群系统中,通常存储服务器配备有大容量的存储设备,在机群系统运作时,需要对这些存储设备进行管理。同时,机群系统还需要为不同客户端的用户提供文件共享服务。机群文件系统为机群系统提供了上述服务,它将机群系统中的所有存储设备整合起来,建立一个统一的名字空间(文件和目录的组织结构)。各个客户端看到目录结构一致的文件系统,不同节点(客户端)的用户可以采用透明的方式访问相同的文件。机群文件系统中的数据通常不存储在本客户端的磁盘中,而是存储在存储服务器上,因而通常都会设有专用的存储服务器。以写为例,应用进程通过机群文件系统的客户端写数据时,客户端首先将数据通过网络传送到存储服务器端,存储服务器再将接收到的数据写到存储服务器的存储设备中。
机群文件系统的I0(输入输出)路径比较长,整个操作的执行过程涉及到多个关键组件,比如机群文件系统客户端的缓存、存储服务器端的缓存、存储服务器端I0调度和控制器、处理器以及网络资源。在机群文件系统中需要上述部分协同工作完成应用的各种IO操作请求。目前,磁盘访问和网络传输性能相对较低,落后于其它组件的发展。因此,对于机群文件系统的I/O(输 入/输出)密集型应用来说,数据的磁盘访问和网络传输时间占据了整个请求处理时间的绝大部分。
因为请求的处理过程需要经历多个阶段,受指令处理流水化的启发,可以采用请求的处理流水化的方法,从而使多个物理设备并行工作。流水化的首要条件是多个请求能够同时发出。只有多个请求能够被同时处理,才能保证多个处理部件可以并行工作。请求由单发射转为多发射的过程称为请求的异步化过程。由于写操作本身是异步的,不需要等待本次写操作结束,就可以发出下一个写请求。因此,即使在单负载的情况下,同一时刻也可能有多个写请求被发往存储服务器端处理。所以,写请求的流水化可以自然形成。与写请求不同,读请求都是同步的。应用程序需要从文件中读出数据后,才能进行后续的计算以及后续的读操作。所以,如果不进行特殊的处理,读请求的处理过程将是严格串行的。如图1所示,存储服务器端先将第一个请求的数据从磁盘读入内存,然后,再将数据通过网络传送回客户端;客户端收到第一个请求的处理结果后再发出后续的读请求。整个处理过程中,各种物理设备无法并行工作。
为了将磁盘访问过程与请求的其它处理过程并行化,现有技术是采用数据预取的方式。当检测到应用的访问模式为顺序访问时,文件系统在将应用所请求的数据从磁盘读到内存后,还会继续从磁盘读取后续一部分数据。当应用程序发出对后续数据的读请求时,则直接从内存中读取。
在机群文件系统的存储服务器端使用预读机制能够在一定程度上将磁盘访问时间与网络传输时间重叠,实现并行化。但有两个限制条件:一个是应用程序的访问必须是顺序访问,否则预读机制将不会发挥作用;另外,服务器端的预读粒度需要大到一定程度才能将处理过程充分的并行化。而在多负载情况下,过大的预读粒度将会消耗更多的内存资源。以上两点限制了预读机制在将请求的处理过程并行化的效果。
发明内容
为解决上述问题,本发明提供了一种机群文件系统中文件读取的方法及系统,能够使存储服务器的磁盘I/O和网络数据传输可并行工作,缩短请求的总处理时间,提升系统的吞吐率。
本发明公开了一种机群文件系统中文件读取的方法,包括:
步骤1,客户端将来自虚拟文件系统层的单个预读请求或来自虚拟文件系统层的访问粒度大于预设值的单个文件读请求拆分为至少两个拆分读请求;
步骤2,所述客户端将每个所述拆分读请求封装到一个读请求消息中,将所有所述读请求消息发送给存储服务器;
步骤3,所述存储服务器接收所有所述读请求消息,按顺序处理第一个所述读请求消息,获取数据在文件中的位置信息,读取所述位置信息指定的数据,通过应答消息将所述数据发送给所述客户端;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810223488.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:具有碳纤维加强弹簧的直线压缩机
- 下一篇:低泡沫PVOH气溶胶喷雾涂料