语义高速缓存的制作方法

文档序号:6463952阅读:133来源:国知局
专利名称:语义高速缓存的制作方法
技术领域
本发明涉及信息处理系统领域,尤其是涉及利用高速缓冲存储器来减少延时的信息处理系统。
高速缓存系统在现有技术中常见。高速缓存系统包括高速缓冲存储器及其相应的控制器,控制器控制信息在高速缓冲存储器的存储和检索。传统地,高速缓冲存储器内完全是用户从远程信息源接收到的信息资源的拷贝,“远程”的定义是指从比高速缓冲存储器,即在客户-服务器结构中的本地主存储器或服务器,更远的用户处得到信息。如果用户后来请求同一资源,就从高速缓冲存储器,而不是从资源原来所在的远程信息源,将该资源的拷贝提供给用户,从而节约了第二次从远程信息源接收资源所需要的时间。当高速缓存存储器满了的时候,高速缓存控制器就删除最近没有访问过的资源,为用户要访问的新资源腾出空间。可以利用不同的通常被称作高速缓存策略的判据,来判断删除哪一个资源拷贝。这些高速缓存策略可以根据最后一次访问后的时间、收到资源后访问的次数、分配给该资源的内存总量、从远程站点检索到该资源的难度,等等。
高速缓存系统是以当访问资源的拷贝时,在远程信息源的信息还没有改变这样一个假设为前提的。也就是说,如果远程信息源的信息已经改变,高速缓存器内的资源拷贝就不能用来代替远程信息源的资源。因此,除了在高速缓存器满时从中删除资源的拷贝外,传统系统的高速缓存控制器还要在它预知或判断出源信息已经改变时,从高速缓冲存储器中删除资源的拷贝,因为高速缓冲存储器内的资源的拷贝已经过时或“陈旧”了。预知资源是否可能已经改变也常常在高速缓冲存储器的空间不够用时,选择删除哪一个资源拷贝时用到。比如,可以认为万维网站点上的图象比文本的变化更不频繁,所以,高速缓存从因特网下载的信息的高速缓存控制器可以保留下载的图象信息的平均时间比下载的文本信息要长。
各具体的高速缓存策略一般是在各种可能性之间取得折衷用户将再次访问某一特殊的资源拷贝而不是其他资源拷贝的可能性;特定资源拷贝陈旧的可能性;其他资源的拷贝陈旧的可能性;等等。考虑,比方说,“最少最近使用的”(Least Recently Used,LRU)高速缓存策略,以及“先进先出”(FIFO)高速缓存策略。LRU高速缓存策略选择从高速缓冲存储器种删除一个资源的拷贝是基于这样的假设如果用户长时间没有再访问一个资源,用户就可能不再访问该资源了。另一方面,FIFO高速缓存策略不根据用户再次访问资源的频度和最近时间,而是基于假设资源拷贝在高速缓冲存储器内的时间越长,其陈旧的可能性就越大。使用FIFO高速缓存策略,通常再次访问的资源的拷贝常常不用从远程信息源装入,仅仅因为这些拷贝在高速缓冲存储器内的时间比其它很少再次访问的资源的拷贝的更长。另一方面,用户可能访问包含频繁变化的信息资源比包含相对静止的信息地信息源要更频繁些。如果使用LRU高速缓存策略,缓存的拷贝将保留在高速缓冲存储器内很长时间,因为它被频繁地访问。
总之,从远程信息源接收的资源的拷贝,高速缓存控制器判断哪一个拷贝保留在高速缓冲存储器中,尽可能使得往后访问该资源时的延时最少,同时尽量保持高速缓冲存储器内的内容与远程信息源的资源的内容最大的一致性和同步性。
本发明的一个目的是提供一种通过控制高速缓冲存储器来减少访问延时的方法和系统。本发明的另一个目的是提供优化高速缓冲存储器分配的方法和系统。
通过提供根据资源语义(semantic)类型的资源的拷贝的高速缓存系统来实现本发明的这些目的以及其它目的。资源的拷贝是从远程信息源,即通过因特网从服务器接收到的,并按照其语义类型分类。对不同的语义类型使用不同的策略,为各语义类型定制高速缓存策略。本文中用到的“语义类型”是指正如用户所领会的资源的信息内容所含的不同含义。比方说,有些信息内容可以认为是很容易变的(如短期关联的,诸如万维网站点上的体育比赛结果、具体的股市新闻、或货币汇率),其它信息可以认为是相对静态的(如长期相关的,诸如如因特网上的术语表)。可以期望语义类型包含动态信息,如新闻万维网站点和天气万维网站点,这需要一种高速缓存策略,根据拷贝在高速缓冲存储器内的时间长短,选择替换其中的拷贝。相反地,可以期望语义类型涉及到静态资源,如百科全书式信息、术语表等,这需要更保守的高速缓存策略,如最近最少使用(LRU)或最不常用(LFU),这些策略基本上不依赖于拷贝在高速缓冲存储器内滞留的时间长短。另外,有些语义类型,比如流行的新闻组传送的新闻信息或者电子邮件档案内的电子邮件信息,可以使用组合的高速缓存策略,其中的资源的拷贝,或部分资源的拷贝,开始看作是动态变化的,然后是次动态的,再往后是静态的。
语义类型与相应类型的高速缓存策略的关系可以事先判断,即由资源提供者、或由用户直接判断,或者是根据,至少部分根据,用户与资源交互的用户历史和简档判断。
本发明还涉及到能够与信息资源进行交互的方法,如因特网上服务提供者所支持的那样。该方法包括能够从信息源接收信息的拷贝;以及能够按照根据信息语义类型的高速缓存策略缓存信息。启用高速缓存包括,比如,支持因特网万维网站点的语义类型的指示代表。该指示可以是一个元标记,元标记具有在用户的客户机获取用作高速缓存控制参数的解释的表达式。
以下以示例的形式结合附图更详细地解释本发明。


图1为本发明语义高速缓存系统的一个示例的方框图。
图2是符合本发明的使用高速缓冲存储器系统的用户要求的示例的流程图。
图3是本发明的高速缓冲存储器系统资源的存储示例的流程图。
所有图中的相同的标号代表相似或一致的特点或功能。
图1,图示了本发明的语义高速缓存系统100的示例的方框图。高速缓存系统100包括高速缓存控制器110、被划分为不同高速缓存器121-129的高速缓冲存储器120、以及关于各个高速缓存器121-129和各个语义分类的一套参数和规则115。实际上,高速缓存器120可以分布在各种存储装置上,或者可以是存储器的一个单模块,一个磁盘驱动的一部分,等等;高速缓存器121-129是高速缓冲存储器120的逻辑分区。各个高速缓存器121-129具有不同的缓存策略。高速缓存器121为高度动态的缓存器,而129为很稳定的缓存器;可以选择地,也提供了另一个中等动态性的缓存器125。根据本发明,资源的拷贝是根据资源的语义类型放入特定的高速缓存器121-129的。每个高速缓存器具有相应的一套参数和规则115和高速缓存策略,缓存策略控制存储的持续时间和特定高速缓存器的资源拷贝的替换。比如说,高度动态性高速缓存器121使用的替换规则中,内容的陈旧性(自拷贝从远程信息源检索到算起的时间)是用于判断替换哪一个拷贝的主要判据。在本发明的优选的实施方案中,关于高度动态性高速缓存器121的参数和规则115也对各个缓存的拷贝利用最大的陈旧持续时间。相反地,很稳定的高速缓存器129使用更常规的参数和规则115,比如实施最近最少使用(LRU)替换策略,不依据资源内容的陈旧性。
根据本发明,资源的语义类型判断从远程信息源,如万维网的站点180上检索到或下载的资源的特定的拷贝放入高速缓存器121-129中的哪一个。比如说,天气报告将放到高度动态性缓存器121,而来自百科全书的文章要放到很稳定的高速缓存器129。用同样的方式,其他语义类型的资源的拷贝,诸如新闻文章、股市报告、研究结果、电子邮件信息,等等,将根据语义类型的动态性能,各自分配到121-129中适当的高速缓存器。
请求处理器150应用户请求151,将资源材料155添加到高速缓冲存储器100和从高速缓冲存储器100检索资源材料155。
图2示出满足用户请求151的示例的流程图。开始,根据在210接收到的用户请求,在220,通过语义分类器160判断请求的资源的语义类型。可以利用各种技术判断语义的分类。在本发明的实施方案中,询问用户请求的信息放入哪一个分类中;此后,类似的请求在没有明显的置疑时就按同样的方式分类。类似地,默认的语义分类通常可以定义当前请求形式或格式,或者根据上下文关系,如生成请求的申请。待决美国专利申请“基于上下文和用户简档驱动的信息检索”,美国序列号为09/104,491(专利代理人档案号PHA23,422),Chanda Dharap 98年6月25日提交,在此一并引用,涉及到使用户能够以个性化方式操作电子数据库,其中的上下文关系是根据用户简档生成的。简档是基于用户事先提供的专题信息以及用户以前访问的数据库的历史。用同样的方式,用户简档、上下文、预先的请求在本发明中可以用来判断语义类型,减少要求用户的交互。待决美国专利申请“具有自动前置渗透和路由选择的协作专题服务”,美国序列号为09/221,951(专利代理人档案号PHA23,606),Doreen Cheng 98年12月28日提交,涉及到根据专题内容的文档的快速和高效搜索和检索的组织的信息排列和检索系统。该信息排列和检索系统只能对那些与预先定义的主题相关的文档才能优化排列和检索。如果一个文档不含有给定的主题,就不能向该文档提供这一服务。同样的,一个文档包括指定的禁止提供服务的主题,该文档就被排除在外。在本范例中,供应商故意限制提供搜索和检索服务的范围,但是这样能提供更有效的服务,这正是期望的用户要求的目标。信息排列和检索系统还支持内容敏感搜索和检索技术,包括使用预先定义的观点论证搜索判据,以及使用用户定义的词汇。在优选的实施方案中,主题的选择设定被排列为多层次重叠,以及分布式软件结构用于支持基于主题的信息排列、路由选择和检索服务。文件可能与一个和多个主题相关,并通过由信息服务器保留的主题的层次和各个主题相关联。美国序列号为09/221,951的专利提到了本领域所熟知的统计基本算法、神经网络和基因算法等,用于文档的自动分类。
默认的语义类型也可能与每个资源相关。比方说,服务提供者可以预先分类资源的语义类型,通过使用默认的基于资源的信息的相关性,或者通过把语义限定词并入通常用于排列,借助内容检索的资源的“万维网爬虫”(web-crawler)。用同样的方式,万维网管理器可以预先分类在万维网站点上可使用的各个资源。总之,包含资源的数据库或资源的索引,可以通过配置同样包含与各个资源相关的默认的语义类型,其中的术语数据库是一个通用用法,包括材料的所有集合,包括因特网和万维网。通过这样的数据库,默认的语义类型用于排除用户在哪里指定改变语义类型,或用户在哪里的以前的行为暗示改变语义类型,或其它的语义类型限定词,如前面所讨论过的,在哪里提供不同的结果。
在图2的模块230,请求处理器150询问图1的高速缓存系统100,判断请求是否能满足高速缓存系统100。高速缓存控制器110回应这一询问,根据请求的资源和参数的当前状态以及与特定高速缓存器相关的规则115。如果请求的资源不在高速缓存器100内,或者是因为资源的拷贝根本就没有放入过高速缓冲存储器120,或者是因为拷贝后来从高速缓冲存储器120中删除了,高缓存控制器就通知请求处理器150请求不能满足。另外,根据本发明,高速缓存控制器110,根据参数和与各个缓存器121-129关联的规则115判断当前在高速缓冲存储器内的资源的合适性。比如说,高度动态性的缓存器121,可以用于,如存储检索到的股票价格,并可以具有“陈旧”参数115,规定包含在缓存器121内的所有资源拷贝超过15分钟都被认为是“陈旧的”,并不能被再检索到。中等动态性缓存器125可以存储与“新闻”语义类型关联的资源的拷贝,并具有陈旧参数115,规定,比如被认为陈旧和不能检索的时限为2小时。静态缓存器129一般没有与之关联的陈旧参数,而且一般保留与百科全书相关的以及后来一直不变的其它语义类型的资源的拷贝。
正如上面所提到的,各语义类型具有相关的规则和参数,从高速缓冲存储器内排列和检索各资源拷贝。在优选的实施方案中,这些规则和参数115还包括从一个高速缓存器将资源拷贝传送到另一个高速缓存器的规则。用上述的新闻语义类型作为示例,关于接收新闻资源的的规则115,可以放入高度动态性高速缓存器121,直到被判断为陈旧或直到被删除为其它新的活性材料腾空间时,然后移到中等动态性高速缓存器125,再往后移到高度静止高速缓存器129。这样的处理在这里被称作渗透(percolating)高速缓存处理,其中的资源拷贝甚至可以直接上升到动态性高速缓存缓存器和下降到静态高速缓存器。渗透高速缓存处理还可以包括一个选择机制,以判断只有被选定的项目才能渗透到静态高速缓存器,其余的将删除;或者是判断被选定删除的项目,其余经过渗透进入静态高速缓存器。
正如在本领域一般技术人员看来很显然的一样,现有技术高速缓存器还可以在使用各个高速缓存器121-129时进行优化。比如,从动态高速缓存器121删除项目的规则可以构造为相对静止的资源如图象,保留在高速缓存器内的时间比起更动态或更容易检索到的资源如文本的更长。用这样的方式,比如,如果一则新闻拷贝被删除,后来再访问时,只有文本和其余图象需要重新下载,基于假设先前下载的包含在资源中的图象没有变。
返回图2,在240,如果高速缓存器系统100能够符合用户请求151,在250,从高速缓冲存储器120检索资源的拷贝。如果用户的请求151不能通过高速缓存器系统100得到满足,在260,资源拷贝就从远程信息源,诸如因特网和万维网站点,或其它网络信息源检索资源拷贝。
可选地,在270,检索的资源拷贝的语义类型可以根据资源的实际内容,重新判断或重新访问。待决美国专利申请“具有自动前置渗透和路由选择的协作专题服务”,美国序列号为09/221,951,DoreenCheng 98年12月28日提交,提到上述内容,涉及到根据文档中包含的材料把文档划分为一个或多个专题组。比如图1所示的用户请求151,已判断了相关的新闻类型,而且检索的新闻拷贝185可以包含天气咨询。根据本发明的这个特点,检索的新闻资源拷贝或其中一部分,可以按照与天气相关的资源的规则115来存储。用这样的方式,在各个语义类型中,其它相关的判据可以用于判断适当的各资源的拷贝的高速缓存。比如,有些新闻拷贝可以在静态高速缓存器129内存档,而其它的则临时地存储在高度动态的高速缓存器121内。例如,如果用户请求新闻资源被判断为请求当前新闻,根据,如上述的用户简档、上下文关系、以及以前的请求,检索的信息就将放入动态高速缓存器121。另一方面,如果根据用户请求的上下文关系,请求处理器150判断用户请求新闻资源时一个特定主题下的所有新闻,检索到的新闻资源拷贝可以按照资源的内容和其它标示再分离,然后按照再分离的结果把各资源拷贝放入121-129中适当的一个高速缓存器内。在优选的实施方案中,各个新闻资源拷贝的发生日期被用于把最近出现的新闻资源放入动态高速缓存器121,把旧一些的新闻的拷贝放入静态高速缓存器129。反过来,如果关于资源拷贝的语义类型是百科全书式的,发生日期就基本上与资源拷贝放到121-129中的哪一个高速缓存器不相关了。
在280,检索到的资源的拷贝存储在高速缓冲存储器120的121-129中适当的一个(或几个)高速缓存器内,并在290继续处理。参见图1,从网络180或者高速缓存器100检索到的资源拷贝185和155,分别通过提交装置190提交给用户。如图1所示,提交装置190一般是显示装置,尽管根据要提交的特定资源和用户的偏好如通过文本到语音或语音到文本处理,可以使用其它提交装置,诸如声音或其它读出提交装置。
图3为一个示例的流程图,图示了高速缓存器系统100的存储处理的流程。按照本发明,高速缓存系统100的操作是根据存储的资源拷贝的语义类型进行的。如上面讨论过的,通过请求处理器150把语义类型提供给高速缓存器系统100,作为处理的输入305,如图3所示。为了更容易理解,图3中的流程图采用的高速缓冲存储器120,只被分成动态高速缓存器121和静态高速缓存器129。其余的一个和多个中等动态高速缓存器125,具有不同程度的动态性和陈旧判据,对本公开发明领域的普通技术人员来说是很显然的。
在310,语义类型305用来判断语资源存储相关的参数和规则115。如图3所示,在优选的实施方案中的语义类型判断高速缓存是否是动态的,静态的或者渗透的。在315,如果高速缓存是静态的,就在355检查静态高速缓存器129,看是否有存储资源拷贝的未分配的内存空间。如果没有足够的空间,就在360选择删除当前存储在129内的资源拷贝。正如上面所提到的,从静态高速缓存器129中删除资源拷贝所用到的判据基本上不依赖于资源的陈旧性。可以使用任何一种删除判据,如删除最近最少使用的(LRU)资源拷贝、删除最不常用的(LFU)资源拷贝,等等。检查和创建了足够的未分配内存后,在370,资源拷贝存储在静态高速缓冲存储器129。
在315,如果高速缓存是动态的或者渗透的,就在325检查动态性的高速缓冲存储器121,看是否有存储资源拷贝的未分配的内存空间。如果没有足够的空间,在330,就从动态的高速缓冲存储器121删除以前存储的资源拷贝,为存储新的资源拷贝提供足够的未分配空间。正如前面讨论过的,从高速缓存器121选择删除资源的判据很大程度取决于在121内的各个资源拷贝的陈旧性。也就是说,因为资源的拷贝放到动态高速缓存器121是根据关于资源的语义类型的期望的动态性,所以最好删除更旧的拷贝,并不依赖于,如资源的拷贝被再次访问的时间是多么近和访问的频率是多么高。在335,如果先前存储的资源拷贝是作为存储在动态高速缓存器的上述的渗透处理的第一阶段,就传送到静态高速缓存器129,使用前面所描述的从判断模块355开始的处理步骤。在340,当前资源拷贝存储在经过识别的、或者创建的未分配的、动态的高速缓存器内。把资源拷贝存储到了适当的高速缓存器121、129后,在390,处理继续进行。
上述内容仅仅说明了本发明的基本原理。因此可以理解,本领域的技术人员可以设计出不同的方案,尽管在此没有没有显然的描述和图示,包括本发明的基本原理,因而包含在本发明的实质和范围之内。比如,特定的语义类型的划分使用可以为每个用户和应用程序定制。高速缓冲存储器120分配给各高速缓存器121-129的数量可以动态地再分配,根据执行用户请求的高速缓存器系统100的效率而定。语义类型还可以提供给网络检索器170,减少延时或提高检索效率和效果,通过促进网络检索使用基于语义类型的直接搜索。
图中所提供的特殊的控制流程和结构是为了解释本发明,可以使用改变的结构和流程。比如,语义划分器180的功能可以包含在高速缓存系统100、请求处理器150和网络检索器170中。用同样的方式,所有的资源拷贝,如,可以保留在一个单一高速缓存结构中,高速缓存的逻辑部分可以通过规则和参数115的应用程序来实施,规则和参数把语义类型的动态性合并为关于各个存储的资源拷贝的参数。比如,高速缓存器内的每个资源拷贝有相应的单独的陈旧性判据,诸如在高速缓存器内的最长时间,这取决于语义的类型。单一的缓存策略根据该陈旧性判据以及其它判据,更常规的判据诸如LRU、LFU等判断删除哪一个资源的拷贝。本实施方案中删除资源拷贝的判断是根据有利的一般方案,在很大程度上受到具有低陈旧性判据的资源的陈旧性的影响。用同样的方式,具有低陈旧性判据的动态资源,随着在高速缓存器内的时间的增加,被选定为更经常地替换。具有高陈旧性判据的更稳定的资源,根据常规的判据如LRU、LFU,选择从高速缓存器内删除资源,以后陈旧的判据就不再出现在高速缓存器中。用同样的方式,渗透参数可以是关于每个资源的。渗透参数包含渗透进入越来越少的动态存储器的资源拷贝的非零值,和不渗透资源的零值。各个资源的渗透参数周期性地添加到各个资源的陈旧性判据中,从而周期性地降低根据陈旧性删除渗透的资源的可能性。这些以及其它系统配置和优化特点,对本公开发明领域的一个普通技术人员来说,是很显然的,并包括在如下权利要求的范围内。
权利要求
1.一种处理信息资源(185)的方法,该方法包括从远程信息源(180)接收(260)信息资源(185)的拷贝(155),和根据关于信息资源(185)的语义类型高速缓存(280)信息资源(185)的拷贝(155)。
2.如权利要求1的方法,其中拷贝(155)的高速缓存(280)至少包括下面各项其中之一静态高速缓存、动态高速缓存,和渗透高速缓存。
3.如权利要求1的方法,还包括接收(210)用户请求(151),和根据用户请求(151)判断(220)语义类型。
4.如权利要求3的方法,其中语义类型的判断至少包括下列之一判断请求(151)的上下文关系,判断用户先前的请求,判断用户简档,和判断用户对先前的请求的响应。
5.如权利要求1的方法,还包括根据资源(185)的信息内容判断(270)语义类型。
6.如权利要求1的方法,其中远程信息源包括因特网站点。
7.一种信息处理系统包括接收用户请求(151)的信息资源(185)的处理器(150),检索器(170),可操作地连接到处理器(150),实现从远程站点接收资源(185)的拷贝(155),和高速缓存系统(100),可操作地连接到处理器(150),实现存储和检索资源(185)的拷贝(155),高速缓存系统(100)包括高速缓冲存储器(121-129),用于存储拷贝(155),和高速缓存控制器(110),可操作地连接到高速缓冲存储器(121-129),用于控制根据资源(185)的语义类型在高速缓冲存储器(121-129)中存储和检索拷贝(155)。
8.如权利要求7的系统,其中高速缓冲存储器(121-129)包括多个高速缓存段,和高速缓存控制器(110)根据资源(185)的语义类型选择性地访问一个高速缓存段。
9.如权利要求7的系统,还包括语义划分器(160),可操作地连接到处理器(150),判断资源(185)的语义类型。
10.如权利要求9的系统,其中语义划分器(160)至少根据以下各项之一判断语义类型用户的上下文关系、用户先前的请求、用户的简档、以及用户对先前的用户请求的响应。
11.如权利要求9的系统,其中语义划分器(160)根据资源(185)的材料内容判断资源(185)的语义类型。
12.一个数据库(180)包括多个索引,对应多个信息资源,和多个默认的语义类型,对应多个信息资源,根据各个信息资源(185)默认的语义类型,实现多个信息资源的各信息资源(185)的高速缓存(280)。
13.一个万维网网页包括信息资源(185),和与信息资源(185)的语义类型相关的标志,用于控制万维网网页的自动处理。
全文摘要
资源,根据其语义类型被高速缓存。高速缓存策略可以为每个语义类型定制,对不同的语义类型使用不同的高速缓存策略。可以期望语义类型包含动态信息,如新闻和天气,使用动态性的高速缓存策略,其中在高速缓冲存储器内的资源,根据该资源在缓存器内的滞留时间被选择替换。反之,可以期望语义类型包含静态的资源,如百科全书式信息,使用更保守的高速缓存策略如最近最少使用(LRU)和最不常用(LFU)策略,这些策略基本上不依据资源在高速缓存器内保留的时间。另外,有些语义类型,如通信的电子邮件信息、新闻组信息,等等,可以使用多种策略相结合的高速缓存策略,其中的资源从具有动态高速缓存策略的动态高速缓存演化为更多的静态更少的动态高速缓存策略。语义类型和对应该类型的高速缓存策略之间的关系可以事先判断,或者可以由用户直接判断,或者可以至少部分地根据用户与资源交互的用户历史和简档来判断。
文档编号G06F13/00GK1585941SQ00802191
公开日2005年2月23日 申请日期2000年7月31日 优先权日1999年8月16日
发明者C·德哈拉普 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1