可信查询系统和方法技术方案

技术编号:7685066 阅读:169 留言:0更新日期:2012-08-16 18:18
方法和系统提供了允许用户询问结构化数据库的搜索接口,并且包括从一个或多个数据库检索数据库条目,使多个数据库条目变平,对多个变平的数据库条目编索引以形成搜索引擎索引,以及提示用户录入输入。该系统不断地监视用户输入并且每次用户录入输入时,该系统响应于用户录入的输入计算非空的部分查询的集合,将结构化项目与每个非空的部分查询相关联,以及允许用户选择结构化项目中的一个。如果用户选择了结构化项目中的一个,则系统使用与所选择的结构化项目相关联的非空的部分查询来替换用户输入。当用户确认输入时,该系统将输入作为查询来执行。最后,该系统对应于所执行的查询向用户提供文档。

【技术实现步骤摘要】
【国外来华专利技术】
本公开大体上涉及数据存储和检索。更具体地,本公开涉及允许用户搜索可利用结构化查询语言访问的数据的系统和方法。
技术介绍
数据库由针对一个或多个使用有组织地收集的数据构成。将数据库分类的一种方法涉及内容的类型,例如,参考书目、全文、数字、图像等。其它的分类方法检查数据库模型或数据库架构,如下面所解释的。由软件根据数据库模型来构造数据库中的数据。最常使用的是关系数据库模型。诸如层次模型和网络模型之类的其它模型使用对关系的更清楚的结构化表示。关系数据库通过使用在数据集合中找到的公共特征来匹配数据。以许多人更容易理解的方式来构造得到的数据组。例如,可以通过交易发生的年份、通过交易的销售价格、或者通过购买者的姓氏等等来将包含城镇中所有不动产交易的数据集合分组。这种分组使用关系模型(也称为“模式”)。因此,这种数据库称为“关系数据库”。用来执行这种构造和分组的软件称为关系数据库管理系统(RDBMS)。术语“关系数据库”常常指这种类型的软件。关系数据库是用于存储财务记录、制造和逻辑信息、人事数据等的当前主流选择。具体地,关系数据库是关系的集合,通常称作表。表由被标记和分类的列中的数据值或关键字的行构成。一些数据库管理系统要求用户在提出查询之前识别其自身,并且取决于为该用户定义的访问权限,表中的一些行或列、或者全部表对特定识别的用户来说可以是或者可以不是可见的。对数据库的查询是用于从数据库请求数据的指定该查询的答案必须满足的条件的公式的示例。结构化查询是根据结构化语法表达的查询。一种这样的语法是在结构化查询语言(SQL)中指定的,该结构化查询语言是用于访问关系数据库管理系统(RDBMS)中的数据的广泛使用的语言。数据库检索系统是在一个或多个数据库上处理用户查询的软件程序或程序集合。查询处理意味着采用示例用户查询作为输入、分析该查询以理解该查询中指定的条件、从数据库访问数据以及从数据库返回满足查询中指定的条件的答案。公知的结构化查询是遵守数据库检索系统中实现的语法的查询。示例查询是具有至少一个条件的查询。本地数据库功能是数据库管理系统可以对数据库执行的那些操作,包括创建数据库、修改数据库以及处理对数据库的查询。对数据库查询的搜索结果通常是满足查询中指定的条件的所有数据库元素的列表。搜索引擎是从各种信息源获取通常称为文档的信息段、为该信息编索引并且提供响应于查询使用那些索引来访问某些原始信息表示的方法的软件程序或程序集合。该原始信息或文档可以是文本文档,诸如网页、电子邮件、PDF文件、图形文件、视频文件、音频文件、来自数据库的行或者经分析的任何其它信息段。可以通过在数据库上运行数据库查询并且将结果列表中的每个项视为文档来为数据库的内容编索引。除了对数据库的内容编索引之外,还可以预先使数据库的内容变平(flatten)。 “变平”方法在于将多个表和数据库的多个行组合以创建文档。比起可能具有多个搜索框(可能针对表中的每个字段具有一个搜索框)的数据库接口,诸如G00GLE 或者YAHOO ! 之类的搜索引擎通常具有用于录入用户查询的唯一查询框。搜索引擎通常具有非常简单的输入语法,例如,接收作为输入的单个字并且返回包含该字的所有被编索引的网页。这是自由文本搜索的实例,这是因为该字可以出现在结果文档中的任何位置。如果可以搜索由搜索引擎获取的整个文档,则该搜索引擎实现全文搜索。还可以将文档分为多个部分,这些部分由搜索引擎识别。这些部分包括段落部分、标题部分或者主体部分。一些搜索引擎允许用户将查询限制在特定的部分或字段。搜索引擎查询的搜索结果是与查询匹配的文档的列表。该列表通常根据排序策略来排次序,诸如通过文档长度(通过首先呈现更短的文档)来排序,或者通过将每个文档中的字与查询中的字的密度进行比较来排序。虽然自由文档搜索表达了搜索引擎的有效查询,但是它们通常还提供对更复杂查询的支持。例如,诸如GOOGLE之类的流行的搜索引擎通常支持布尔算子(例如,Disney ANDworld)或者配置为针对文档的特定部分的算子(例如,“intitle :Disney”,其仅在文档标题中搜索术语“Disney”)。将文档分成部分的许多其它变型也是可能的。搜索引擎通常使用它们从获取的文档中提取出的所有术语的转换的索引。转换的索引指示从哪里、在哪个文档中找到术语。当用户正在将查询键入查询框时,从该索引中提取出的术语的列表允许搜索引擎提议自动完成。自动完成是指示哪个经编索引的术语是用户当前正在键入的字符串的可能完成的机制。自动完成由监视用户正在键入的内容的过程来执行,并且可以在每次键击之后提议可能的完成。自动完成中的每个提议的完成可以是可用作搜索引擎中的查询的经编索引的术语,并且针对该每个提议的完成,搜索引擎知道存在与该术语对应的文档。搜索引擎通常对用户查询执行拼写检查。在拼写检查中,对于具有很少或没有结果的查询,搜索引擎可以从其转换的索引中提议可能是用户打算键入的其它术语。除了拼写检查之外,搜索引擎还可以提供其它的搜索机制,例如,可以对诸如dogs之类的搜索术语进行衍生形态查询(ste_ed)或者词形分析(le_atized),以便其还与术语dog匹配。搜索引擎查询句法的另一实例可以是使用星(*)算子来匹配任意数量的字符,以使得搜索查询dog*还将与转换的索引术语dog、dogs、dogged、dog-eared等匹配。该方式的星算子的使用被称为前缀匹配。还可以定义环绕搜索查询的引用的使用,以取消默认的衍生形态查询,从而加强前缀匹配。例如,“dogs”将仅与转换的索引中的术语dogs匹配,而不与术语dog匹配。搜索引擎还可以使用诸如同义词典之类的词汇语义结构来执行搜索,以使得在假设同义词指示dog和pet之间的关系并且该关系在查询处理期间被激活的情况下,对字dog的搜索还可能检索到包含字pet的文档。构建对使用句法可能性的搜索引擎检索和数据库检索两者的查询对于普通信息搜寻者来说可能是困难的。高级的查询句法难以掌握并且只有很小比例的信息搜寻者能够在没有经过有效训练的情况下掌握该句法。存在指导用户构造数据库查询的商业上可获得的产品。例如,来自California, Redwood Shores的ORACLE 的DISCOVER 包括允许用户通过从屏幕上显示的项目下拉列表选择项目来构造查询的查询生成器。这些项目可以代表要从数据库获得的数据,或者可替换地可以代表要对该数据执行的操作。一旦已经选择了项目,那么查询生成器通常以SQL生成随后可以被发送到数据库检索系统以用于执行的查询。在M. Hassan, R. Alhajj 和 M. J. Rodley 的标题为 “Combining Free-word Searchand Relational Databases”的文章中,作者写道“结构化查询语言足以允许利用公知的结构和特征来查询关系数据库的内容和结构。然而,给定动态数据库,即,具有变化或未知结构的数据库,使得查询表达过程是非常困难的任务”。上述作者提出了一种通过使用Java数据库连接将简单的搜索引擎类查询变换为一系列数据库请求来探查数据库的内容和结构的系统。Java数据库连接(JDBC)是能够使Java程序操作存储在数据库中的数据的技术。本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:F·布尔东克勒F·杜埃托J·博尔迪耶
申请(专利权)人:莱克萨利德股份公司
类型:发明
国别省市:

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

1