本发明专利技术公开了基于索引编码的虚拟文件系统及建立方法、访问方法,减少了合并文件过程中产生的读取和写入操作,降低系统IO负载,使文件在不需要读取和写入内容的情况下完成文件合并的操作。其技术方案为:系统包括:接口模块,接收用户的合并请求生成索引文件,其中合并请求包括若干原始文件和目标镜像文件;索引目录模块,连接接口模块,通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件一一对应,索引文件中包含目标镜像文件和原始文件的文件信息;镜像文件系统,连接索引目录模块,根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成镜像文件系统中对应的目标镜像文件。
【技术实现步骤摘要】
本专利技术涉及计算机文件系统领域,尤其涉及文件合并操作相关的文件系统。
技术介绍
为了在复杂的网络环境下提供优质的网络服务,现今提供网络服务的网站(如论坛、门户网站、网络游戏、视频等等)都普遍自建或购买内容分发网络来对网络服务进行加速,同时也降低了源站的压力。内容分发网络的使用导致访问日志散布在大量的机器上,需要进行排序和合并。为了提高排序和日志合并的效率,一般以较小的时间粒度来处理日志文件,再对排序完的日志进行合并,因此产生了大量的日志文件合并的操作。在现有的文件系统中,要将两个或多个文件合并成一个文件需要将文件内容从文件系统中读出,再重新写入到文件系统中。其两种合并过程如下:(I)创建一个新的空文件,并发所有待合并文件的内容从文件系统中读出,并追加到选定文件的末尾,如图1所示。首先,创建一个新的空文件,读取第一个待合并的文件的内容然后写入到空文件中,再继续读下一个待合并的文件。(2)选定两个或多个文件中的一个,从文件系统中读取其他待合并文件的内容,并追加写入到选定文件的末尾,如图2所示。首先,从众多待合并的文件中选择一个作为选定文件,然后将其余的待合并文件逐个的进行读取然后写入到选定文件的末尾。这种现有文件系统的文件合成方式有以下的不足: 1.大量的IO操作,导致系统IP负载过高,进一步导致服务器性能下降。2.合并操作需要的时间长,导致系统延时增加。3.多数时候,系统需要保存合并前后的文件,例如上面的日志系统,这样就需要消耗两倍的存储空间。
技术实现思路
本专利技术的目的是解决上述问题,提供了一种,减少了合并文件过程中产生的读取和写入操作,降低系统IO负载,使文件在不需要读取和写入内容的情况下完成文件合并的操作。本专利技术的技术方案为:本专利技术揭示了一种基于索引编码的虚拟文件系统,包括:接口模块,接收用户的合并请求生成索引文件,其中合并请求包括若干原始文件和目标镜像文件;索引目录模块,连接接口模块,通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件--对应,索引文件中包含目标镜像文件和原始文件的文件信息;镜像文件系统,连接索引目录模块,根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成镜像文件系统中对应的目标镜像文件。根据本专利技术的基于索引编码的虚拟文件系统的一实施例,索引目录模块的索引目录结构存放在任何可访问的文件系统上。根据本专利技术的基于索引编码的虚拟文件系统的一实施例,镜像文件系统还包括:文件信息查询单元,供用户查询镜像文件系统中的目标镜像文件的文件信息,根据目标镜像文件在索引目录结构中的对应的索引文件中的信息直接响应查询;文件内容访问单元,供用户访问镜像文件系统中的目标镜像文件的文件内容,根据用户要求访问的内容在目标镜像文件中的文件偏移和原始文件的信息计算出该内容所在的原始文件及相应的文件偏移,从原始文件中读取出相应的内容并返回给用户。根据本专利技术的基于索引编码的虚拟文件系统的一实施例,文件信息包括但不限于文件大小、文件名称、最后修改时间。本专利技术揭示了一种基于索引编码的虚拟文件系统的建立方法,包括:接收用户的合并请求生成索引文件,其中合并请求包括若干原始文件和目标镜像文件;通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件--对应,索引文件中包含目标镜像文件和原始文件的文件信息;根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成对应的目标镜像文件,多个目标镜像文件形成镜像文件系统。根据本专利技术的基于索引编码的虚拟文件系统的建立方法的一实施例,索引目录模块的索引目录结构存放在任何可访问的文件系统上。根据本专利技术的基于索引编码的虚拟文件系统的建立方法的一实施例,文件信息包括但不限于文件大小、文件名称、最后修改时间。本专利技术揭示了一种基于索引编码的虚拟文件系统的访问方法,包括:接收用户对目标镜像文件的访问请求;根据用户要求访问的目标镜像文件访问其--对应的索引文件,从索引文件的记录中获取目标镜像文件的文件信息和原始文件的文件信息;判断用户所要访问的对象,若是访问目标镜像文件的文件信息,则直接返回获取到的目标镜像文件的文件信息和原始文件的文件信息; 若是访问目标镜像文件的文件内容,则根据用户要求访问的内容在目标镜像文件中的文件偏移和原始文件的信息计算出该内容所在的原始文件及相应的文件偏移,从原始文件中读取出相应的内容并返回给用户。根据本专利技术的基于索引编码的`虚拟文件系统的访问方法的一实施例,文件信息包括但不限于文件大小、文件名称、最后修改时间。本专利技术对比现有技术有如下的有益效果:本专利技术的方案是通过接口模块接收用户的合并请求生成索引文件,索引目录模块通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件--对应,镜像文件系统根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成镜像文件系统中对应的目标镜像文件。相较于传统技术,本专利技术在不读取和重新写入文件内容的情况下,将若干指定文件合并成新的文件,即镜像文件。镜像文件和使用传统文件合并出来的文件一样,但是合并过程中并不会发生文件内容的读取和写入操作,同时该镜像文件不占用实际的存储空间。附图说明图1和图2示出了传统的文件合并方式。图3A示出了本专利技术的基于索引编码的虚拟文件系统的较佳实施例的结构图。图3B示出了图3A所示的虚拟文件系统实施例的原理图。图4A示出了本专利技术的基于索引编码的虚拟文件系统的建立方法的较佳实施例的流程图。图4B示出了图4A所示的虚拟文件系统的建立方法的示意图。图5A示出了本专利技术的基于索引编码的虚拟文件系统的访问方法的较佳实施例的流程图。图5B示出了图5A所示的虚拟文件系统的访问方法的示意图。具体实施例方式下面结合附图和实施例对本专利技术作进一步的描述。基于索引编码的虚拟文件系统的实施例图3A示出了本专利技术的基于索引编码的虚拟文件系统的较佳实施例的结构,图3B示出了图3A所示的虚拟文件系统实施例的原理。请参见图3A,本实施例的基于索引编码的虚拟文件系统包括:接口模块10、索引目录模块11、镜像文件系统12。索引目录模块11连接接口模块10,镜像文件系统12连接索引目录模块11。请同时参见图3B,接口模块10接收用户的合并请求生成索引文件,其中合并请求包括若干用于生成目标文件的原始文件和用户指定的目标镜像文件。接口模块10在收到用户的指令后检查用户指定的所有原始文件,记录这些原始文件的文件信息(包括但不限于文件大小、文件名称、最后修改时间等),并根据这些原始文件的文件信息以及用户指定生成的目标文件的文件信息,接口模块10将创建一个与目标文件—对应的索引文件,把目标文件的文件信息以及所有原始文件的文件信息编码并写入该索引文件中。索引目录模块11通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件一一对应,索引文件中包含目标镜像文件和原始文件的文件信息,文件信息包括但不限于文件大小、文件名称、最后修改时间。索引目录模块11的索引目录结构存放在任何可访问的文件系统上,例如传统文件系统的磁盘、光盘文件系统、闪存文件系统、内存文件系统、网络文件系统等。镜像文件系统12根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成镜像文件系统中对应的目标镜像文件,供用户查看和读取使用。镜像文件系统12包括文件本文档来自技高网...
【技术保护点】
一种基于索引编码的虚拟文件系统,包括:接口模块,接收用户的合并请求生成索引文件,其中合并请求包括若干原始文件和目标镜像文件;索引目录模块,连接接口模块,通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件一一对应,索引文件中包含目标镜像文件和原始文件的文件信息;镜像文件系统,连接索引目录模块,根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成镜像文件系统中对应的目标镜像文件。
【技术特征摘要】
1.一种基于索引编码的虚拟文件系统,包括: 接口模块,接收用户的合并请求生成索引文件,其中合并请求包括若干原始文件和目标镜像文件; 索引目录模块,连接接口模块,通过一索引目录结构存储生成的索引文件,索引文件和目标镜像文件—对应,索引文件中包含目标镜像文件和原始文件的文件信息; 镜像文件系统,连接索引目录模块,根据索引目录结构中的索引文件和索引文件中指出的原始文件,生成镜像文件系统中对应的目标镜像文件。2.根据权利要求1所述的基于索引编码的虚拟文件系统,其特征在于,索引目录模块的索引目录结构存放在任何可访问的文件系统上。3.根据权利要求1所述的基于索引编码的虚拟文件系统,其特征在于,镜像文件系统还包括: 文件信息查询单元,供用户查询镜像文件系统中的目标镜像文件的文件信息,根据目标镜像文件在索引目录结构中的对应的索引文件中的信息直接响应查询; 文件内容访问单元,供用户访问镜像文件系统中的目标镜像文件的文件内容,根据用户要求访问的内容在目标镜像文件中的文件偏移和原始文件的信息计算出该内容所在的原始文件及相应的文件偏移,从原始文件中读取出相应的内容并返回给用户。4.根据 权利要求1-3中任一项所述的基于索引编码的虚拟文件系统,其特征在于,文件信息包括但不限于文件大小、文件名称、最后修改时间。5.一种基于索引编码的虚拟文件系统的建立方法,包括: 接收用户的合并请求生成索引文件,其中...
【专利技术属性】
技术研发人员:洪珂,邹宁勇,林志远,
申请(专利权)人:网宿科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。