一种基于ContextFS上下文文件系统的高效动态路径解析方法

文档序号:6460406阅读:96来源:国知局

专利名称::一种基于ContextFS上下文文件系统的高效动态路径解析方法
技术领域
:本发明涉及文件系统的路径解析领域,主要是一种基于ContextFS上下文文件系统的高效动态路径解析方法。技术背景随着计算机和网络技术的发展,信息数据已经成为社会发展中极其关键和重要的战略资源,可以说信息技术已经从以计算为核心的计算时代进入到以存储为核心的存储时代。分布式文件系统是重要的存储系统,它在数据存储、管理和共享等方面发挥了重大作用。但是随着数据的爆炸式增长,需要更加强大的文件系统来存储、管理、传输和共享文件。而传统分布式文件系统由于采用简单的层次目录结构组织文件,只支持少量的元数据等特征,导致其越来越不能满足高效的文件共享和有效的统一管理。为此,我们设计了支持主动数据服务的ContextFS上下文文件系统来解决传统分布式文件系统的问题。ContextFS上下文文件系统解决了传统分布式文件系统无法解决的问题(即主动数据服务、高效文件共享和有效统一管理),同时为了兼容现有文件系统和应用程序,并提供与现有分布式文件系统相当的性能,ContextFS文件系统的设计面临着更多的挑战。特别是由于ContextFS文件系统中文件的访问需要经历用户空间到内核空间、虚拟目录到元数据服务器、元数据服务器到文件服务器等多层操作,如果路径解析方法设计不当,将严重影响系统的性能。如何优化ContextFS上下文文件系统的路径解析过程,从而提供与现有分布式文件系统相当的文件访问性能,本发明ContextFS-EDPR(ContextFS高效动态路径解析方法)提供了一种完美的解决方案。
发明内容本发明的目的在于针对现有技术存在的不足,提供一种基于ContextFS上下文文件系统的高效动态路径解析方法,该方法通过对历史上下文信息的分析确定用户访问偏好和文件访问行为模式然后根据文件访问行为模式和用户当前上下文信息从无序的虚拟目录中选择虚拟目录路径;依据用户白定义、用户访问偏好和文件访问行为模式划分文件的重要程度,分别在用户所在主机(UH)、元数据服务器(MS)和文件服务器(FS)分级缓存文件路径或文件,通过多级缓存机制提高路径解析的效率;根据上述两步虛拟路径解析和物理路径解析策略,最终提高ContextFS文件系统的文件访问性能。本发明的目的是通过以下技术方案来实现的。这种基于ContextFS上下文文件系统的高效动态路径解析方法,步骤如下1)根据用户访问文件的历史上下文信息确定用户访问偏好;2)根据文件被用户访问的历史上下文信息来确定文件访问行为模式;3)根据文件访问行为模式和用户当前上下文信息从无序的虚拟目录中选择虚拟目录路径;4)根据用户自定义、用户访问偏好与文件访问行为模式确定文件的重要程度,分别在用户所在主机、元数据服务器和文件服务器分级缓存文件路径或文件;5)査询文件物理路径时,将文件的虚拟目录路径作为査询请求参数发送给元数据服务器,元数据服务器先从缓存区査找,如果命中则返回文件物理路径;如果失效则通过査询元数据服务器的数据库,把査询结果返回给用户;6)获取目标文件过程中,用户根据返回的文件路径,先查询本地的缓存区,如果命中则直接返回文件;如果失效,则判断该路径是否属于本地文件服务器,如果是,则直接调用本地LOOKUP函数获取文件,如果不是,则调用远程LOOKUP函数从相应的远程文件服务器中获取目标文件,返回给用户。7)当用户访问虚拟目录、元数据服务器、文件服务器,以及文件之后,用户和环境上下文信息被记录为历史上下文并保存在元数据服务器中,历史上下文信息供守护进程分析使用。其中所述步骤l)中,历史上下文是指用户访问文件时所处环境状态和访问操作的历史记录,如时间、地点、情景、邻居、读请求、写请求;用户访问偏好是指用户对文件的访问倾向和访问性质(即用户喜欢访问哪类文件,喜欢执行哪些文件操作),用户访问偏好是通过统计分析历史上下文的数据分布而获得。其中所述步骤2)中,文件访问行为模式是指文件固有的或访问过程中形成的访问特征,包括文件访问频率、文件访问时间占有率、热点文件描述、文件语义关联信息。文件访问行为模式也通过统计分析历史上下文获得。其中所述步骤3)中,当前上下文是指当前用户访问文件的环境状态和访问过程,如时间、地点、情景、邻居、读请求、写请求;虚拟目录不同于传统的层次目录结构,它是一个有环的、无序的图,同一个文件可能存在着多条可到达的虚拟目录路径。由于确定一个文件需要的上下文项可能不同,导致了虚拟目录的路径长短不同;而相同上下文的不同排列引起査询代价的不同,导致了路径质量不同。因此,需要选择路径最短和査询代价最小的文件虚拟目录路径。其中所述步骤4)中,由于不同用户访问文件的需求各不相同,有些用户只访问某类文件,有些文件总是被访问,而有些却很少访问,所以为了使用户能够尽快地访问到其所需要的文件,可根据文件的重要程度不同,把重要的文件路径或文件分级缓存(越重要的文件离用户越近原则),从而提高路径解析和文件访问的效率;文件的重要程度是根据用户自定义、用户访问偏好和文件访问行为模式确定,其中用户自定义的优先级最好,热点文件次之,然后是用户访问偏好,再接下来是普通文件,最后是长尾文件。本发明有益的效果是本方法利用文件访问行为模式和当前上下文动态确定虚拟目录路径,并根据用户自定义、用户访问偏好和文件访问行为模式,对文件路径或文件采用多级缓存机制提高路径解析效率,从而提高ContextFS文件系统的文件访问性能。此外,本方法同样适用于带外模式(指元数据服务器与文件服务器分离)的分布式文件系统。图1是本发明中ContextFS-EDPR高效动态路径解析示例图;图2是本发明中ContextFS-EDPR高效动态路径解析状态图;图3是本发明中虚拟目录路径选择示意图。具体实施方式下面结合附图和实施例对本发明作进一步介绍主要包括如卜5个小节1、动态路径解析的过程本方法是为了优化ContextFS上下文文件系统文件访问性能而提出的路径解析方法,但它同样适用于带外模式的分布式文件系统,其中错误!未找到引用源。为本方法的示例图。在ContextFS上下文文件系统中访问文件时,系统通过传感器等硬件设备获取用户的环境上下文,通过上下文控件获取用户访问系统过程中的活动上下文错误!未找到引用源。标号1;结合这些当前上下文信息和用户文件偏好(见第2小节)从无序的虚拟目录中选择最优的文件虚拟目录路径(见第4小节)错误!未找到引用源。标号2;根据文件访问的行为模式(见第3小节)表现出来的数据重要程度,分别在用户所在主机(UH)、元数据服务器(MS)和文件服务器(FS)分级缓存文件路径或文件,通过分布式多级缓存机制(见第5小节)提高路径解析的效率。错误!未找到引用源。具体描述了路径解析的过程,获取文件所在虚拟R录路径后,以虚拟目录路径为参数向元数据服务器请求文件物理路径;元数据服务器先通过査找缓存区,如果命中则把结果返回给用户,如果失效则査询元数据数据库并返回结果。用户收到文件物理路径之后,先査询本地缓存区是否存在该文件,如果命中则返回文件结束操作;如果失效,则判断该文件是否在本地文件服务器,如果是则调用本地文件服务器的LOOKUP函数,如果不是则调用远程文件服务器的LOOKUP函数,最后返回目标文件给用户,结束路径解析过程。本方法基于用户访问偏好、文件访问行为模式和分布式多级缓存策略和动态虚拟目录路径获取方法,显著提高了ContextFS上下文文件系统的访问性能。2、用户访问偏好的分析根据ffl户(人、应用或设备)访问文件时保存下来的历史上下文信息(包括时间上下文、空间上下文、邻居上下文、读写请求上下文等)来确定用户访问偏好,即确定该用户最喜欢访问具有哪些特质的文件,用户在访问某些文件的接下来通常会访问哪些文件,以及用户对哪些文件经常进行写却对哪些文件只进行读等。*时间上下文用于确定用户访问文件的时间偏好,即用户在某个时间段喜欢访问怎样的文件,例如用户A喜欢19:0019:30喜欢访问新闻视频文件;*空间上下文用于确定用户访问文件的空间位置偏好,即用户在某个地方习惯于访问哪些文件,例如用户B在会议室经常査看PPT演示文档;*邻居上下文用于确定用户的文件共享者偏好,即用户于不同人共享不同文件的特性,例如用户A喜欢和用户B共享音频文件,而用户A喜欢和用户C共享文本文件;*读写请求上下文用于确定用户对不同文件的操作偏好,例如用户A只査看用户C的文fK从不修改;例如,在QmtextFS上下文文件系统中利用时间、地点、事件、邻居四种历史上下文信息,针对每一位用户分析其访问文件的类型偏好。用Ci(i=l,2,3...)表示各种上下文类型,用Ti(i=l,2,3,...)表示文件类型,V表示上下文值,如错误!未找到引用源。和错误!未找到引用源。。表1当前上下文示例<table>tableseeoriginaldocumentpage6</column></row><table>表2历史上下文与文件类型对应表数组下标值视频音频图片网页邮件文档<table>tableseeoriginaldocumentpage6</column></row><table>根据错误!未找到引用源。知道当前用户的上下文为仰me:18:00),(location:home》,査历史上下文的统计表(错误!未找到引用源。)可知,当C4C3C200011时,该用户在家里的18:00至19:00时间段内文件类型访问偏好为音频文件。3、文件访问行为模式的分析用户访问偏好只能反应该用户的行为特征,并不能完全体现文件本身的重要程度和访问规律,因此有必要统计分析文件被访问的历史上下文信息得出文件访问的行为模式。由于不同文件的访问特征差异很大,有些文件具有一次写入多次读取的性质,有些文件具有频繁更新的性质,还有些文件很少被访问,等等。文件访问特征主要包括文件访问频率、文件访问时间占有率、热点文件描述、文件语义关联信息等,这些访问特征是根据分析文件访问的统计数据获得的。具体^i说*文件访问频率用于描述文件在时间区间内的访问次数;*文件访问时间占有率用于描述文件在访问过程中占用的时间比例;*热点文件描述用于描述文件的索引和缓存备份;*文件语义关联信息用于描述文件之间相关程度。例如,一首经典歌曲a当前很受欢迎,经常有用户从文件服务器中下载,该歌曲文件是热点文件同样的,在C语言的项目工程中,头文件和源程序文件具有固有的语义关联性,所以在访问源程序时,系统将缓存头文件以备用户访问。4、虚拟目录路径的选择ContextFS上下文文件系统的虚拟目录不同于传统文件系统的层次目录结构,它是一个有环的、无序的图,同一个文件可能存在着多条可到达的虚拟目录路径(错误!未找到引用源。),但由于不同虚拟目录的路径长短和路径质量各不相同,导致选取不同的虚拟目录访问效率也不同,因此,需要根据用户访问偏好和当前上下文选择最优的虚拟目录路径。错误!未找到引用源。描述了根据文件访问行为模式和当前上下文选择虛拟目录路径的过程,其中每条边的权重ai(i^,2,3…)表示访问代价,而当前上下文为{(邻居Bob),(事件会议),(时间9:00am))。为了满足所有的上下文信息,虚拟目录路径需要包括所有项,但由于每条边的代价各不相同(如al,(x2,a3,al2等,由守护进程分析历史上下文获得),不同路径的总代价也不同。在本例中,al-Xxl3-Xx23-Xx2的总代价最小,所以选择这条路径。5、分布式多级缓存策略为了提高路径解析的效率和文件访问的性能,同时又考虑到缓存空间的有限性,采用分布式的多级缓存策略。根据用户自定义、用户访问偏好和文件数据访问的行为模式划分文件的重要程度,其中文件访问行为模式把文件分为热点文件、普通文件和长尾文件三类文件;把重要文件的文件路径或文件根据重要程度分别缓存在用户主机、元数据服务器和文件服务器。具体如下5.1用户自定义、用户访问偏好和热点文件所指定的文件为重要文件;5.2用户自定义的优先级最高,表明是用户当前最希望访问的文件,这类文件的文件路径缓存在元数据服务器的缓存区,而文件数据缓存在用户主机上;5.3热点文件的优先级次之,表明这类文件是大多数用户经常访问的文件,这类的文件路径缓存在元数据服务器,文件数据缓存在文件服务器缓存区;5.4用户访问偏好的优先级再次之,表明是用户经常访问的文件,这类文件的文件路径缓存在元数据服务器;5.5随着用户自定义、用户访问偏好和文件访问行为模式的动态变化,缓存内容也动态的变化。本策略中文件访问行为模式把文件划分为热点文件、普通文件和长尾文件的依据是文件访问频率和文件访问的占用时间,访问频率前10%的文件或占用时间前10°/。的文件为热点文件,访问频率11%~30%之间或占用时间11°/『30%之间的文件为普通文件,其余为长尾文件。上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。权利要求1、一种基于ContextFS上下文文件系统的高效动态路径解析方法,其特征在于步骤如下1)根据用户访问文件的历史上下文信息确定用户访问偏好;2)根据文件被用户访问的历史上下文信息来确定文件访问行为模式;3)根据文件访问行为模式和用户当前上下文信息从无序的虚拟目录中选择虚拟目录路径;4)根据用户自定义、用户访问偏好与文件访问行为模式确定文件的重要程度,分别在用户所在主机、元数据服务器和文件服务器分级缓存文件路径或文件;5)查询文件物理路径时,将文件的虚拟目录路径作为查询请求参数发送给元数据服务器,元数据服务器先从缓存区查找,如果命中则返回文件物理路径;如果失效则通过查询元数据服务器的数据库,把查询结果返回给用户;6)获取目标文件过程中,用户根据返回的文件路径,先查询本地的缓存区,如果命中则直接返回文件;如果失效,则判断该路径是否属于本地文件服务器,如果是,则直接调用本地LOOKUP函数获取文件,如果不是,则调用远程LOOKUP函数从相应的远程文件服务器中获取目标文件,返回给用户;7)当用户访问虚拟目录、元数据服务器、文件服务器,以及文件之后,用户和环境上下文信息被记录为历史上下文并保存在元数据服务器中,历史上下文信息供守护进程分析使用。2、根据权利要求1所述的基于ContextFS上下文文件系统的高效动态路径解析方法,其特征在于步骤1)中历史上下文是指用户访问文件时所处环境状态和访问操作的历史记录;用户访问偏好是指用户对文件的访问倾向和访问性质,即用户喜欢访问哪类文件,喜欢执行哪些文件操作,用户访问偏好是通过统计分析历史上下文的数据分布而获得。3、根据权利要求1所述的基于ContextFS上下文文件系统的高效动态路径解析方法,其特征在于步骤2)中文件访问行为模式是指文件固有的或访问过程中形成的访问特征,包括文件访问频率、文件访问时间占有率、热点文件描述、文件语义关联信息,文件访问行为模式通过统计分析历史上下文获得。4、根据权利要求1所述的基于CcmtextFS上下文文件系统的高效动态路径解析方法,其特征在于步骤3)中,当前上下文是指当前用户访问文件的环境状态和访问过程;虚拟目录是一个有环的、无序的图,同一个文件存在着多条可到达的虚拟目录路径,相同上下文的不同排列引起査询代价的不同,选择路径最短和查询代价最小的文件虚拟目录路径。5、根据权利要求1所述的基于ContextFS上下文文件系统的高效动态路径解析方法,其特祉在于步骤4)中,根据文件的重要程度不同,把重要的文件路径或文件分级缓存,采用越重要的文件离用户越近原则;文件的重要程度是根据用户6定义、用户访问偏好和文件访问行为模式确定,其巾用户自定义的优先级最好,热点文件次之,然后是用户访问偏好,再接下来是普通文件,最后是长尾文件。全文摘要本发明涉及一种基于ContextFS上下文文件系统的高效动态路径解析方法,该方法通过对历史上下文信息的分析确定用户访问偏好和文件访问行为模式;然后根据文件访问行为模式和用户当前上下文信息从无序的虚拟目录中选择虚拟目录路径;依据用户自定义、用户访问偏好和文件访问行为模式划分文件的重要程度,分别在用户所在主机(UH)、元数据服务器(MS)和文件服务器(FS)分级缓存文件路径或文件,通过多级缓存机制提高路径解析的效率。本发明有益的效果是利用文件访问行为模式和当前上下文动态确定虚拟目录路径,并根据用户自定义、用户访问偏好和文件访问行为模式,对文件路径或文件采用多级缓存机制提高路径解析效率,从而提高ContextFS文件系统的文件访问性能。文档编号G06F17/30GK101236569SQ20081005967公开日2008年8月6日申请日期2008年2月1日优先权日2008年2月1日发明者吴朝晖,玄孙,钢孙,杨建华,陶美军申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1