通过无线通信网络来有针对性地分发搜索索引片段的制作方法

文档序号:6478080阅读:185来源:国知局
专利名称:通过无线通信网络来有针对性地分发搜索索引片段的制作方法
通过无线通信网络来有针对性地分发搜索索引片段发明背景 发明领域本发明一般涉及数据处理系统领域。更具体而言,本发明涉及用于生成搜索索引 并通过无线通信网络来分发这些搜索索引的改进的体系结构。相关技术描述“搜索引擎”是被设计成帮助定位存储在计算机系统或诸如万维网等计算机系统 的网络上的数据的信息检索系统。搜索引擎允许用户请求满足特定准则的内容并生成匹配 这些准则的项目列表。该列表通常参考搜索结果的某一相关性度量来排序。如

图1所示,搜索引擎130使用搜索“索引” 120来快速且高效地操作。在操作时, 索引生成逻辑Iio使用从web服务器100-102 (或其他类型的服务器)收集的信息来持续 更新索引120。索引生成逻辑110的一种公知形式是“web爬寻器”(也被称为“web蜘蛛” 或“web机器人”),它是以系统的、自动化方式浏览万维网并且从网页中提取文本和元数据 以生成索引120的程序或自动化脚本。“倒排索弓丨”是当今诸如Yahoo 和Google 等许多流行的搜索引擎所使用的特殊 形式的索引120。如图2所示,倒排索引是根据表示从网页中提取的文本串和其他形式的信 息(例如,XML标签、多媒体内容)的“令牌”200来构建的。倒排索引中的每一个令牌条目 都包括其中出现该令牌的网页的列表。例如,在图2中,网页1、4和6包括令牌“夏威夷”; 网页1、11和14包括令牌“假期”;而网页22、29、32和40包括令牌“MP3”。这些网页条目 可在每一个令牌下基于网页的相关性来排序(例如,从最相关到最不相关)。倒排索引显著地提高了搜索引擎130执行搜索的速度。例如,搜索引擎130仅仅 标识与搜索相关的令牌并提供与这些令牌相关联的网页,而不是在每一个单独的网页中搜 索客户机140、141所提交的指定文本串或一组文本串。在连接到因特网的计算机和便携式数据处理设备的数量持续增长的情况下,当前 搜索引擎需要大量计算能力。因此,需要用于使用索引来执行搜索的更高效的策略。概述描述了一种用于标识索引中与发自无线数据处理设备的之前的搜索请求相关的 各部分并将该索引的这些部分传送到该无线数据处理设备以用于本地搜索的系统和方法。 具体而言,一种根据本发明的一个实施例的方法,包括收集关于位于网络上的多个内容的 信息;在标识到新内容时自动生成并持续更新关于该多个内容的索引;分析发自无线数据 处理设备的搜索请求;基于该分析,标识索引中与搜索请求相关的各部分;将该索引的这 些部分传送到该无线数据处理设备;以及使用存储在该无线数据处理设备上的索引的这些 部分来执行后续搜索请求。附图简述从结合以下附图的以下详细描述中可以获得对本发明的更好的理解,附图中图1示出了现有技术搜索引擎和索引的体系结构。
图2示出了在示例性倒排索引中排列令牌的方式。图3示出了本发明的一个实施例中所采用的服务。图4示出了用于将索引片段分发给数据处理设备的系统体系结构的一个实施例。图5示出了根据本发明的一个实施例的分发给示例性数据处理设备的索引片段。图6示出了其中生成关于不同类型的数据的索引片段的本发明的一个实施例。优选实施例的详细描述贯穿本说明书,出于说明目的阐述了众多具体细节以便提供对本发明的全面理 解。然而,对本领域技术人员将显而易见的是,没有这些具体细节也可实践本发明。在其它 情况下,以框图形式示出了公知的结构和设备以避免使本发明的基本原理含糊难懂。数据处理服务的实施例本发明的各实施例可以在无线设备310上实现,该无线设备310与数据处理服务 300进行通信,如图3所大致描述地。服务300和数据处理设备310的实施例在例如2002 年9 月 30 日提交的题为 SYSTEM AND METHOD FOR INTEGRATING PERSONAL INFORMATION MANAGEMENT ANDMESSAGING APPLICATIONS(用于集成个人信息管理和消息收发应用程序 的系统和方法)的共同待审的第10/262,298号申请中描述,而在数据处理设备310上动 态管理在场和联系信息的实施例在2003年6月30日提交的题为SYSTEMAND METHOD FOR DYNAMICALLY MANAGING PRESENCE ANDC0NTACT INFORMATION (用于动态管理在场和联系信 息的系统和方法)的共同待审的第10/611,019号申请中描述(下文中将这些申请称为“共 同待审的申请”),这些申请被转让给本申请的受让人并通过引用结合于此。现在将描述服务300的某些特征,之后是对用于通过无线网络来分发有针对性的 搜索索引的系统和方法的详细描述。然而,应当理解,共同待审的申请中所描述的特定数据 处理设备和系统体系结构对于实现本发明的基本原理并非必需。在一个实施例中,服务300将标准应用程序和数据转换成每一个无线通信设备 310都能够正确地解释的格式。因此,如图3所示,服务300的一个实施例包括用于处理来 自通信设备310的对因特网内容的请求340的内容转换逻辑320。更具体而言,服务300担 当数据处理设备310的代理,代表无线通信设备310将因特网请求340、341转发给适当的 因特网站点330,从因特网站点330接收标准格式的响应,并将响应324转换成无线通信设 备310能够处理的格式(例如,字节码)。例如,转换逻辑320可包括用于解释HTML代码并将该代码转换成能够在无线通信 设备310上处理/呈现的格式的呈现模块(未示出)。如现有应用中所描述的,在一个实 施例中,设备专用格式包括字节码/小程序,其在一个实施例中是Java字节码/小程序的 形式。然而,转换逻辑320可取决于所使用的无线通信设备310的具体类型(例如,具有解 释器模块的设备或者没有该模块的设备)来生成各种其他类型的已解释和/或未解释的代 码。因为服务300的一个实施例维护每一个数据处理设备310的能力/配置的密切知 识(例如,屏幕尺寸、图形/音频能力、可用存储器、处理能力、用户偏好...等),所以它可 准确地重构所请求的数据,而在同时最小化向设备310传送内容所需的带宽。例如,转换逻 辑320可对所请求的内容执行预缩放和色深度调整以使得将在数据处理设备310的显示器 内适当地呈现该内容。在进行这些计算时,该转换可将数据处理设备310上可用的存储器和处理能力计算在内。另外,转换逻辑320可使用各种压缩技术来压缩所请求的内容,并由 此节省网络带宽。用于通过无线网络来分发有针对性的搜索索引的系统和方法的新实施例服务100的一个实施例监视从每一个数据处理设备提交的搜索并且作为响应,基 于之前的搜索的主题来生成完整搜索索引的子集(此处被称为“索引片段”)。该服务然后 将索引片段传送到每一个数据处理设备,在那里这些索引片段可用于本地地执行搜索,由 此节省了服务100上的网络带宽和数据处理资源。如图4所示,在本发明的一个实施例中,服务300包括搜索引擎410,该搜索引擎 在现有搜索系统中使用索引420来执行搜索。另外,如在现有系统中,服务包括索引生成逻 辑411,该逻辑用于使用从因特网(或其他网络)上的web服务器100-102 (或其他服务器 类型)中标识的新内容来持续更新索引420。在一个实施例中,索引生成逻辑411是web爬 寻器或类似程序。然而,应当注意,本发明的基本原理不限于任何特定类型的索引生成逻辑 411。然而,与现有系统不同,在本发明的一个实施例中,服务300还包括搜索分析逻辑 430和索引片段生成逻辑431,它们用于在分析分别从数据处理设备401、402接收到的搜索 请求440、442后向每一个数据处理设备提供有针对性的搜索索引片段441、443。具体而言, 在一个实施例中,搜索分析逻辑430监视新的搜索请求440、442,并将该信息与从每一个数 据处理设备401、402接收到的之前的搜索请求432组合。基于这些搜索请求的内容,搜索 分析逻辑430标识完整索引420中针对每一个数据处理设备独特定制的索引片段。一旦搜 索分析逻辑430标识了索引片段,索引片段生成逻辑411就作为响应从完整索引420中提 取索引片段并将该索引片段分发给数据处理设备401-402中的每一个。然后在每一个数据 处理设备上使用索引片段441、443来本地地执行后续搜索。作为示例,如图5所示,如果数据处理设备401的用户频繁地执行对“假期”和“夏 威夷”的搜索,则索引片段生成逻辑431提取包含令牌“假期”和“夏威夷”以及与该索引相 关联的网页的标识(或实际网页)的索引片段501。对于本文的其余部分,术语“页面”指 的是网页或其他类型的网络内容的标识符(例如,统一资源定位符)或者实际网页或其他 类型的网络内容。类似地,如果无线设备402的用户频繁地执行对“MP3”文件的搜索,则索 引片段生成逻辑411提取包含令牌“MP3”的索引片段503。如图5所示,在一个实施例中,只将与每一个令牌相关联的最相关的页面发送到 数据处理设备。例如,只将与令牌“夏威夷”相关联的页面1以及与令牌“假期”相关联的 页面1和页面11传送到无线设备401 ;并且只将与令牌MP3相关联的页面22、29和32传 送到无线设备402。在一个实施例中,对于相对较频繁地包括在搜索中的令牌,可传送相对较多的页 面。例如,如果无线设备401的用户每天多次搜索“夏威夷”和“假期”,则可将相对较多的 页面作为索引片段501的一部分来包括。相反,如果无线设备402的用户在几天过程中只 执行了几次对“MP3”的搜索,则可在索引片段503中发送相对较少的页面。搜索请求分析逻辑430可采用各种算法来确定是否应将特定令牌包括在索引片 段中和/或对于每一令牌要包括的页面数量。例如,在一个实施例中,如果在指定时间段 (例如,一天)内执行不止一次搜索,则自动将令牌连同对应的页面子集一起包括在索引片段中。当在更多搜索中标识到该令牌时,将与该令牌相关联的附加页面作为索引片段的一 部分来包括。在一个实施例中,搜索请求分析逻辑430基于在指定时间窗口上从所有用户检测 到令牌的次数(例如,在上个月中已经搜索该令牌的其他用户的数量以及搜索结果)来确 定是否应将一令牌包括在索引片段中和/或对于每一个令牌要包括的页面数量。在一个实施例中,搜索请求分析逻辑430收集用户反馈以确定是否应将特定令牌 包括在索引片段中和/或对于每一令牌要包括的页面数量。例如,在搜索后,可询问每一个 用户搜索结果是否有帮助。如果指定数量的用户指示搜索没有帮助,则搜索请求分析逻辑 430可将该令牌从发送到数据处理设备的索引片段中排除。在一个实施例中,搜索请求分析 逻辑430允许用户指定加书签的搜索。例如,用户可指定某些令牌应始终被包括在该用户 的索引片段中(例如,“哈里波特电影”、“夏威夷假期”等)。搜索请求分析逻辑430将自动 用对这些令牌最近收集到的结果来更新该用户的索引片段。搜索请求分析逻辑430还可采用各种更复杂的算法。例如,在一个实施例中,搜索 请求分析逻辑430以在现有垃圾信息过滤器中采用贝叶斯技术的类似方式对令牌采用贝 叶斯分类。例如,基于在各个时间段内检测到特定令牌的频率,可向令牌分配权重。权重然 后可用于确定是否将特定令牌包括在索引片段中(例如,具有相对较大权重的令牌比具有 相对较低权重的令牌更有可能被包括在索引片段中)。一旦生成索引片段501、503,就将其本地地存储在每一个数据处理设备401、402 上。随后,在用户输入新搜索时,本地搜索引擎500、502最初尝试分别使用本地存储的索引 片段501、503来执行搜索。如果在本地索引片段501、503中标识到对于搜索项的令牌,则 容易地向用户提供搜索结果而无需查询服务300上的搜索引擎410。给定服务300可支持 数百或数千(或者可能数百万)用户的事实,将搜索处理卸载到各个数据处理设备中的每 一个的能力显著地减少该服务的主搜索引擎410上的负载。在一个实施例中,如果没有本地地在数据处理设备401、402上的索引片段501、 503中找到搜索项中的一个或多个,则将搜索请求发送到服务300上的主搜索引擎410。搜 索请求分析逻辑430结合之前的搜索请求432来分析该搜索请求以确定是否应将令牌和页 面发送到数据处理设备401、402以供将来搜索。在一个实施例中,搜索请求分析逻辑430和索引片段生成逻辑431响应于从每一 个数据处理设备401、402接收到的每一个新搜索请求来动态地生成索引片段。另选地或 另外地,搜索请求分析逻辑430和索引片段生成逻辑431基于自从上一次生成索引片段以 来接收到的搜索请求和/或之前存储的搜索请求432来周期性地生成并上传索引片段(例 如,每6小时一次)。上述用于生成索引片段的技术可用于除一般因特网搜索之外的各种应用。例如, 如图6所示,在本发明的一个实施例中,索引生成逻辑611生成索引620中与共享用户数据 622和/或收费可下载内容623相关的条目。具体而言,对于前者,服务300的一个实施例 允许用户共享数据。例如,在一个实施例中,存储在数据处理设备上的任何数据都被自动上 传到服务300。因此,在用户用数据处理设备来拍摄照片时,自动上传该照片。如果用户指 示应与其他用户(或指定一组用户)共享该照片数据,则索引 成逻辑611更新索引620 以包括关于该照片的条目。用户可被要求提供照片描述或其他元数据以使得索引生成逻辑611可以对该照片进行适当的分类(例如,“新西兰旅游”)。索引片段生成逻辑431然后基 于对由搜索请求分析逻辑430执行的搜索请求的分析来从主索引620的这部分中生成索引 片段,如上所述。另一用户然后可搜索索引620和/或该用户的数据处理设备上的本地索 引片段以定位并下载照片或其他类型的共享数据。可将各种类型的用户数据上传到服务并 且以此方式共享,用户数据包括但不限于日历数据、音频文件、视频文件和地址簿/联系人 列表。以此方式,服务300的用户变成其他用户的内容提供者并且内容可使用此处所描述 的分发技术来进行搜索。在一个实施例中,用户可显式地请求特定数据对其他用户保密(即,不共享)。此 外,在一个实施例中,用户数据的默认设置是“私人”。用户然后可选择允许与其他指定用户 共享其数据。在该实施例中,索引片段生成逻辑431在发送到其他用户的索引片段中仅包 括被显式地标识为要与其他用户共享的数据的令牌。如此处所使用地,“收费可下载内容”包括铃声、应用程序、墙纸、主题以及由服务 300提供给用户以供购买的任何其他内容。对于收费可下载内容623,现有数据服务将可购 买内容的目录推送到数据处理设备。用户然后可浏览该目录以标识并购买诸如铃声和可执 行应用程序等内容。在某些情况下,每天向数据处理设备推送新目录,由此消耗大量的网络 带宽。如图6所示,在本发明的一个实施例中,关于可下载内容632的信息由索引生成逻 辑611并入索引620中。另外,如在上述各实施例中,索引片段生成逻辑431基于由搜索请 求分析逻辑430执行的对之前的购买和/或搜索的分析来从主索引620的这部分中生成索 引片段。例如,如果用户频繁地购买和/或搜索铃声,则索引片段生成逻辑431可以在发送 到该用户的无线设备的索引片段中包括多个铃声令牌。类似地,如果用户频繁购买或搜索 特定类型的应用程序(例如,新的即时消息收发应用程序),则索引片段生成逻辑431可以 在索引片段中包括关于这些类型的应用程序的令牌。各种其他/附加类型的内容可以按此 方式索引同时仍旧遵照本发明的基本原理。上述技术的一个值得注意的好处是它提供用户可本地地从中搜索的独特地定制 的信息的目录,由此节省了服务上的处理资源并增加了可购买内容的目录包含用户感兴趣 的内容的可能性。由此,无需在周期性的基础上(例如,每天)将整个目录下载到数据处理 设备,由此节省网络资源。在一个实施例中,图3-6中所示的逻辑用在数据处理设备401、402和服务300上 执行的软件来实施。然而,本发明的基本原理不限于软件实现。例如,这些逻辑可以用硬件、 固件、软件、或其任何组合来实施。此处所使用地,“网络”指的是公共因特网以及专用网络,诸如数据服务300和其他 远程数据服务中所采用的网络。本发明的实施例可以包括以上阐明的各个步骤。这些步骤可被具体化成使通用或 专用处理器执行特定步骤的机器可执行指令中。另选地,这些步骤可由包含用于执行这些 步骤的硬连线逻辑的专用硬件组件来执行,或由编程的计算机组件和自定义的硬件组件的 任何组合来执行。本发明的元素还可以作为用于存储机器可执行指令的机器可读介质来提供。该机 器可读介质可以包括,但不限于,软盘、光盘、CD-ROM、以及磁光盘、ROM、RAM、EPROM、EEPROM、磁卡或光卡、传播介质或适于存储电子指令的其它类型的介质/机器可读介质。例如,本发 明可以作为计算机程序来下载,其可用具体化在载波或其它传播介质中的数据信号的方式 经由通信链路(例如,调制解调器或网络连接)从远程计算机(例如,服务器)传输到请求 计算机(例如,客户机)。 贯穿以上描述,为解释起见,阐明了众多具体细节以提供对本发明的全面理解。然 而,对本领域技术人员将显而易见的是,没有这些具体细节也可实践本发明。因此,本发明 的范围和精神应根据所附权利要求书来判断。
权利要求
一种计算机实现的方法,包括收集关于位于网络上的多个内容的信息;在标识到新内容时自动生成并持续更新关于所述多个内容的索引;分析发自无线数据处理设备的搜索请求;基于所述分析,标识所述索引中与所述搜索请求相关的各部分;从所述索引中提取所述索引的所标识的各部分;将所述索引的所述各部分传送到所述无线数据处理设备;并且其中所述索引的所述各部分可在所述无线数据处理设备上用于执行后续搜索请求。
2.如权利要求1所述的方法,其特征在于,所述多个内容包括因特网上的网页。
3.如权利要求1所述的方法,其特征在于,所述多个内容包括由其他无线数据处理设 备的用户提供的共享内容。
4.如权利要求1所述的方法,其特征在于,所述多个内容包括收费可下载内容。
5.如权利要求1所述的方法,其特征在于,生成索引包括生成包括多个令牌的倒排索 弓I,每一个令牌都具有与其相关联的一个或多个页面。
6.如权利要求1所述的方法,其特征在于,还包括 分析发自一无线数据处理设备的后续搜索请求;基于所述分析,标识所述索引中与所述搜索请求相关的其他部分;以及 将所述索引的所述其他部分传送到所述无线数据处理设备。
7.如权利要求1所述的方法,其特征在于,还包括在所述无线数据处理设备上使用存储在所述无线数据处理设备上的所述索引的所述 各部分来执行后续搜索请求。
8.如权利要求1所述的方法,其特征在于,所述网络包括因特网和一个或多个专用网
9.一种系统,包括索引生成逻辑,其用于收集关于位于网络上的多个内容的信息并在标识到新内容时自 动生成并持续更新关于所述多个内容的索引;搜索请求分析逻辑,其用于分析发自无线数据处理设备的搜索请求并基于所述分析, 标识所述索引中与所述搜索请求相关的各部分;以及索引片段生成逻辑,其用于提取所述索引的所述各部分并将所述各部分传送到所述无 线数据处理设备,其中所述索引的所述各部分可以在所述无线数据处理设备上用于执行后 续搜索请求。
10.如权利要求9所述的系统,其特征在于,所述多个内容包括因特网上的网页。
11.如权利要求9所述的系统,其特征在于,所述多个内容包括由其他无线数据处理设 备的用户提供的共享内容。
12.如权利要求9所述的系统,其特征在于,所述多个内容包括收费可下载内容。
13.如权利要求9所述的系统,其特征在于,生成索引包括生成包括多个令牌的倒排索 弓I,每一个令牌都具有与其相关联的一个或多个页面。
14.如权利要求9所述的系统,其特征在于,所述搜索请求分析逻辑分析发自所述无线 数据处理设备的后续搜索请求并基于所述分析,标识所述索引中与所述搜索请求相关的其他部分;并且其中所述索引片段生成逻辑将所述索引的所述其他部分传送到所述无线数据 处理设备。
15.如权利要求9所述的系统,其特征在于,所述网络包括因特网和一个或多个专用网
16.一种其上存储有程序代码的机器可读介质,所述程序代码在被机器执行时使得所 述机器执行以下操作收集关于位于网络上的多个内容的信息;在标识到新内容时自动生成并持续更新关于所述多个内容的索引;分析发自无线数据处理设备的搜索请求;基于所述分析,标识所述索引中与所述搜索请求相关的各部分;从所述索引中提取所述索引的所标识的各部分;将所述索引的所述各部分传送到所述无线数据处理设备;并且其中所述索引的所述各部分可在所述无线数据处理设备上用于执行后续搜索请求。
17.如权利要求16所述的机器可读介质,其特征在于,所述多个内容包括因特网上的 网页。
18.如权利要求16所述的机器可读介质,其特征在于,所述多个内容包括由其他无线 数据处理设备的用户提供的共享内容。
19.如权利要求16所述的机器可读介质,其特征在于,所述多个内容包括收费可下载 内容。
20.如权利要求16所述的机器可读介质,其特征在于,生成索引包括生成包括多个令 牌的倒排索引,每一个令牌都具有与其相关联的一个或多个页面。
21.如权利要求16所述的机器可读介质,其特征在于,包括使得所述机器执行以下操 作的附加程序代码分析发自一无线数据处理设备的后续搜索请求; 基于所述分析,标识所述索引中与所述搜索请求相关的其他部分;以及 将所述索引的所述其他部分传送到所述无线数据处理设备。
22.如权利要求16所述的机器可读介质,其特征在于,包括导致以下操作的附加程序 代码在所述无线数据处理设备上使用存储在所述无线数据处理设备上的所述索引的所述 各部分来执行后续搜索请求。
23.如权利要求16所述的机器可读介质,其特征在于,所述网络包括因特网和一个或 多个专用网络。
全文摘要
一种用于标识索引中与发自无线数据处理设备的之前的搜索请求相关的各部分并将该索引的这些部分传送到该无线数据处理设备以用于本地搜索的系统和方法。具体而言,一种根据本发明的一个实施例的方法,包括收集关于位于网络上的多个内容的信息;在标识到新内容时自动生成并持续更新该多个内容的索引;分析发自无线数据处理设备的搜索请求;基于该分析,标识索引中与搜索请求相关的各部分;将该索引的这些部分传送到该无线数据处理设备;以及使用存储在该无线数据处理设备上的索引的这些部分来执行后续搜索请求。
文档编号G06F17/30GK101983382SQ200880103415
公开日2011年3月2日 申请日期2008年8月20日 优先权日2007年8月20日
发明者T·J·桑德斯 申请人:丹吉尔股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1