[发明专利]一种SAN共享文件系统中实现离线写文件的方法有效
申请号: | 201210587726.0 | 申请日: | 2012-12-31 |
公开(公告)号: | CN103076994A | 公开(公告)日: | 2013-05-01 |
发明(设计)人: | 徐荣波;刘强;方概;王琪;张跃;李小莉 | 申请(专利权)人: | 北京中科大洋科技发展股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F11/14;H04L29/08 |
代理公司: | 北京国林贸知识产权代理有限公司 11001 | 代理人: | 袁建水 |
地址: | 100193 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 san 共享 文件系统 实现 离线 文件 方法 | ||
1.一种SAN共享文件系统中实现离线写文件的方法,所述的方法中所使用的硬件系统包括:多个客户端通过传输视频文件的SAN网络与元数据服务器和磁盘列阵连接,所述的多个客户端通过传输元数据的LAN网络与元数据服务器连接,所述方法的步骤如下:
打开文件的步骤:用于客户端向元数据服务器发出请求,要求打开磁盘阵列中待写入的文件;
获取元数据的步骤:用于客户端根据待写入文件的内容,向元数据服务器申请待写入内容所对应的元数据,客户端获取相应元数据,同时客户端接受分配给自己的机会锁;
其特征在于:
所述的“获取元数据的步骤”中客户端在正常获取待写文件的元数据外还要获取磁盘预额空间的元数据;
判断元数据服务器是否在线的步骤:用于判断所述的元数据服务器是否正常在线工作,如果“是”则进入“在线写入文件的步骤”,如果“否”则进入“离线写入文件的步骤”;
在线写入文件的步骤:用于所述的客户端获取元数据段,并根据所获得的元数据段,对磁盘阵列发起写入文件的块数据请求,以完成该元数据段对应块数据写入,循环的申请元数据段和写入元数据段对应的块数据,直至完成整个文件的写入磁盘阵列的常驻空间中,之后进入“文件写入结束的步骤”;如果在文件写入过程中元数据服务器离线,则进入“离线写入文件的步骤”;
离线写入文件的步骤:用于所述的客户端使用预额空间的元数据将文件写入磁盘阵列的预额空间中,同时不断的检测元数据服务器是否上线,如果元数据服务器上线,则将写在磁盘预额空间中的文件同步到元数据服务器设定的磁盘阵列中并进入“文件写入结束的步骤”,如果磁盘预额空间已全部写满,客户端与元数据服务器仍然没有连通,则进入“文件写入结束的步骤”;
文件写入结束的步骤:用于客户端向元数据服务器发出要求,关闭已打开的写入文件句柄,完成本次文件写入。
2.根据权利要求1所述的方法,其特征在于,所述的“获取元数据的步骤”中获取磁盘预额空间的元数据包括以下子步骤:
检测是否有原始记录的子步骤:用于客户端在本地内存或硬盘中检查是否有预额空间的元数据的备份,如果“否”则进入“开辟存储空间的子步骤”,如果“是”则进入下一子步骤;
检测预额空间的元数据是否有效的子步骤:用于客户端检测本地内存或硬盘中的预额空间的元数据备份是否有效,如果“是”则进入“获取元数据结束的子步骤”,如果“否”则进入下一子步骤;
开辟存储空间的子步骤:用于客户端在本地内存或硬盘中开辟用于存储预额空间的元数据的存储空间;
选择处理的子步骤:用于客户端对元数据存入请求选择是放在后台队列等待还是实时处理,如果是后台等待则将元数据存入请求放入元数据请求队列中等待,如果是实时处理则进入下一子步骤;
获取预额空间的元数据的子步骤:用于客户端根据通讯规则循环向元数据服务器获取预额空间的整个元数据,作为备份元数据,按照客户端自定义的数据结构保存在已开辟的存储空间中;
获取元数据结束的子步骤:用于结束获取元数据。
3.根据权利要求1或2所述的方法,其特征在于,所述的“离线写入文件的步骤”包括以下子步骤:
检测客户端是否有预额空间的备份元数据的子步骤:用于客户端对本地的内存或硬盘进行检查,是否有预额空间的元数据备份,如果没有则进入“文件写入结束的子步骤”,如果有则进入下一子步骤;
客户端检测备份元数据的备份是否有效的子步骤:用于客户端检测本地内存或硬盘中的预额空间的元数据是否有效,如果“否”则进入“文件写入结束的步骤”,如果“是”则进入下一步骤;
使用备份元数据写入文件的子步骤:用于客户端从本地内存或硬盘中获取备份元数据的元数据段,并利用所述的元数据段对磁盘阵列写入文件;
检测客户端检测与元数据服务器的连接是否连通的子步骤:用于客户端检测与元数据服务器的连接是否畅通,如果“否”则进入下一子步骤,如果“是”则进入“向元数据服务器重新申请元数据段的子步骤”;
判断预额磁盘空间是否写满的子步骤:用于所述的客户端判断磁盘阵列中的预额空间是否写满,如果“是”则进入“文件写入结束的步骤”,如果“否”则进入下一子步骤;
判断是否完成文件内容写入的子步骤:用于所述的客户端判断使用备份元数据是否将文件完整写入磁盘阵列的预额空间中,如果“是”则停止写文件,如果“否”则进入“使用备份元数据写入文件的子步骤”;
向元数据服务器重新申请元数据段的子步骤:用于客户端向元数据服务器重新申请元数据,请求常驻空间;
元数据服务器数据同步的子步骤:用于元数据服务器检测所有客户端的连接性,对所有具有预额空间的客户端的数据进行同步处理,使预额空间中的数据移入常驻空间;
续断写文件的子步骤:用于所述的客户端根据元数据服务器给出的元数据,将文件写入磁盘阵列的常驻空间中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中科大洋科技发展股份有限公司,未经北京中科大洋科技发展股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210587726.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一次性医用纸杯
- 下一篇:一种计算机存储介质的高速镜像方法