当前位置: 首页 > 专利查询>微软公司专利>正文

在本地缓存远程文件的方法和系统技术方案

技术编号:2852634 阅读:339 留言:0更新日期:2012-04-11 18:40
一种用于在本地缓存远程对象的方法和系统。接收到访问对象的请求。确定该对象是否被缓存。如果该对象被缓存且该请求不是创建新对象、修改已存在对象、或打开目录,则将该请求定向至本地文件系统。否则,将该请求定向至远程文件系统。关于哪些对象被请求的信息可被用于将存储在远程的对象复制到本地服务器上,正如缓存策略所指定的。

【技术实现步骤摘要】

本专利技术通常涉及计算机,尤其涉及文件系统。
技术介绍
在数据中心(如,服务器区)的一组内容服务器可以向各种位置的许多客户机提供内容服务。先前,由给定的服务器农场所包容的内容组总量相对较小,并且能够没有额外成本地被发送并存储在农场中每个内容服务器上。然而现在,服务器农场可提供的内容数量经常超过几千亿个字节。为服务器购买大存储量的硬盘、向它们提供数据中心的所有内容、并保持它们中的内容不断更新,这样它们可以提供任何所要求的存储和发送成本都非常巨大的内容。当使用超过一个数据中心来提供内容服务时这是尤其正确的。所需要的是一种在本地有效缓存远程数据的方法和系统,这样当在内容服务器的硬盘上缓存内容的一个子集时,整个内容组可以被存储在分散的专用存储器中。理想地,该方法和系统对任何请求数据的应用而言是几乎或完全透明的。
技术实现思路
简要地,本专利技术提供了用于在本地缓存远程对象的方法和系统。接收到访问对象的请求。确定该对象是否被缓存。如果该对象被缓存且该请求不是要创建新的对象、修改已经存在的对象、或打开目录,则定向该请求至本地文件系统。否则,定向该请求至远程文件系统。在本专利技术的一个方面,过滤器监视请求并向缓存服务报告在本地和远程文件系统上被访问的对象的名称。缓存服务可对该信息应用策略以确定在本地缓存哪些远程对象以及清除哪些本地已缓存对象。在本专利技术的另一个方面,该过滤器监视对本地和远程文件系统的请求,且该过滤器本身可以应用策略以确定在本地缓存哪些远程对象以及清除哪些本地已缓存对象。在本专利技术的另一个方面,该过滤器接收到对象已经在远程改变的通知,并删除本地已缓存的对象副本。结合附图根据下面的详细描述,其他方面会变得更显而易见。附图说明图1是表示可以结合本专利技术的计算机系统的框图。图2是表示根据本专利技术的各个方面可运行本专利技术的系统组件的一个示例性安排的框图。图3是表示根据本专利技术的各个方面可运行本专利技术的系统组件的另一个示例性安排的框图。图4是表示根据本专利技术的各个方面可运行本专利技术的系统组件的另一个示例性安排的框图。图5是表示根据本专利技术的各个方面可实现本专利技术的一个示例性环境的框图。图6是表示根据本专利技术的各个方面可实现本专利技术的系统组件的一个示例性安排的框图。图7是表示根据本专利技术的各个方面可实现本专利技术的系统组件的一个示例性安排的框图。图8是通常表示根据本专利技术的各个方面在确定是否重定向I/0操作至本地缓存器时可能发生的动作的流程图。图9是通常表示根据本专利技术的各个方面在确定是否重定向I/O操作至本地缓存器时可能发生的对应于图8中块835的动作的流程图。图10是通常表示根据本专利技术的各个方面当远程对象改变时可能发生的动作的流程图。图11是通常表示根据本专利技术的各个方面可实现本专利技术的系统组件的另一个示例性安排的框图。具体实施例方式示例性操作环境图1示出可实现本专利技术的示例性计算系统环境100的一个示例。计算系统环境100仅仅是合适的计算环境的一个示例且不旨在对本专利技术使用范围或功能提出任何限制。计算环境100也不能被解释是对示例性操作环境100中示出的任一组件或组合的有任何依赖或要求。本专利技术可操作于多种其他通用功能或特定功能计算系统环境或配置。适合使用本专利技术的共知计算系统、环境、和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持或膝上设备、多处理器系统、基于微控制器的系统、机顶盒、可编程消费品电器、网络PC、小型机、大型机、包括任何上述系统或设备的分布式计算环境、以及诸如此类设备。本专利技术可被描述在计算机可执行指令(诸如由一个计算机或其他设备执行的程序模块)的通常环境中。通常有,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、以及诸如此类。本专利技术还可被实现于分布式计算环境,其中的任务被由通信网络连接在一起的远程处理设备所执行。在一个分布式计算环境中,程序模块可位于本地和远程计算机存储介质,包括内存存储器设备。参照图1,一个用于实现本专利技术的示例性系统包括一个如计算机110形式的通用功能计算设备。计算机110的组件可包括,但不限于,处理单元120、系统存储器130、以及将包括系统存储器在内的各种系统组件连接到处理单元120的系统总线121。系统总线121可为多种类型的总线结构的任何一种,包括存储器总线或存储器控制器、外围设备总线、以及使用任何的多种总线体系结构中任何一种的局部总线。作为示例,而非限制,这些体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及外围设备组件互连(PCI)总线(也被称为Mezzanine总线)。计算机系统110通常包括多种计算机可读介质。计算机可读介质可为计算机110可访问的任何可用介质,并包括易失和非易失介质、可移动和不可移动介质。通过示例,而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括通过任何方法或技术实现的,用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的,易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学盘存储器、磁带盒、磁带、磁盘存储器或其他磁存储器设备、或任何其他可被用来存储所需信息并能够由计算机110访问的介质。通信介质通常以一个已调制的数据信号,诸如载波或其他传输机制的形式来体现计算机可读指令、数据结构、程序模块或其他的数据,并包括任何信息传递介质。术语“已调制的数据信号”表示为了在信号内编码信息而设置或改变其一个或多个特征的信号。通过示例,而非限制,通信介质包括有线介质,诸如有线网络或直线连接、以及无线介质诸如声学的、FR、红外以及其他无线介质。任何上述的组合也被包括在计算机可读介质的范围内。系统存储器130包括易失和/或非易失存储器形式的计算机存储器介质,诸如只读存储器(ROM)131以及随机访问存储器(RAM)132。基本输入/输出系统133(BIOS)一般被存储在ROM 131中,它包括诸如在起动过程中有助于计算机110内基本元件间传递信息的基本例程。RAM 132通常包括可由处理单元120立即访问和/或当前进行操作的数据和/或程序模块。通过示例,而非限制,图1示出了操作系统134、应用程序135、其他程序模块136、以及程序数据137。计算机110也可包括其他可移动/不可移动的易失/非易失计算机存储介质。仅仅作为示例,图1示出了从不可移动非易失磁性介质读取或写入的硬盘驱动器140、从可移动非易失磁盘152读取或写入的磁盘驱动器151、以及一个从诸如CD-ROM或其他光学介质的可移动非易失光盘156读取或写入的光盘驱动器155。其他可被用于示例性操作环境的可移动/不可移动,易失/非易失计算机存储介质包括,但不限于,磁带盒、闪速存储卡、数字通用光盘、数字录影带、固态RAM、固态ROM、等等。硬盘驱动器141通常通过诸如接口140的不可移动存储器接口连接到系统总线121,磁盘驱动器151以及光盘驱动器155通常通过一个诸如接口150的可移动存储器接口连接到系统总线121。以上讨论的且示于图1中的驱动器和它们本文档来自技高网...

【技术保护点】
一种计算机可读介质,包含计算机可执行指令,其特征在于,包括:接收访问存储在远程服务器上的对象的请求;通过过滤器检查所述请求,以确定是将所述请求转发给所述远程服务器还是将所述请求重定向至本地文件系统,其中所述过滤器有机会监视对所述远程服务器的请求;以及如果所述对象被缓存,则将所述请求重定向至所述本地文件系统。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:AJ埃勒NR克里斯琴森RS蒂恩德
申请(专利权)人:微软公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1