首页> 中国专利> 结构化和非结构化数据源之间的相互的搜索和警告的方法和系统

结构化和非结构化数据源之间的相互的搜索和警告的方法和系统

摘要

本发明涉及结构化和非结构化数据源之间的相互的搜索和警告的方法和系统。提供了使用初始搜索项并利用搜索引擎来搜索非结构化数据源的方法。收集从搜索引擎接收到的搜索击中,并从搜索击中检索可能的搜索项。从搜索击中提取实体,其中实体与所提取的项相对应。所提取的实体和项被用来查询诸如关系数据库中的表的结构化数据源。然后,从对结构化数据源执行的查询接收查询结果。这些查询结果被用来进一步搜索非结构化数据源,以再次接收从其中提取项和实体的搜索击中。将搜索击中和所提取的实体存储在结果数据存储中供分析。

著录项

  • 公开/公告号CN102033900A

    专利类型发明专利

  • 公开/公告日2011-04-27

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN201010296168.3

  • 发明设计人 D·M·斯罗安;

    申请日2010-09-29

  • 分类号

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人李镇江

  • 地址 美国纽约

  • 入库时间 2023-12-18 02:05:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-04-24

    授权

    授权

  • 2011-06-15

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20100929

    实质审查的生效

  • 2011-04-27

    公开

    公开

说明书

技术领域

本发明涉及用于以查找源之间的共同性并递归地利用这样的共同性的方式搜索结构化和非结构化数据源的方法。

背景技术

诸如政府机构、公司及其他私有组织的信息用户,通常管理非结构化和结构化数据源。这些源中的某些源可以在内部维护,而其它的可以由外部实体维护和控制。结构化和非结构化的源常常彼此之间几乎没有协作、链接或自动通知。在这些完全不同的类型源之间挖掘数据传统上存在不足。一种方法是索引结构化源,然而,此方法忽略可以基于结构化元数据应用的逻辑。第二种方法是从非结构化数据提取结构化数据,然而,许多年来研究了自动化提取技术,该技术产生有质量问题的结构化数据。

发明内容

提供了使用初始搜索项并利用搜索引擎来搜索非结构化数据源的方法。收集从搜索引擎接收到的搜索击中,并从搜索击中检索可能的搜索项。从搜索击中提取实体,其中实体与所提取的项相对应。所提取的实体和项被用来查询诸如关系数据库中的表的结构化数据源。然后,从对结构化数据源执行的查询接收查询结果。这些查询结果被用来进一步搜索非结构化数据源,以再次接收从其中提取项和实体的搜索击中。将搜索击中和所提取的实体存储在结果数据存储中供分析。

前面的内容是概述,如此,根据需要,包含简述、概括,省略了详细内容;因此,本领域技术人员将理解,概述只是说明性的,并不以任何方式作出限制。在下面阐述的非限制性详细描述中,只由权利要求定义的本发明的其他方面、发明的特征,以及优点将变得明显。

附图说明

通过参考随附附图,可以更好地理解本发明,并且很多目标、特征和优点对于本领域技术人员将变得明显,其中:

图1是其中可以实现此处所描述的方法的数据处理系统的框图;

图2提供了如图1所示的信息处理系统环境的扩展,以例示此处所描述的方法可以在联网环境中操作的各种信息处理系统上执行;

图3是非结构化和结构化数据源之间检索数据的图形交互;

图4是示出由执行结构化源中的实体关系的实体解析器执行的步骤和与从非结构化数据源提取实体的实体提取器的交互的流程图;以及

图5是示出实体解析器分析结构化结果的基数性(cardinality)的步骤的流程图。

具体实施方式

在下面的描述和图形中阐述某些具体细节,以提供对本发明的各实施例的全面的理解。然而,在下面的公开中没有阐述常常与计算和软件技术相关联的某些已知的细节,以避免不必要地使本发明的各实施例模糊。进一步,相关领域的普通技术人员可以理解,他们可以在没有下面所描述的细节中的一个或多个的情况下实施本发明的其他实施例。最后,尽管在下面的公开中参考步骤和顺序描述了各种方法,但是,如此的描述是用于提供本发明的各实施例的清楚的实现,步骤和步骤的顺序不应该理解为实施本发明所必需的。相反,下文旨在提供本发明的示例的详细描述,不应该理解为对本发明本身的限制。更确切些,任意数量的变体都可以落在本发明的范围内,该范围由描述之后的权利要求进行定义。

下面的具体实施方式将一般性地跟在如上文所阐述的发明内容之后,根据需要进一步说明和扩展本发明的各个方面和各实施例的定义。为此,此具体实施方式首先阐述了图1中的适合于实现与本发明相关联的软件和/或硬件技术的计算环境。图2中例示的联网环境是作为基本计算环境的扩展,以强调现代的计算技术可以跨多个分离的设备执行。

图1例示信息处理系统100,其是能够执行此处所描述的计算操作的计算机系统的简化示例。信息处理系统100包括耦合到处理器接口总线112的一个或多个处理器110。处理器接口总线112将处理器110连接到也称为存储器控制器集线器(MCH)的北桥115。北桥115连接到系统存储器120,并提供供处理器110访问系统存储器的装置。图形控制器125还连接到北桥115。在一个实施例中,PCI Express总线118将北桥115连接到图形控制器125。图形控制器125连接到诸如计算机监视器的显示设备130。

北桥115和南桥135使用总线119彼此连接在一起。在一个实施例中,总线是在北桥115和南桥135之间在每一方向以高的速度传输数据的直接媒体接口(DMI)总线。在另一实施例中,外围组件互连(PCI)总线连接北桥和南桥。也称为I/O控制器集线器(ICH)的南桥135是一般实现比由北桥所提供的能力慢的速度操作的能力的芯片。南桥135通常提供用于连接各个组件的各个总线。这些总线包括,例如,PCI和PCI Express总线、ISA总线、系统管理总线(SMBus或SMB),和/或低管脚数(LPC)总线。LPC总线常常连接低带宽设备,如引导ROM 196和“旧式”I/O设备(使用“超级I/O”芯片)。“旧式”I/O设备(198)可以包括,例如,串行和并行端口、键盘、鼠标和/或软盘控制器。LPC总线还将南桥135连接到可信平台模块(TPM)195。南桥135中常常包括的其他组件包括直接存储器访问(DMA)控制器、可编程中断控制器(PIC),以及使用总线184将南桥135连接到诸如硬盘驱动器的非易失存储设备185的存储设备控制器。

ExpressCard 155是将热可插入设备连接到信息处理系统的插槽。ExpressCard 155在它使用通用串行总线(USB)和PCI Express总线连接到南桥135时,支持PCI Express和USB连接。南桥135包括USB控制器140,该USB控制器140提供到连接到USB的设备的USB连接。这些设备包括webcam(照像机)150、红外线(IR)接收器148、键盘和跟踪板144,以及提供无线个人区域网络(PAN)的蓝牙设备146。USB控制器140还提供到诸如鼠标、可移动非易失存储设备145、调制解调器、网卡、ISDN连接器、传真机、打印机、USB集线器的其他各种USB连接的设备142,以及许多其他类型的USB连接的设备的USB连接。尽管可移动非易失存储设备145被示为USB连接的设备,但是,可移动非易失存储设备145也可以使用诸如Firewire接口等等不同的接口来连接。

无线局域网(LAN)设备175经由PCI或PCI Express总线172连接到南桥135。LAN设备175通常实现全部使用相同协议来在信息处理系统100和另一个计算机系统或设备之间进行无线通信的空中下载调制技术的IEEE 802.11标准中的一个。光存储设备190使用串行ATA(SATA)总线188连接到南桥135。串行ATA适配器和设备通过高速串行链路进行通信。串行ATA总线还将南桥135连接到诸如硬盘驱动器的其他形式的存储设备。诸如声卡的音频电路160经由总线158连接到南桥135。音频电路160还提供诸如音频线路输入和光学数字音频输入端口162、光学数字输出和耳机插孔164、内部扬声器166,以及内部麦克风168的功能。以太网控制器170使用诸如PCI或PCI Express总线的总线,连接到南桥135。以太网控制器170将信息处理系统100连接到诸如局域网(LAN)、因特网的计算机网络,及其他公共和专用计算机网络。

尽管图1示出一种信息处理系统,但是,信息处理系统可以采用许多形式。例如,信息处理系统可以采取台式机、服务器、便携式、膝上型计算机、笔记本、移动因特网设备的形式,或其他要素(factor)计算机或数据处理系统。另外,信息处理系统可以使用其他要素,如个人数字助理(PDA)、游戏设备、ATM机器、便携式电话设备、通信设备或包括处理器和存储器的其他设备。

图2提供如图1所示的信息处理系统环境的扩展,以例示此处所描述的方法可以在联网环境中操作的各种信息处理系统上执行。信息处理系统的类型从小的手持式设备,如手持式计算机/移动电话210,到大型机系统,如大型计算机270。手持式计算机210的示例包括个人数字助理(PDA)、诸如MP3播放器的个人娱乐设备、便携式电视机以及CD播放器。信息处理系统的其他示例包括笔输入计算机或手写板计算机、计算机220、膝上型计算机或笔记本、计算机230、工作站240、个人计算机系统250以及服务器260。由信息处理系统280表示在图2中没有单独示出的其他类型的信息处理系统。如图所示,各种信息处理系统可以使用计算机网络200联网在一起。可以用来互连各种信息处理系统的计算机网络的类型包括局域网(LAN)、无线局域网(WLAN)、因特网、公用交换电话网(PSTN)、其他无线网络,以及可以用来互连信息处理系统的任何其他网络拓扑。许多信息处理系统包括诸如硬盘驱动器和/或非易失性存储器的非易失性数据存储。如图2所示的一些信息处理系统描绘了单独的非易失性数据存储(服务器260利用非易失性数据存储265,大型计算机270利用非易失性数据存储275,而信息处理系统280利用非易失性数据存储285)。非易失性数据存储可以是各种信息处理系统外部的组件或者也可以是其中一个信息处理系统的内部的组件。另外,可移动非易失存储设备145可以使用各种技术在两个或更多信息处理系统之间共享,如将可移动非易失存储设备145连接到信息处理系统的USB端口或其他连接器。

图3是非结构化和结构化数据源之间检索数据的图形交互。非结构化数据源325包括专用数据源以及公开可用的数据源,如因特网上可用的那些数据源。使用如公开可用的搜索引擎的搜索引擎320来搜索非结构化数据源。提供初始项作为对非结构化数据源的搜索项。例如,在执法实现中,初始项可以是在逮捕过程中收集的数据,如嫌疑人的姓名、出生日期、车辆标牌信息、社会保障号码,以及在逮捕时收集的其他数据。

实体提取器340被用来从由对非结构化数据源的搜索产生的搜索结果(“击中(hit)”)提取数据。实体提取器是标识非结构化数据集内的数据“类型”的市场上可买到的产品。例如,实体提取器可以基于数字的位数和格式,标识非结构化的搜索结果内的一段数据(“项”)是可能的信用卡号。另一项可能看起来像“公司名称”,而非结构化数据中的另一项可能看起来像地址、电话号码,或任意数量的其他数据类型。

实体提取器的结果是被传递到实体解析器310的数据类型。实体解析器判断此数据类型可能映射到哪些结构化数据源(例如,数据库表),以及对这种结构化数据源执行适当的查询。例如,如果实体提取器标识诸如电话号码的项,实体解析器标识具有电话号码字段的结构化数据源,并搜索这些字段以获取从非结构化数据源中提取的电话号码(例如,″select*from[table_name]where phonenum=″[phone_num]-其中,table_name是标识的结构化数据库表的名称,phonenum是表内的字段,而phone_num是从非结构化数据源中提取的实际电话号码(例如,202-555-1234)。

实体解析器310还标识“基数”数据项,是非共同的并且非类属的那些数据项。此基数数据项以及它们的相应的实体类型是存储在结果日志350中的那些。如图所示,结果日志350中存储的数据包括标识的基数数据,来自非结构化数据源的相关“击中”,以及实体数据(数据类型、来自结构化数据源的数据)。如图所示,过程是递归的。实体解析器标识基数数据项,这些项(非共同的、非类属项)被搜索引擎320用来搜索非结构化数据源325。然后,如上文所描述的,处理所产生的搜索“击中”(结果)。作为递归、迭代过程,可以重复如图3所示的处理许多次,产生存储在结果日志350中的越来越多的结果。

图4是示出由执行结构化源中的实体关系的实体解析器执行的步骤和与从非结构化数据源提取实体的实体提取器的交互的流程图。处理在400开始,在步骤405中,接收搜索项。在初始查询的情况下,可以从后端过程410接收搜索项。使用图3介绍的示例,后端过程可以是当逮捕嫌疑人并收集关于嫌疑人以及声称的犯罪的数据时进行的预定过程。

在步骤415,执行实体关系解析过程,以便查询结构化数据源300。实体关系解析过程包括标识结构化数据源内的诸如数据库表的源,以搜索要使用的字段,以及正在被查询的项。例如,使用上面的逮捕记录示例,表可以是以前逮捕记录表,字段可以是电话号码字段,其中,过程搜索匹配相同电话号码的其他逮捕记录。如果其他嫌疑人也使用了相同电话号码,则此电话号码对于将嫌疑人彼此关联或联系很重要。然而,此时,过程不推断特定数据片段的重要性或相关性。相反,步骤415将查询结果存储在原始结果420中。然后,由预先定义的过程425分析存储在原始结果420中的结果的基数性(参见图5和对应的文本,关于基数性分析的处理细节)。

基于基数性分析,对数据是否实际上是基数数据进行判断(判断430)。如果数据是基数数据,那么,判断430分支到“是”分支432,在步骤435,在预先定义的过程425中执行的非结构化的搜索所产生的搜索击中被发送到实体提取器处理460,供进一步处理。另外,在步骤440,基数数据、实体数据以及相关联的搜索击中被存储在结果数据存储350中。返回到判断430,如果由预先定义的过程425执行的分析判断数据不是基数数据,那么,判断430分支到“否”分支442,绕过(跳过)步骤435和440,以便非基数结果不被存储在数据存储350中。

对原始结果数据存储420中是否有更多结果需要处理进行判断(判断445)。如果有更多结果要处理,那么,判断445分支到“是”分支446,其循环回到预先定义的过程425以便分析下一结果的基数性,并如上文所述地处理数据。此循环持续,直到原始结果420中的全部结果已被处理,此时,判断445分支到“否”分支448。如上文所述,过程是只要需要就可以重复的迭代、递归过程。对就是否要继续迭代过程进行判断(判断450)。如果期望继续该过程,那么,判断450分支到“是”分支452,其循环回去以从实体提取器接收下一搜索项,如下面所述。此循环持续,直到不再期望迭代,此时,判断450分支到“否”分支454,并且处理在455结束。

实体提取器处理被示为在460开始,在步骤465,实体提取器接收由对非结构化数据源的搜索产生的搜索击中,所产生的数据被判断为基数数据。换言之,如图5所描述,共同的项和类属数据不被传递到实体提取器供进一步处理。而这些,在非结构化数据源中发现的也是非类属的非共同的项被作为搜索“击中”发送,供实体提取器进行处理。

在步骤470,可以是执行实体提取的市场上可买到的工具的实体提取器,提取实体(例如,可能关于搜索击中中发现的数据段(项)的可能的字段名称及其他元数据)。对诸如电话号码、信用卡号、地址等等的实体是否能够被从搜索击中中提取进行判断(判断475)。如果从搜索击中中提取了实体,那么,判断475分支到“是”分支478,如上文所述,由从400开始的实体解析器处理来处理提取的实体。另一方面,如果没有提取到任何实体,那么,判断475分支到“否”分支482,绕过步骤480。在步骤485,实体提取器等待下一实体提取请求到达,此时,步骤485循环回到步骤465,以便处理下一实体提取请求。

图5是示出实体解析器分析结构化结果的基数性的步骤的流程图。处理在500开始,在步骤510,从原始结果数据存储420中检索结果。如图4所描述,原始结果数据存储420是当实体解析器对来自结构化数据源的数据执行实体关系解析时存储结果的地方。在步骤520,选择接收到的结果中的第一项(例如,数据项)。在步骤525,将此项与数据存储530中找到的共同字和项进行比较。

对所选项是否是共同的项进行判断(判断540)。共同的项的示例将是拼写课本或传统的词典中找到的大多数单词。非共同的项的示例将是一般在传统的词典中查找不到的人的名称、电话号码、组织的名称等等。如果项是非共同的项,那么,判断540分支到“否”分支545,在步骤550,将该项与类属项进行比较,以便标识该项是类属的还是非类属的,尽管该项是非共同的。这是通过检查类属项数据存储555来执行的。类属项的示例可以是为许多公众成员所知的企业或其他组织的电话号码或地址。例如,本地比萨饼店的电话号码可以被视为类属项。共同的项和类属项一般对于搜索非结构化数据没有帮助,因为它们将返回相当多的相当无意义的击中。对该项是否是类属项进行判断(判断560)。如果该项是非类属项,那么,判断560分支到“否”分支565,在步骤570,对于非结构化数据源325搜索该项(现在已知为是非共同的和非类属的)。使用非共同的、非类属项作为搜索参数,搜索引擎返回搜索结果或“击中”,如其中找到了搜索项的文档或网页。

返回到判断540和560,如果发现项是共同的或类属的,那么,判断540和560分别分支到“是”分支572和575,绕过步骤570。如框580中所指出的,如果发现项是共同的或者类属的,那么,跳过该项,而不使用非结构化数据源来进行搜索。

对原始结果数据存储中是否有更多项要处理进行判断(判断585)。如果原始结果中有更多项要处理,那么,判断585分支到“是”分支588,其循环回去选择并处理原始结果数据存储中的下一项。此循环持续,直到原始结果数据存储中的全部结果已经被处理,判断585分支到“否”分支590,并且处理在595返回到调用过程(参见图4)。

对于使用上文所描述的处理的执法实施例中的示例实现,创建并处理逮捕记录。首先,将逮捕记录写入(log)到其中维护了关于逮捕及其他警察活动的结构化数据源的结构系统中(后端系统的示例)。在此示例中,嫌疑人名为“Max Dobson”,出生日期是1980年7月6日,给定社会保障号码,车牌号CT/234AS8。基于对于各个项的基数性分析,执行非结构化的搜索。在此示例中,假设对于Name实体和DOB/SSN实体的非结构化的搜索不返回击中。然而,使用车牌号的对非结构化数据源的搜索检索特定事件报告(文档“击中”)。由实体提取器处理执行的实体提取动作提取地址“123 Main Street,StatenIsland,NY”。将此所提取的地址返回到实体解析器处理允许实体解析器查询结构化数据源,其中包括表示此地址被用作名为“MaximDobrovski”的出生日期为1980年7月6日,护照号码为#238208(乌克兰)的入境国际旅客的目的地的签证入境记录。结构化数据源还指出,此嫌疑人位于从事于高端被盗窃车辆的单独的观察名单中(实体解析器中的不同的结构化数据源)。来自非结构化数据源的最终的数据、观察名单上的人的真名实姓、其他实体信息以及相关联的“击中”,被存储在结果数据存储中,供分析。现在,执法人员比在逮捕本身过程中收集的很少的数据段具有多得多的关于被逮捕的嫌疑人的相关数据。存储在结果数据存储中的数据的这种丰富性,是实体解析器和实体提取器协力地工作的结果,以递归地从结构化和非结构化数据源提取数据。

本发明的其中一个实现是客户端应用,即,可以例如驻留在计算机的随机存取存储器中的代码模块中的一组指令(程序代码)或其他功能描述性材料。直到计算机需要,指令集可以存储在另一计算机存储器中,例如,在硬盘驱动器中,或诸如光盘(最终用于CD ROM中)或软盘(最终用于软盘驱动器中)的可移动存储器中。如此,本发明可以实现为用于计算机中的计算机程序产品。另外,虽然所描述的各种方法方便地在通过软件有选择地激活或重新配置的通用计算机中实现,但是,本领域普通技术人员还将认识到,这种方法可以以硬件、以固件,或在用于执行所需的方法步骤的更加专业化的设备中执行这种方法。功能描述性材料是向机器给予功能的信息。功能描述性材料包括但不仅限于,计算机程序、指令、规则、事实、可计算函数的定义、对象以及数据结构。

尽管已经示出和描述了本发明的特定实施例,但是,对于本领域技术人员明显的是,基于此处的教导,在不偏离本发明以及其广泛的方面的情况下,可以作出更改和修改。因此,所附权利要求书将包含在它们的范围内,所有这种更改和修改都将在本发明的正确的精神和范围内。此外,还可以理解,本发明仅仅由所附权利要求书来进行定义。本领域本领域技术人员将理解,如果意图在于引入的权利要求元素的特定编号,在权利要求中将明确地详述这种意图,而在没有这种详述的情况下,不存在这种限制。对于非限制性示例,为帮助理解,下面的所附权利要求书包含使用引导性短语“至少一个”和“一个或多个”来引入权利要求元素。然而,使用这种短语不应该解释为暗示通过不定冠词“a”或“an”引入权利要求元素将包含这种引入的权利要求元素的任何特定权利要求限制于只包含一个这种元素的发明,甚至在同一个权利要求包括引导性短语“一个或多个”或“至少一个”和诸如“a”或“an”的不定冠词的情况下;这也适用于定冠词在权利要求中的使用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号