CN102027471B - 改进的搜索引擎 - Google Patents

改进的搜索引擎 Download PDF

Info

Publication number
CN102027471B
CN102027471B CN200980117385.7A CN200980117385A CN102027471B CN 102027471 B CN102027471 B CN 102027471B CN 200980117385 A CN200980117385 A CN 200980117385A CN 102027471 B CN102027471 B CN 102027471B
Authority
CN
China
Prior art keywords
search
data
results
search results
treating apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200980117385.7A
Other languages
English (en)
Other versions
CN102027471A (zh
Inventor
西蒙·伊恩·贝恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Business Partners Ltd
Original Assignee
Business Partners Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Business Partners Ltd filed Critical Business Partners Ltd
Priority to CN201410593426.2A priority Critical patent/CN104361038B/zh
Publication of CN102027471A publication Critical patent/CN102027471A/zh
Application granted granted Critical
Publication of CN102027471B publication Critical patent/CN102027471B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3338Query expansion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • G06F16/835Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Abstract

一种用于生成改进的搜索查询的搜索引擎,该引擎包括:用于接收搜索请求的输入装置,所述搜索请求包括N个搜索词;处理装置,被设置为根据所接收的搜索请求制定出搜索查询;输出装置,被设置为输出所述搜索查询,其中,所述处理装置被设置为通过生成多个搜索串来制定出所述搜索查询,每个搜索串包括所述N个搜索词的子集的不同组合。

Description

改进的搜索引擎
技术领域
本发明涉及改进的搜索引擎。更具体地,本发明涉及用于创建从文件索引或远程数据源检索搜索查询的改进的搜索引擎,本发明还涉及用于从接收到的搜索结果中去除重复条目的改进的重复数据删除处理。
背景技术
搜索引擎是信息检索系统,其允许计算机系统的用户指定与感兴趣的项相关的标准,即,“搜索词”,并使搜索引擎找到匹配的项。在文本搜索引擎如谷歌中,搜索查询通常表示为一组词汇。
为了加快搜索进程,搜索引擎通常会在被称为索引的过程中预先收集关于项组的元数据。索引通常需要较小的计算机存储量,并提供使搜索引擎计算项目相关性的基础。
桌面搜索是搜索用户的硬盘驱动器内容而不是互联网的搜索工具的名称。这种工具可能找到包括网页浏览器历史、电子邮件档案、文本文件、声音文件等的信息。这种搜索工具可能非常快,但可能不搜索整个硬盘驱动器。例如,只搜索操作系统的特定应用程序(例如微软文件、文件夹),而可能不包括电子邮件或联系人数据库中包含的信息。
由于大量的公司数据可被存储在非结构化数据中(例如,用户创建的目录结构),因此桌面搜索引擎工作能够在计算机的所有区域内搜索是很重要的。
桌面搜索引擎建立和维护索引数据库以优化搜索性能。当计算机处于空闲状态时进行索引,搜索引擎一般收集与文件名/目录名、例如标题或作者等元数据、以及所支持的数据项/文件的内容相关的信息。桌面搜索工具的实例是由微软发布的用于Windows操作平台的编制索引的桌面搜索平台“Windows Search”。
网络搜索引擎提供搜索互联网上的信息的接口。网络搜索引擎通过存储与大量网页相关的信息而运行,这些信息由跟踪其所见的每个链接的自动的网页浏览器网络爬虫检索。然后,每页的内容被编制索引并存储在以后查询所使用的索引数据库中。当用户例如通过使用关键词在搜索引擎中键入查询时,网络搜索引擎检查其索引并根据其标准提供最匹配网页的列表。大多数搜索引擎都支持布尔运算符“AND(与)”、“OR(或)”、“NOT(非)”以进一步指定搜索,一些引擎提供允许用户指定关键词之间的距离的近似搜索。
鉴于目前互联网的规模和发展速度,初始搜索查询是相关的、以便返回相关的搜索结果是重要的。搜索引擎的效用还取决于返回的结果集的相关性,目前的搜索引擎的一个主要问题是结果集包含重复搜索结果的趋势。
目前通过哈希算法处理搜索结果的重复数据删除,其中由哈希算法处理每个数据块,从而生成存储在索引中的唯一编号。当一个数据块接收到哈希数时,将这个数与其他现有的哈希数的索引进行比较。如果哈希数已经存在于索引中,则该数据块被认为是重复的并不被存储。否则,将新的哈希数添加到索引并存储新数据。然而,在某些情况下,哈希算法可能为两个不同的数据块生成相同的哈希数。当这样的哈希冲突发生时,系统将不会存储新的数据,因为系统认为其哈希数已经存在于数据索引中。这种误报可导致数据丢失。还应注意的是哈希算法是复杂的。
搜索引擎的已知的另一个缺点是其可搜索的数据源的类型限制。传统地,搜索引擎对非结构化数据源编制索引并进行搜索。因此,被约束在如数据库的结构化数据存储中的大量数据不能由传统的搜索引擎访问。如果结构化数据被单独编制索引,则该索引可提供给搜索引擎,但是对于已经在其自身结构内的编入索引的数据,这会产生进一步的数据存储。
因此,本发明的目的是提供一种搜索引擎,该搜索引擎可克服或本质上缓和现有技术的上述问题。
发明内容
根据第一方面,本发明提供了用于生成改进的搜索查询的搜索引擎,该引擎包括:用于接收搜索请求的输入装置,所述搜索请求包括N个搜索词;处理装置,被设置为根据所接收的搜索请求制定出搜索查询;输出装置,被设置为输出所述搜索查询,其中,所述处理装置被设置为通过生成多个搜索串来制定出所述搜索查询,每个搜索串包括所述N个搜索词的子集的不同组合。
本发明的第一方面提供了搜索引擎(搜索查询生成引擎),该搜索引擎被设置成接收用户输入的搜索请求,并重新整理和混合请求中包含的项以便形成搜索查询。应注意到,通过以该方式将输入搜索词组分成较小的分组,该搜索引擎执行的搜索更可能返回准确的一组结果。
可以将所述搜索查询输出给本地文件索引,例如在如果所述搜索引擎是桌上型个人电脑的部分的情况下,或者可以将所述搜索查询输出给基于服务器的文件索引或远程数据库。
优选地,每个搜索串包括M个搜索词的不同组合,其中N>M。通常,多个搜索串的每一个中的搜索词的数量可以在1到M之间变化。注意到,由所述搜索引擎创建的所述搜索查询可以包含来自输入搜索请求的任何数量的搜索词。
可选地,可以将所述处理装置设置成通过确定搜索词的组合NCM制定出所述搜索查询,每个组合是不同的搜索串。注意到,该选项将确保将输入搜索词的任何可能组合制定成搜索查询。
作为搜索请求的上述制定的替代选择,可以将所述处理装置设置成对于包括N个词的搜索请求根据搜索词的预确定的排列制定出所述搜索查询。例如,所述搜索引擎可以被预编制有用于具有给定长度N的输入搜索请求的所述搜索查询的通用格式。为了通过说明获得一个(非限制的)示例,所述搜索引擎可以接收包括6个搜索词的搜索请求。其然后可以查找在输入搜索请求包括6个项的任何时候应当使用的那些搜索词的多个预编制的配置。因此,一种配置可能包括项1、3、5和6,另一种可能包括项2、4和6等等。
在所述搜索引擎包括搜索词的预确定的配置的情况下,所述处理装置可以被设置成将不同的标识符指定给在所述搜索请求中接收到的每个搜索词,所述预确定的配置可以包括标识符的不同排列和选择。
可选地,所述处理装置可以被设置成将两个或更多搜索词组合在一起并将被分组的词指定给单个标识符。
便利地,在所述搜索词包括文本的情况下,可以将所述处理装置设置成对所接收的搜索词进行同义词查找,还可以将所述处理装置设置成对任意搜索词进行同义词替换,以形成用于包括在所述搜索查询中的附加搜索串。
便利地,所述输出装置可以被设置成将所述搜索查询输出给由文件信息的索引数据库组成的文件索引,所述处理装置可以被设置成生成呈SQL查询形式的所述搜索查询。
便利地,所述输出装置可以被设置成将所述搜索查询输出到结构化数据源。优选地,在将所述搜索查询输出给结构化数据源的情况下,所述搜索引擎进一步包括用于所述结构化数据源的配置文件,所述配置文件具有涉及所述结构化数据源的连接信息,以允许所述处理装置生成所述搜索查询。
本发明的第一方面的所述搜索引擎还可以便利地与重复数据删除引擎结合,将该重复数据删除引擎设置成去除作为所生成的搜索查询的结果返回的重复搜索结果。便利地,所述重复数据删除引擎被设置成将结果组输出给用户并包括:搜索结果输入装置,被设置为接收多个搜索结果,每个搜索结果包括一个或多个数据项;重复数据删除装置,被设置为去除来自在所述搜索结果输入装置处接收的多个搜索结果的重复搜索结果并生成结果组;存储的数据组,其包括一个或多个数据类别和遍及一个或多个数据类别分布的一个或多个数据项;结果组输出装置,被设置为输出结果组,其中,所述重复数据删除装置被设置成将所述存储的数据组与所述搜索结果相比较并根据下面准则确定第一搜索结果是否是重复结果:a)如果在所述存储的数据组中的全部一个或多个数据类别的内容被确定成匹配所述第一搜索结果中的数据项,那么将所述第一搜索结果确定为重复结果并将其丢弃;或者b)如果所述存储的数据组中的数据类别中的至少一个的内容被确定不匹配所述第一搜索结果中的任何数据项,那么将所述第一搜索结果添加到所述结果组。
根据第二方面,本发明提供用于将结果组输出给用户的搜索引擎,所述搜索引擎包括:输入装置,被设置为接收多个搜索结果,每个搜索结果包括一个或多个数据项;处理装置,被设置为去除来自在所述输入装置处接收的多个搜索结果的重复搜索结果并生成结果组;存储的数据组,其包括一个或多个数据类别和遍及一个或多个数据类别分布的一个或多个数据项;输出装置,被设置为输出结果组,其中,所述处理装置被设置成将所述存储的数据组与搜索结果相比较并根据下面准则确定第一搜索结果是否是重复结果:a)如果在所述存储的数据组中的一个或多个数据类别中的全部的内容被确定成匹配所述第一搜索结果中的数据项,那么将所述第一搜索结果确定为重复结果并将其丢弃;或者b)如果所述存储的数据组中的数据类别中的至少一个的内容被确定不匹配所述第一搜索结果中的任何数据项,那么将所述第一搜索结果添加到所述结果组。
如上面注意到的,与公知的搜索引擎有关的主要问题中的一个是结果的重复数据删除。本发明的第二方面提供了用于机械地去除重复结果并将结果组输出给用户的机制(在本文中也称为重复数据删除引擎)。将所接收的搜索结果与包括一个或多个数据类别的存储的数据组相比较。当在所述存储的数据组中的内容匹配给定搜索结果中的全部内容项时,则认为该结果是重复结果并将其丢弃。当在所述存储的数据组中的内容中的至少一些不匹配搜索结果时,则认为搜索结果是新的搜索结果并将其添加到所述结果组。然后将输出装置(结果组输出装置)设置成输出所述结果组(例如,给用户)。
本发明的第二方面因此提供了对被返回给搜索引擎的用户的搜索结果组进行改进的方法。
在本发明的该方面的优选变形中,所存储的数据组包括XML字段(“XML节点”)的数组,所接收的搜索结果或者以XML格式的形式或者被转换成XML格式。然后可以将在所存储的数组中的每个XML字段的内容与所接收的搜索结果相比较,以确定(i)是否搜索结果包括该字段以及(ii)如果其包括该字段,那么该字段的值是否匹配已在所存储的数组中的值。
优选地,如果所述第一搜索结果被确定成新的结果(即,其不是重复结果)并被添加至所述结果组,则所述处理装置(重复数据删除装置)可以被设置成将所述第一搜索结果的一个或多个数据项添加至所述存储的数据组。这确保了当接收到进一步的搜索结果时,将它们与已经接收到的全部前面的搜索结果的数据项相比较,从而提高系统效率。
便利地,可以将所述处理装置设置成轮流获取多个搜索结果中的每个并将它们与存储的一组数据项相比较,以便根据前面的准则(a)和(b)确定每个搜索结果是否是重复结果。
如上注意到的,可以以所述搜索引擎能够处理的格式接收所述搜索结果。在不能立即使用所述搜索结果的情况下,然而,所述处理装置可以被设置成将在所述输入装置处接收的每个搜索结果转换成包括一个或多个数据类别的结构化数据格式,一个或多个数据类别中的每一个包含数据项。例如,可以将所述搜索结果转换成XML格式,其中,每个数据类别是XML字段(例如,地址字段),每个数据项是该字段的值(例如,实际的街道名或邮编)。
便利地,可以以包括一个或多个数据类别的结构化数据格式的形式在所述输入装置(搜索结果输入装置)处接收多个搜索结果,一个或多个数据类别中的每一个包括数据项。
优选地,可以以结构化的数据组格式存储所存储的数据。例如,所述存储的数据组可以是一排XML字段。
优选地,所述存储的数据组可以以包括一个或多个数组的数组表形式,每个数组与数据类别关联,一个或多个数据项遍及所述一个或多个数组分布。例如,所述阵列表可以包括多个数组(或XML字段)。
优选地,在所存储的数据是以数组表形式的情况下,可以将所述处理装置设置成确定所述第一搜索结果是否包括所述数组表中的全部所述数据类别,而且可以将所述处理装置设置成如果所述数组表中的所述数据类别中的任一个没有出现在所述第一搜索结果中则将第一结果添加到所述结果组。
对于给定的搜索结果,所述数组表中的全部所述数据类别还可能出现在所述搜索结果中。在这种情况下,所述处理装置可以被设置成将所述数组表中的每个数据类别的内容与所述第一搜索结果中的对应数据类别的内容相比较以便确定所述第一数据类别是否是重复结果。便利地,如果对于每一个或全部的对应数据类别,同一数据项既出现在所述数组表中又出现在所述第一搜索结果中,则可以将所述第一搜索结果确定成重复结果并可以将其丢弃。在该实施例中,所述数组表和搜索结果可以包含完全相同的数据类别,例如,所述数组表可以包含三个类别,Address1、PostCode和Contact Name,这也出现在所述搜索结果中。为了确定该结果是否是重复结果,则可以对那些类别中的每一个中的数据项的值进行比较,如果所述搜索结果包括匹配所述数组表中的对应类别中的值,则可以将所述搜索结果确定成重复结果。
如果在所述数组表中的任何数据类别不与所述第一搜索结果中的对应数据类别匹配,则可以将所述第一搜索结果确定成新结果(即,非重复结果)并可以将其添加到所述结果组。
优选地,可以将所述处理装置设置成轮流获取多个搜索结果中的每一个并将它们与所述数组表相比较,以便确定每个搜索结果是否是重复结果。
便利地,可以接收搜索结果或将其转换成包括一个或多个XML节点的XML格式,一个或多个XML节点中的每一个对应于数据类别。
便利地,所述存储的数据组最初可以是空的并可以被填充有对于在所述输入装置处接收的头两个搜索结果常见的数据项。这便利地允许所述搜索引擎以逐个搜索为基础限定适合的数据类别。
可选地,所述存储的数据组最初可以是空的,但可以包括预限定的数据类别。在该选项中,在开始搜索之前可以有效地对所述搜索表进行预限定。
优选地,所述搜索引擎可以进一步包括限定多个数据类别的配置文件,所述存储的数据组中的一个或多个数据类别选自所述配置文件中的多个数据类别。
根据第三方面,本发明提供了用于生成搜索查询和用于处理所接收的搜索结果的搜索引擎,其包括:根据本发明的第一方面用于生成改进的搜索查询的搜索引擎;和根据本发明的任何第二方面用于将结果组输出给用户的搜索引擎。
本发明的第三方面便利地提供包括本发明的第一方面的特征和第二方面的特征的搜索引擎。注意到,本发明的第三方面可以包括本发明的第一方面和/或第二方面的优选特征/可选特征。
根据第四方面,本发明提供了将数据源的数据结构映射到预确定的一组数据标签的方法,所述方法包括:显示一组预确定的数据标签;显示所述数据源的所述数据结构,所述数据源的所述数据结构包括多个数据字段名;将该组数据标签与所述数据源的所述数据结构相比较并标识与该组预确定的数据标签中的数据标签对应的数据字段名;存储在比较步骤中标识的关系。
在本发明的上述方面中,所述搜索引擎可以为数据库构造SQL查询。为了所述搜索引擎和数据库能够互相交互,本发明的第四方面便利地提供了将数据源(例如,数据库)的数据结构映射到预确定的一组数据标签(例如,所述搜索引擎的数据标签)的方法。
便利地,可以以XML格式存储在比较步骤中标识的关系。优选地,所述数据源可以是数据库,所述关系可以与用于所述数据库的登录信息一起被存储。
本发明还延伸到生成搜索查询的方法和将结果组输出给用户的方法。
本发明还延伸到包含在记录介质/只读存储器/电载波信号上或存储在计算机存储器中的计算机程序,所述计算机程序包括用于使计算机执行本发明的方法的过程的程序指令。
附图说明
为了使本发明能够得到更好地理解,现在将通过举例的方式参照以下附图:
图1a是根据本发明的实施方式的搜索引擎的桌面版本的原理图;
图1b是根据本发明的实施方式的搜索引擎的基于服务器的版本的原理图;
图2是根据本发明的实施方式的搜索引擎的另一原理图;
图3是示出了如何在根据本发明的实施方式的桌面计算机上创建搜索查询以及处理搜索结果的流程图;
图4是示出了如何在根据本发明的实施方式的服务器计算机上创建搜索查询以及处理搜索结果的流程图;
图5a示出了如何根据本发明的实施方式创建用于构造搜索查询的搜索词组合;
图5b示出了图5a的另一选择;
图6示出了从图5的组合构造的SQL搜索查询的实施例;
图7示出了搜索结果可如何转换成XML格式;
图8、9a和10示出了如何通过根据本发明的实施方式的搜索引擎将重复的搜索结果从所接收到的结果中去除;
图9b是示出了用于处理根据本发明的实施方式的搜索结果的另一技术(相对于图9a的技术)的流程图;
图11示出了根据本发明的实施方式可用于构造SQL查询的配置文件的实施例;
图12是示出了根据本发明的实施方式可如何将数据库的特征映射到搜索引擎的特征的屏幕截图。
具体实施方式
应注意,在全部附图和以下说明书中,相似的数字用于表示相似的特征。
图1a示出了桌面计算机。计算机1包括:数据存储3(例如硬盘驱动器),其上存储有用户可能希望搜索的信息项;以及索引文件数据库5,包含与数据存储中感兴趣的项相关的诸如文件名、元数据和内容信息等数据。
计算机1还包括根据本发明的实施方式的搜索引擎7。该搜索引擎具有:输入装置9,用户可以通过该输入装置输入多个搜索词(例如通过在键盘上键入文本);处理装置10,用于将所接收到的搜索请求处理成搜索查询、或对所接收到的搜索结果(例如,从数据库5接收到的搜索结果)进行重复数据删除;以及输出装置11,可输出一组搜索结果以显示在例如计算机1的显示屏13上。当从用户接收到搜索请求后,搜索引擎7与索引数据库5通信,下文将参照图3对此更详细地进行描述。
图1b示出了本发明的一个版本,其中根据本发明的实施方式的搜索引擎位于服务器计算机15上。应注意,在图1a和1b中,相似的数字用于表示相似的特征。
在图1b中,服务器15通过电信网络17(例如因特网或局域网)连接至两个桌面计算机1、1’和两个其它的外部数据源(在此为数据库19、21)。
桌面1、1’分别包括数据存储3、3’和文件索引数据库5、5’。
服务器15包括根据本发明的实施方式的搜索引擎、本地文件索引23和本地数据存储25。在使用中,服务器15可以通过输入/输出27从任何已连接的计算机源1、1’接收搜索请求。随后可以构造搜索查询,如下文将参照图3更详细地描述,并将构造的搜索查询发送至文件索引5、5’、23和数据库19、21。
虽然示出的本发明的桌面版本仅连接至文件索引数据库,但应注意,搜索引擎还能够以与图1b中所示方式类似的方式对外部数据库进行访问。然而,为了下面的描述,假定桌面版本仅搜索文件索引,并且搜索引擎的服务器版本搜索本地和远程文件索引以及外部数据源。
图2示出了根据本发明的实施方式的搜索引擎的另一原理图。如图2所示,搜索引擎7与文档、数据库和其它应用程序进行通信。搜索引擎包括多个组件,诸如:促进搜索引擎和应用程序之间的相互联系的应用程序连接器29、安全文件索引31、以及控制用户交互的模块33和控制访问管理的模块35。如上面关于图1a和1b所提到的,搜索引擎可以嵌入在桌面上或可以通过网页浏览器进行访问。
应注意,在图1a、1b和图2中,处理装置10被示出为能生成搜索查询并能对所接收到的搜索结果进行重复数据删除的单个组件。但应理解,可以存在多于一个处理装置,例如一个用于生成搜索查询,一个用于对所接收到的结果进行重复数据删除。
还应注意,下文所述的用于生成搜索查询/搜索词组合或将结果进行重复数据删除为结果组的搜索引擎7应该被理解为表示搜索引擎7中执行这些功能的处理装置10(单个或多个处理组件)。
图3是示出了包括根据本发明的实施方式的诸如图1中所示的搜索引擎7的桌面计算机1上的搜索过程的大致流程图。
在步骤30中,搜索引擎通过输入装置9接收来自用户的搜索请求。这样的搜索请求通常会包括多个基于文本的搜索词(例如BBC NewsArchive European space agency)。
在接收到搜索词后,搜索引擎7创建这些搜索词的子集的多个组合。例如,在上面的搜索请求中存在六个单独的词。因此,在步骤32中,搜索引擎可以创建高达例如四个词汇的多个群。这种搜索词组合的创建增加了返回一组准确的结果的机会。下面参照图5更详细地描述搜索词组合的创建。
在步骤34中,将这些搜索词组合结合为单个搜索查询(例如以基本的SQL格式),该搜索查询随后可被发送至文件索引数据库5。图6a中示出了一般的SQL查询的实施例。
步骤30至34(图3中的虚线35上方)是根据本发明第一个方面的搜索查询的生成。步骤36、38和40(图3中的虚线35下方)是根据本发明第二个方面将结果组输出至用户。
在步骤36中,搜索引擎7从文件索引5接收多个搜索结果。这些结果可以XML格式接收或通过该搜索引擎转换成XML格式,如下面关于图7所述。
在步骤38中,将XML结果的各个元(或节点)与所存储的节点相比较,以去除重复的搜索结果。下文将参照图8至10详细地描述这一过程。唯一的搜索结果在步骤38中被合并为结果组,并随后(在步骤40中)被输出至用户。
图4是示出了类似于图3的处理的流程图,除了图4中的搜索引擎7位于服务器15并能够访问保存在外部数据库19、21中的数据。与图3相同的处理步骤使用相同的参考标号表示。应注意,图4所提到的文件索引可以是服务器上的本地索引23,也可以是保存在远程放置的用户计算机上的文件索引5。
在接收到用户输入的搜索词后,和图3一样,图4中的搜索引擎创建搜索词组合(步骤32),创建搜索查询(34),接收搜索结果(步骤36),对结果进行重复数据删除(步骤38),并且输出结果组(步骤40)。
然而,在步骤30中接收搜索词还导致,在步骤42中,搜索引擎7对存储有外部数据库19,21的详细信息的数据库配置文件进行解密,其中搜索引擎可以访问该外部数据库以便该搜索引擎能够创建该数据库的数据库查询(除了步骤34中对文件索引的SQL查询之外)。
在解密配置文件之后,在步骤44中创建数据库报告SQL并将其发送至数据库(图6中示出了实施例SQL)。随后搜索引擎前进至步骤36,并且数据库结果与来自文件索引的结果合并并以相同方式处理。
相比于图3和4中所示的步骤32,图5a更加详细地示出了创建各搜索词组合的过程。在图5a中所示出的各处理框旁边是基于先前提到的搜索请求“BBC News Archive European Space agency”的处理实施例。
如图3和4所示,在步骤30中,用户首先将其搜索词输入其计算机的显示器13的显示窗。随后在步骤46中,搜索引擎将搜索词置于已编号的数组,从而使各搜索词与其自身的数字标识符(在此例中为“1”至“6”)关联。
在步骤48中,搜索引擎检索六个搜索词的输入串的已存储的搜索短语排列,并且在步骤50中按照已存储排列对当前搜索词进行排列。
步骤50的输出是搜索词的九个不同组合(九个不同的搜索串),这九个组合可以被置于搜索查询中(图3和4中的步骤34)。
可选地,在步骤52中,搜索引擎7还可以执行同义词查找并基于该查找结果进一步创建搜索组合。在这种情况下,搜索组合1和3包括的词“BBC”可以被扩展为“British Broadcasting Corporation”,因此产生可以被置于搜索查询中的另两个搜索词组合(另两个搜索串)(按照图3和4中的步骤34)。
应注意,除了如上所述的创建搜索词组合的过程之外,根据本发明的实施方式的系统还可以处理复杂的搜索查询组合,例如:
BBC+News+Archive European space agency
在该实施方式中,搜索引擎不会排列词汇“BBC News Archive”的位置(并将其作为单个的搜索词来处理),但会排列词汇“European”,“space”和“agency”的位置。图5b中示出了本发明的这种变体,以及在其中选择替换词的另一变体。
图6示出了SQL查询的实施例,该查询可以从图5a示出的十一个搜索组合中构造。
应注意,根据本发明的实施方式,可以基于用户的喜好对输入搜索请求时所使用的搜索语言进行配置。例如,搜索语言的实施例可以为:
SELECT TEXT=′Text to Search′
STARTDATE=′A Date′
END DATE=′A Date′
AUTHOR=′Author Name′
FILENAME=′A Filename′
在该实施例中,可以改变搜索条件(以斜体示出)以适应特定组织的数据结构,例如AUTHOR可以被替换为CUSTOMERNUMBER。
发送至文件索引/外部数据库的SQL查询的输出是SQL返回。图7是两个结果的这种返回的格式的实施例。该返回可以是XML可兼容的格式,但如果不是XML格式,其能够以下列两种方式中的一种转换为XML格式:
1)对于输出中的每个结果,可以将fieldname(字段名)数据标准化为符合XML语法的元素名;或
2)可以查询存储在计算机上的映射文件,其中该计算机包含字段名和XML元素之间的关系。随后可将每个字段中的数据输出映射至XML元素并且添加到输出。随后可将每个元素以结束语结束。
图8示出由根据本发明的实施方式的搜索引擎接收的三个XML搜索结果。每个XML结果包括多个类或节点,其中的每个类或节点均包含(或可包含)搜索数据。应注意的是,图8中的XML结果是图7所示的通用格式的示例。
以XML结果1为示例,节点是“reference(引用)”、“Company-name(公司名称)”、“creditLimit(信用额度)”、“lastInvoice(最后进票)”、“outstanding(未清帐的)”、“60Days(60天)”和“90Days(90天)”。
这些节点的每一个都与各种搜索数据相关,例如“creditLimit”节点包含值“100,000”而“outstanding”节点包含值“3000.00”。
由搜索引擎进行的搜索结果的重复数据删除处理将参照图9a的流程图与图10的数组表进行描述。
在图9a的步骤36中,接收XML搜索结果。应注意的是,该结果可转换成XML格式,如与图7有关的上文所述。
在步骤60中,前两个XML结果被选中,在步骤62中,识别公共的类。在这种情况下,应注意节点“reference”和“Company-name”是这两个结果共有的,而搜索引擎取这两个节点并创建两个数组保存这些公共节点的值。
然后在步骤64中,搜索引擎7从结果1和结果2中包含的节点中随机选择多达三个的进一步的节点标识符,并对这些节点创建进一步的数组。还应注意的是,搜索引擎可持有配置文件(如下文关于图11和图12的描述),该文件详细说明存在于文件索引/外部数据库中的各种节点标识符,并且上述的进一步的节点标识符可从该配置文件中选出。在任何情况下,应注意的是,存在于结果1和结果2中的节点将存在于任何这样的配置文件中。
步骤60、62和64的结果是图10所示的数组表100。可以看出,在这个示例中搜索引擎已经从XML结果2选择了节点“Address2(地址2)”,从XML结果2选择了节点“postcode(邮政编码)”,以及从XML结果1选择了节点“creditLimit(信用额度)”。应注意,结果1和结果2中的这些节点包含的各个搜索数据已被添加到数组表100(步骤66)。
应注意的是,在重复数据删除处理中比较的节点数可取决于搜索引擎的设置或搜索的背景而改变。例如,如果正在搜索邮件,则系统可被设为仅搜索少数元数据(例如“寄信人”、“日期”、“主题”、“标识”字段)。或者,可仅搜索单独的元数据项(例如“标识”)。相比之下,如果正在搜索会计应用,则搜索更多的字段可能是适当的(例如“客户”、“供应商”、“债务总额”、“当前地址”、“最后订单”等)。
然后,搜索引擎开始相对于数组表检查每个搜索结果的过程,以确定结果是否为重复条目。
因此,在步骤68中搜索引擎取XML结果2,并在步骤70中相对于数组表100所包含的节点检查结果2的节点。当每个节点中持有的搜索数据与数组表中的值相匹配时,搜索引擎指定其为“真”。当每个节点中持有的搜索数据与数组表中的值不匹配时,搜索引擎指定其为“假”。
步骤70中的检查功能由图10中的数组表102表示,其中可看出XML结果2的搜索数据与数组1和数组2匹配,但与数组3至数组5不匹配。
当搜索引擎确定XML结果包括与数组表中的每个节点所匹配的搜索数据时,该结果被认为是重复的并且在步骤72中将其丢弃。
当搜索引擎确定XML结果不包括与数组表中的每个节点所匹配的搜索数据时,在步骤74中将该结果添加至结果集。
在步骤72/74之后,搜索引擎移动至下一个搜索结果(在步骤76中),然后循环返回至步骤70以检查下一个搜索结果的节点中持有的搜索数据。
当搜索结果添加至结果集后,结果2内包含的搜索数据被添加至数组表。这在图10的数组表104中示出,其中添加的来自结果2的搜索数据以斜体字示出,而来自步骤62的搜索数据以粗体字示出。
在图9的处理对结果3重复之后,在步骤70中创建数组表106。可以看出,结果3不是重复结果,因为数组1、数组2和数组5被视为假。
由于结果3不是重复结果,因此将其搜索数据添加至数组表,如前参照结果2所述。在图10中可看到由此产生的数组表108,其中,除了来自早期的数组表104的搜索数据之外,表108包括reference节点的值“123”和Company-name节点的值“Total Information AccessItd”。
图9b是流程图,示出根据本发明的实施方式的用于处理搜索结果的可选择的技术(相对于图9a)。在图9b中,数组表内包含的节点是预先确定的,这意味着在图9a中示出的步骤60至步骤66不是必需的。
回到图9b,XML搜索结果在步骤36中被接收。
在步骤78中,XML结果1中包含的值被添加至数组表(在具有公共节点的范围内)。由于XML结果1是第一个结果,其不可能为重复结果,因此,在步骤80中将其发送给用户
在步骤82中,选择所接收的搜索结果中的下一个结果,并在步骤84中针对数组表内的值对其进行检查。应注意的是,该检查步骤与关于图10的上文所述相同。
如果数组表中的所有数组返回“真”指示,该结果被认为是重复的,并在步骤86中丢弃。然后,搜索引擎7返回步骤82并选择下一个结果。
如果任何数组返回“假”指示,则结果不是重复的。在步骤88中将目前结果的值添加至数组表中,在步骤90中将该结果发送至用户。然后,搜索引擎返回步骤82并选择下一个结果。
因此,图9a示出一种实施方式,其中数组表被例如用户预定义,还示出一种实施方式,其中当结果被处理后返回给用户。
图11和图12分别示出可由根据本发明的实施方式的搜索引擎7用来构建上述的SQL查询的示例的配置文件、以及能够创建该配置文件的数据映射功能的屏幕截图。
图11的配置文件可在搜索引擎被安装时由管理员创建。正如从图中可以看出,该配置文件是包含各种信息的简单的XML文件,包含的各种信息即:
1)数据库登录信息(见用户名120与密码122的详细资料);
2)系统访问级别;
3)数据库之间的映射关系,即搜索引擎访问在重复数据删除处理中使用的XML元素的数据库,见参考数字124;
4)用于SQL查询的初始SQL 126。
应注意的是,在任何一个配置文件中会有一个或多个这样的数据库连接。
映射关系一般由配置文件的区域124示出。应注意的是,在右侧示出了数据库字段128,在左侧示出了搜索引擎/配置字段130。
图12示出构建配置文件的机制,该机制示出了被连接到搜索引擎的数据库的数据结构、搜索引擎/配置字段名称、以及数据结构与字段名称之间的映射关系。
为了建立配置文件中的映射,用户在窗口区域140中显示待查询的数据库的数据结构。配置字段名称显示在窗口区域142中,用户依次选择每一个字段名称,然后扫描数据结构列表以识别相应的字段名称。以这种方式,数据库与搜索引擎结构的关系可被映射,并且每个联系可存储于窗口区域144中。
应注意的是,通过选择按钮146然后浏览计算机系统寻找待查询的数据库可添加进一步的数据库。用户特定的SQL命令可以通过窗口区域148添加。
可以理解的是,上述的实施方式仅通过示例方式给定并不是为了限制本发明,本发明的范围由所附的权利要求书限定,还将理解的是所描述的实施方式可以单独或联合使用。

Claims (28)

1.一种用于生成搜索查询和用于处理所接收的搜索结果的搜索引擎,所述引擎包括:
用于接收搜索请求的输入装置,所述搜索请求包括N个搜索词;
处理装置,被设置为根据所接收的搜索请求制定出搜索查询;
输出装置,被设置为输出所述搜索查询,
其中,所述处理装置被设置为通过生成多个搜索串来制定出所述搜索查询,每个搜索串包括所述N个搜索词的子集的不同组合,所述多个搜索串被结合为单个搜索查询,
所述引擎还包括:
用于将结果组输出给用户的重复数据删除引擎,所述重复数据删除引擎包括:
搜索结果输入装置,被设置为接收多个搜索结果,每个搜索结果包括一个或多个数据项;
重复数据删除装置,被设置为从在所述搜索结果输入装置处接收的多个搜索结果中去除重复搜索结果并生成结果组;
存储的数据组,其包括一个或多个数据类别和遍及所述一个或多个数据类别分布的一个或多个数据项;
结果组输出装置,被设置为输出所述结果组,
其中,所述重复数据删除装置被设置成将所述存储的数据组与所述搜索结果相比较并根据以下准则确定第一搜索结果是否是重复结果:
a)如果所述存储的数据组中全部所述一个或多个数据类别的内容被确定为与所述第一搜索结果中的数据项匹配,那么将所述第一搜索结果确定为重复结果并将其丢弃;或者
b)如果所述存储的数据组中的至少一个数据类别中的内容被确定为与所述第一搜索结果中的任何数据项不匹配,那么将所述第一搜索结果添加到所述结果组。
2.根据权利要求1所述的搜索引擎,其中,每个搜索串包括M个搜索词的不同组合,其中N>M。
3.根据权利要求2所述的搜索引擎,其中,所述多个搜索串中的每一个中的搜索词的数量在1到M之间变化。
4.根据权利要求2所述的搜索引擎,其中,所述处理装置被设置为通过确定搜索词的组合NCM制定出所述搜索查询,每个组合是不同的搜索串。
5.根据权利要求1所述的搜索引擎,其中,所述处理装置被设置为对于包括N个词的搜索请求根据搜索词的预确定的设置制定出所述搜索查询。
6.根据权利要求5所述的搜索引擎,其中,所述处理装置被设置为将不同的标识符指定给在所述搜索请求中接收到的每个搜索词,所述预确定的设置包括标识符的不同排列和选择。
7.根据权利要求6所述的搜索引擎,其中,所述处理装置被设置为将两个或更多个搜索词分组在一起,并将被分在一组的词指定给单个标识符。
8.根据权利要求1所述的搜索引擎,其中,所述搜索词包括文本,并且所述处理装置被设置为对所接收的搜索词进行同义词查找。
9.根据权利要求8所述的搜索引擎,其中,所述处理装置被设置为将任意搜索词替换为其同义词,以形成包括在所述搜索查询中的附加搜索串。
10.根据权利要求1所述的搜索引擎,其中,所述输出装置被设置为将所述搜索查询输出给文件索引,所述文件索引包括文件信息的索引数据库,所述处理装置被设置为以SQL查询形式生成所述搜索查询。
11.根据权利要求1所述的搜索引擎,其中,所述输出装置被设置成将所述搜索查询输出到结构化数据源。
12.根据权利要求11所述的搜索引擎,进一步包括:
数据源,所述数据源包括用于所述结构化数据源的配置文件,所述配置文件具有与所述结构化数据源有关的连接信息,以允许所述处理装置生成所述搜索查询。
13.根据权利要求1所述的搜索引擎,其中,如果将所述第一搜索结果添加给所述结果组,则所述处理装置被设置成将所述第一搜索结果中的所述一个或多个数据项添加至所述存储的数据组。
14.根据权利要求1所述的搜索引擎,其中,所述处理装置被设置成依次获取所述多个搜索结果中的每一个并将它们与所述存储的数据组相比较,以便根据所述准则a)和b)确定每个搜索结果是否是重复结果。
15.根据权利要求1所述的搜索引擎,其中所述处理装置被设置成将在所述输入装置处接收的每个搜索结果转换成包括一个或多个数据类别的结构化数据格式,所述一个或多个数据类别中的每一个包括数据项。
16.根据权利要求1所述的搜索引擎,其中以包括一个或多个数据类别的结构化数据格式的形式接收在所述输入装置处接收的所述多个搜索结果,所述一个或多个数据类别中的每一个包括数据项。
17.根据权利要求1所述的搜索引擎,其中,所存储的数据以结构化数据组的格式存储。
18.根据权利要求1所述的搜索引擎,其中,所述存储的数据组是以包括一个或多个数组的数组表的形式,每个数组与数据类别关联,所述一个或多个数据项遍及所述一个或多个数组分布。
19.根据权利要求18所述的搜索引擎,其中,所述处理装置被设置为确定所述第一搜索结果是否包括所述数组表中的全部所述数据类别。
20.根据权利要求19所述的搜索引擎,其中,所述处理装置被设置为如果所述数组表中的任一数据类别没有出现在所述第一搜索结果中则将所述第一搜索结果添加到所述结果组。
21.根据权利要求18所述的搜索引擎,其中,如果所述数组表中的全部所述数据类别都出现在所述第一搜索结果中,则所述处理装置被设置成将所述数组表中的每个数据类别的内容与所述第一搜索结果中的对应数据类别的内容相比较以便确定所述第一搜索结果是否是重复结果。
22.根据权利要求21所述的搜索引擎,其中,对于全部所述数据类别中的每个,如果同一数据项出现在所述数组表中和所述第一搜索结果中,则将所述第一搜索结果确定成重复结果并将其丢弃。
23.根据权利要求21所述的搜索引擎,其中,如果在所述数组表中的任意数据类别与所述第一搜索结果中的对应数据类别不匹配,则将所述第一搜索结果添加到所述结果组。
24.根据权利要求18所述的搜索引擎,其中,所述处理装置被设置成依次获取所述多个搜索结果中的每一个并将它们与所述数组表相比较,以便确定每个搜索结果是否是重复结果。
25.根据权利要求1所述的搜索引擎,其中,搜索结果被接收或转换为包括一个或多个XML节点的XML格式,所述一个或多个XML节点中的每一个对应于数据类别。
26.根据权利要求1所述的搜索引擎,其中,所述存储的数据组最初是空的并被填充有在所述输入装置处接收的头两个搜索结果共有的数据项。
27.根据权利要求1所述的搜索引擎,其中,所述存储的数据组最初是空的并包括预限定的数据类别。
28.根据权利要求1所述的搜索引擎,进一步包括:
限定多个数据类别的配置文件,所述存储的数据组中的所述一个或多个数据类别选自所述配置文件中的所述多个数据类别。
CN200980117385.7A 2008-03-13 2009-03-12 改进的搜索引擎 Expired - Fee Related CN102027471B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410593426.2A CN104361038B (zh) 2008-03-13 2009-03-12 改进的搜索引擎

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0804695A GB2458309A (en) 2008-03-13 2008-03-13 Search engine
GB0804695.5 2008-03-13
PCT/GB2009/050240 WO2009112862A2 (en) 2008-03-13 2009-03-12 Improved search engine

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201410593426.2A Division CN104361038B (zh) 2008-03-13 2009-03-12 改进的搜索引擎

Publications (2)

Publication Number Publication Date
CN102027471A CN102027471A (zh) 2011-04-20
CN102027471B true CN102027471B (zh) 2014-12-03

Family

ID=39328074

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200980117385.7A Expired - Fee Related CN102027471B (zh) 2008-03-13 2009-03-12 改进的搜索引擎
CN201410593426.2A Expired - Fee Related CN104361038B (zh) 2008-03-13 2009-03-12 改进的搜索引擎

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201410593426.2A Expired - Fee Related CN104361038B (zh) 2008-03-13 2009-03-12 改进的搜索引擎

Country Status (6)

Country Link
US (3) US8489573B2 (zh)
EP (1) EP2277117A2 (zh)
CN (2) CN102027471B (zh)
CA (1) CA2755319C (zh)
GB (1) GB2458309A (zh)
WO (1) WO2009112862A2 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8498982B1 (en) * 2010-07-07 2013-07-30 Openlogic, Inc. Noise reduction for content matching analysis results for protectable content
EP2463785A1 (en) * 2010-12-13 2012-06-13 Fujitsu Limited Database and search-engine query system
GB201111554D0 (en) 2011-07-06 2011-08-24 Business Partners Ltd Search index
US8972387B2 (en) * 2011-07-28 2015-03-03 International Business Machines Corporation Smarter search
US20130066861A1 (en) * 2011-09-13 2013-03-14 Chacha Search, Inc. Method and system of management of search results
US9058392B1 (en) * 2012-03-22 2015-06-16 Google Inc. Client state result de-duping
EP3042500B1 (en) * 2013-09-06 2022-11-02 RealNetworks, Inc. Metadata-based file-identification systems and methods
US9552378B2 (en) * 2013-11-21 2017-01-24 Adobe Systems Incorporated Method and apparatus for saving search query as metadata with an image
RU2014125471A (ru) 2014-06-24 2015-12-27 Общество С Ограниченной Ответственностью "Яндекс" Способ обработки поискового запроса и сервер
US10152488B2 (en) * 2015-05-13 2018-12-11 Samsung Electronics Co., Ltd. Static-analysis-assisted dynamic application crawling architecture
CN105095399B (zh) * 2015-07-06 2019-06-28 百度在线网络技术(北京)有限公司 搜索结果推送方法及装置
US10083672B1 (en) 2016-04-29 2018-09-25 Rich Media Ventures, Llc Automatic customization of e-books based on reader specifications
US10015244B1 (en) 2016-04-29 2018-07-03 Rich Media Ventures, Llc Self-publishing workflow
CN106528590B (zh) * 2016-09-18 2023-04-07 海信视像科技股份有限公司 一种查询方法及设备
US10685057B1 (en) * 2016-12-30 2020-06-16 Shutterstock, Inc. Style modification of images in search results
US20200043479A1 (en) * 2018-08-02 2020-02-06 Soundhound, Inc. Visually presenting information relevant to a natural language conversation
US10762114B1 (en) * 2018-10-26 2020-09-01 X Mobile Co. Ecosystem for providing responses to user queries entered via a conversational interface
US11140042B2 (en) * 2019-09-18 2021-10-05 Servicenow, Inc. Dictionary-based service mapping
US11272007B2 (en) * 2020-07-21 2022-03-08 Servicenow, Inc. Unified agent framework including push-based discovery and real-time diagnostics features

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987446A (en) * 1996-11-12 1999-11-16 U.S. West, Inc. Searching large collections of text using multiple search engines concurrently
CN101136027A (zh) * 2006-09-01 2008-03-05 横河电机株式会社 用于数据库索引、搜索和数据检索的系统和方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000010097A1 (en) * 1998-08-14 2000-02-24 Song Oliver Yuh Shen Universal business management system and method
US7266553B1 (en) * 2002-07-01 2007-09-04 Microsoft Corporation Content data indexing
US20040064447A1 (en) * 2002-09-27 2004-04-01 Simske Steven J. System and method for management of synonymic searching
US8055669B1 (en) * 2003-03-03 2011-11-08 Google Inc. Search queries improved based on query semantic information
US7885963B2 (en) * 2003-03-24 2011-02-08 Microsoft Corporation Free text and attribute searching of electronic program guide (EPG) data
US20050165804A1 (en) * 2003-08-04 2005-07-28 Todd Rothman System and process for generating interactive learning packages
US7840557B1 (en) * 2004-05-12 2010-11-23 Google Inc. Search engine cache control
JP4189369B2 (ja) * 2004-09-24 2008-12-03 株式会社東芝 構造化文書検索装置及び構造化文書検索方法
US20060161520A1 (en) * 2005-01-14 2006-07-20 Microsoft Corporation System and method for generating alternative search terms
US20070005654A1 (en) * 2005-05-20 2007-01-04 Avichai Schachar Systems and methods for analyzing relationships between entities
US20070124671A1 (en) * 2005-11-29 2007-05-31 Keith Hackworth Field name abstraction for control of data labels
US8386469B2 (en) * 2006-02-16 2013-02-26 Mobile Content Networks, Inc. Method and system for determining relevant sources, querying and merging results from multiple content sources
EP1903479B1 (en) * 2006-08-25 2014-03-12 Motorola Mobility LLC Method and system for data classification using a self-organizing map
US8099415B2 (en) * 2006-09-08 2012-01-17 Simply Hired, Inc. Method and apparatus for assessing similarity between online job listings
US20080065633A1 (en) * 2006-09-11 2008-03-13 Simply Hired, Inc. Job Search Engine and Methods of Use
JP4951331B2 (ja) * 2006-12-26 2012-06-13 株式会社日立製作所 ストレージシステム
US7836085B2 (en) * 2007-02-05 2010-11-16 Google Inc. Searching structured geographical data
US8166045B1 (en) * 2007-03-30 2012-04-24 Google Inc. Phrase extraction using subphrase scoring
CN101075229A (zh) * 2007-06-09 2007-11-21 腾讯科技(深圳)有限公司 词语语义倾向分析方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987446A (en) * 1996-11-12 1999-11-16 U.S. West, Inc. Searching large collections of text using multiple search engines concurrently
CN101136027A (zh) * 2006-09-01 2008-03-05 横河电机株式会社 用于数据库索引、搜索和数据检索的系统和方法

Also Published As

Publication number Publication date
CA2755319A1 (en) 2009-09-17
CA2755319C (en) 2017-10-03
WO2009112862A9 (en) 2010-11-18
WO2009112862A2 (en) 2009-09-17
US20110055191A1 (en) 2011-03-03
CN104361038B (zh) 2018-06-05
US8489573B2 (en) 2013-07-16
CN102027471A (zh) 2011-04-20
CN104361038A (zh) 2015-02-18
WO2009112862A3 (en) 2009-11-19
GB2458309A (en) 2009-09-16
EP2277117A2 (en) 2011-01-26
GB0804695D0 (en) 2008-04-16
US20130290290A1 (en) 2013-10-31
US20160283607A1 (en) 2016-09-29
US9330178B2 (en) 2016-05-03

Similar Documents

Publication Publication Date Title
CN102027471B (zh) 改进的搜索引擎
US8200649B2 (en) Image search engine using context screening parameters
US8280878B2 (en) Method and apparatus for real time text analysis and text navigation
US20070073894A1 (en) Networked information indexing and search apparatus and method
US20030088715A1 (en) System for keyword based searching over relational databases
EP0981097A1 (en) Search system and method for providing a fulltext search over web pages of world wide web servers
US20040133566A1 (en) Data searching apparatus capable of searching with improved accuracy
SG190584A1 (en) Social network powered query refinement and recommendations
CN103500198A (zh) 通过合并用户输入信息来进行搜索的方法和系统
CN1487452A (zh) 在一个或多个网络上进行通用搜索管理的系统
US20070271228A1 (en) Documentary search procedure in a distributed system
US20100268704A1 (en) Method of searching information and ranking search results, user terminal and internet search server with the method applied thereto
CN101164067B (zh) 通过合并用户输入信息来进行搜索的方法和系统
US8498987B1 (en) Snippet search
US20030046276A1 (en) System and method for modular data search with database text extenders
JP3702268B2 (ja) 情報検索システム、情報検索方法およびプログラム
US8131752B2 (en) Breaking documents
JP4649036B2 (ja) 検索サーバーによるカテゴリの報告方法、レコードの報告方法、検索サービス装置
CA2703132A1 (en) Methods and system for information storage enabling fast information retrieval
US9659059B2 (en) Matching large sets of words
JP2002297668A (ja) ハイパーテキスト文書検索方法とその装置及びそのプログラムとこのプログラムを記録した記録媒体
Fan et al. Mining collective pair data from the web
Palmer CSE 400 Professor: Camillo J. Taylor Advisor: Pat Palmer April 11, 2005

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141203

Termination date: 20210312

CF01 Termination of patent right due to non-payment of annual fee