CN104679808A - 用于使用和建立块级别索引进行搜索询问的方法和系统 - Google Patents

用于使用和建立块级别索引进行搜索询问的方法和系统 Download PDF

Info

Publication number
CN104679808A
CN104679808A CN201410674806.9A CN201410674806A CN104679808A CN 104679808 A CN104679808 A CN 104679808A CN 201410674806 A CN201410674806 A CN 201410674806A CN 104679808 A CN104679808 A CN 104679808A
Authority
CN
China
Prior art keywords
block
search
data structure
document
search terms
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.)
Pending
Application number
CN201410674806.9A
Other languages
English (en)
Inventor
T.A.P.汉普-巴恩米勒
姜朋慧
江丕竣
许焱
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN104679808A publication Critical patent/CN104679808A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • 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/334Query execution
    • 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/31Indexing; Data structures therefor; Storage structures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computational Linguistics (AREA)

Abstract

本发明涉及用于针对多个文档(100)进行搜索询问的方法,所述搜索询问包括具有至少一个搜索项属性的搜索项,每个文档被构造为块(110)的集,每个块(110)与唯一的块ID相关联,并且相同的块与相同的块ID相关联,该方法包括以下步骤:-提供包含关于具体搜索项属性和至少一个块ID之间的相关性的信息的第一数据结构(500);-提供包含关于块和文档之间的相关性的信息的第二数据结构(600);-接收搜索询问;-通过针对至少一个搜索项属性来搜索该第一数据结构(500)而处理该搜索询问,得到第一询问响应;-使用该第二数据结构(600)将该第一询问响应映射到第二询问响应,其中该第二询问响应包括识别至少部分地包含所述搜索项属性的文档的搜索结果;以及-返回该第二询问响应,作为搜索结果。

Description

用于使用和建立块级别索引进行搜索询问的方法和系统
技术领域
本发明一般涉及搜索文档的领域。更具体地,本发明涉及用于基于块级别索引进行文档级别的搜索询问的方法。
背景技术
经常发生多个文档包括具有相同内容的章节、部分或组成。例如,一封电子邮件被回复或转发许多次,并且所有回复的或转发的电子邮件都包含原始发送的电子邮件。在来自例如wiki、博客等的社会媒体的发布(post)中发生相同的情况。在诸如带有附件的电子邮件或者ZIP文件的混合文档中,整个子文档(例如附件或ZIP中的文件)可以由许多不同的顶层文档(例如不同的电子邮件或ZIP文件)共享。
当对包括相同内容的部分的多个文档进行索引(index)时,特别是全部文本索引时,内容的重复的部分将被索引多次,导致索引内的冗余信息以及大尺寸的索引。
提供对于文档中的重复的块的非冗余索引表示的技术将是真正有帮助的,因为可以节省对相同的块重新分析和索引所浪费的计算能力以及储存空间、即任意种类的永久存储器,例如用于存储索引的硬盘。另一方面,该技术需要提供用于像通常那样以文档级别而不是块级别、即面向文档的部分的搜索和检索而搜索文档的手段。
因此,需要提供用于针对文档、特别是文本文档进行搜索询问的有效的并且用户友好的方法,所述文档提供相同的部分,特别是相同的文本部分。
发明内容
本发明的实施例的一个目标是提供以有效的并且用户友好的方式针对包括相同部分的文档进行搜索询问的方法、计算机可读介质和系统。通过独立权利要求的特征实现该目标。在从属权利要求中给出了优选实施例。如果没有另外明确指示,则本发明的实施例可以彼此自由组合。
根据第一方面,描述了用于针对多个文档进行包括具有至少一个搜索项(term)属性的搜索项的搜索询问的方法。每个文档被构造为块的集,每个块与唯一的块ID相关联,并且相同的块与相同的块ID相关联。该方法包括以下步骤:
-提供包含关于具体搜索项属性和至少一个块ID之间的相关性的信息的第一数据结构;
-提供包含关于块和文档之间的相关性的信息的第二数据结构;
-接收搜索询问;
-通过针对至少一个搜索项属性来搜索该第一数据结构而处理该搜索询问,得到第一询问响应;
-使用该第二数据结构将该第一询问响应映射到第二询问响应;以及
-返回该第二询问响应,作为搜索结果。
第一数据结构提供块级别索引,该块级别索引包括块中包括的块数据(它们是搜索项的搜索项属性)和块ID之间的相关性。包括相同的块数据的相同的块与相同的块ID相关联。由此,块内容仅被索引一次,得到减少的用于存储索引的容量。可以以块级别在第一步骤中进行搜索询问的处理,得到包含所询问的搜索项属性的零个或更多块。通过确定包含在第一步骤中调查到的块的文档,可以将接收到的块转换为文档级别搜索响应。由此,可以减少用于对包括相同的块的多个文档进行搜索询问的计算工作以及用于存储索引的存储空间。
根据进一步的实施例,第一数据结构是包括多个索引条目的索引,每个索引条目与具体的块数据相关联,该具体的块数据可以形成搜索项内的搜索项属性。由此,该索引可以适配用于存储与块数据相关联的具体数据,例如包含作为块数据的所述搜索项属性的块ID、指示块数据在块内的频率的频率信息或者指示块数据在块内的位置的位置数据。
根据进一步的实施例,索引的每个条目包括关于至少一个块ID的信息,该块ID指示与各个索引条目相关联的块数据(或者根据搜索项用语的搜索项属性)被包括在具有所述块ID的块内。由此,第一数据结构是关于搜索项属性可搜索的,并且可以确定包含所述搜索项属性的块ID。
根据进一步的实施例,第一数据结构包括对于每个搜索项属性的关于该搜索项属性在块内的位置和/或该搜索项属性在具体块内的出现的频率的另外的信息。
根据进一步的实施例,第二数据结构是提供关于哪个块被包含在哪个文档中和/或哪个文档由哪些块组成的信息的列表。换句话说,第二数据结构是包含块和文档之间的映射信息的支持数据结构。通过第二数据结构,可以得出块-文档关联性。优选地,第二数据结构是包括定义块和文档之间的相关性的第一数据集和定义文档和块之间的相关性的第二数据集的双向数据结构。
根据进一步的实施例,处理搜索询问的步骤包括分析步骤,在该分析步骤中,分析搜索询问的结构和逻辑运算符,并且优化处理以便减少处理时间。该分析步骤可以确定可以仅以块级别处理的、即不用将块级别结果映射为文档级别结果的搜索项的至少一个子项。优选地,该分析步骤可以适配为确定可以直接以块级别处理的“或”-运算符或“近似”-运算符。
根据进一步的实施例,搜索询问由通过逻辑运算符链接的多个搜索项属性组成,其中依赖于逻辑运算符,仅使用第一数据结构以块级别处理搜索询问的至少一个子集。优选地,确定包括“或”-运算符的至少一个子项。在确定至少一个子项之后,以块级别处理所述子项。具体地,在第一数据结构内询问两个搜索项属性(例如通过“或”-运算符接连的),得到两个块集,每个集与一个搜索项属性相关。然后,通过对所述两个块集应用“或”运算符将这两个块集合并为单个块集。由此,完全以块级别处理子项。
根据进一步的实施例,依赖于搜索询问内的逻辑运算符,产生两个搜索结果,其中第一搜索结果包含从使用第一数据结构的块级别的搜索询问处理得到的减少的搜索命中数量,并且第二搜索结果包含从使用第一数据结构的块级别的以及使用第二数据结构的文档级别的相继处理得到的全部量的搜索命中。优选可以应用所述处理用于处理“与”-运算。可以仅考虑各个块、即不用到文档级别的任何映射而产生第一搜索结果。然后,或者同时地,可以产生第二搜索结果。所述第二搜索结果可以包括通过使用第一数据结构确定两个块集、通过第二数据结构将块集映射到文档集并通过对所述两个文档集应用逻辑运算符(优选是“与”-运算符)合并所述两个文档集的搜索询问的所有命中。由此,可以实现包含包括了在各个块中彼此靠近地定位的搜索项属性的有限数量的搜索命中的快速的第一搜索结果。稍后,返回包含所有搜索命中的第二搜索结果。
根据进一步的方面,描述了产生数据结构的方法,该数据结构用于搜索包括至少部分相同的块的文档。该方法包括以下步骤:
-接收文档;
-定义在接收的文档内的块,并为每个块分配唯一的块ID,其中相同的块与相同的块ID相关联;
-对定义的块索引,并产生包含关于块数据与包括所述块数据的块ID之间的相关性的信息的第一数据结构;
-产生包括关于块和文档之间的关联性的信息的第二数据结构;以及
-存储第一和第二数据结构用于搜索询问处理。
通过进行上述的方法,可以产生可以用于以块级别搜索文档并将通过块级别搜索获得的结果合并为文档级别搜索结果的数据结构集。第一数据结构的主要优点是相同的块仅被索引一次,即减少了对文档索引的计算工作以及用于存储索引的存储空间。
根据进一步的实施例,在索引之前,将所要索引的每个块的内容与已经被索引的块的内容相比较。优选地,仅在具有相同的内容的块在之前还未被索引时才索引该块。由此,可以避免对包括相同内容的块的双重索引。
根据进一步的实施例,对于每个块,产生并存储块数据的哈希值。通过对块的全部内容应用哈希函数得到所述哈希值。通过使用哈希值,简化了所要索引的新块和已经被索引的块的内容的比较。优选地,基于要被索引的实际块的哈希值和先前被索引的块的哈希值做出对块索引的决定。如果哈希值相同,则块的内容也相同,并且不需要进行索引。如果哈希值不同,则需要对块索引,并且需要更新第一数据结构。
根据进一步的方面,描述了用于针对多个文档进行搜索询问的系统,所述搜索询问包括具有至少一个搜索项属性的搜索项。每个文档被构造为块的集,每个块包括唯一的块ID,并且相同的块与相同的块ID相关联。该系统包括:
-输入接口,用于接收搜索询问;
-储存器,提供第一数据结构,该第一数据结构包含关于具体搜索项属性与至少一个块ID之间的相关性的信息;
-储存器,提供第二数据结构,该第二数据结构包含关于块与文档之间的相关性的信息;
-数据处理组件,适配为:
-通过针对至少一个搜索项属性来搜索该第一数据结构而处理该搜索询问,得到第一询问响应;
-使用该第二数据结构将该第一询问响应映射到第二询问响应;以及
-输出接口,适配为返回该第二询问响应,作为搜索结果。
根据进一步的实施例,该系统还包括分许组件,适配为分析搜索询问的结构和搜索询问的逻辑运算符以便优化处理。所述分析组件可以适配为确定可以仅以块级别处理的、即不用将块级别结果映射为文档级别结果的搜索项的至少一个子项。优选地,该分析器可以适配为确定可以直接以块级别处理的“或”-运算符或“近似”-运算符。
根据进一步的方面,本发明涉及计算机可读介质,该计算机可读介质包括体现在其中的计算机可读程序代码,当该计算机可读程序代码在由处理器执行时致使该处理器执行如前所述的方法。
附图说明
以下,将通过示例仅参考附图更详细描述本发明的优选实施例,附图中:
图1示出包括多个块的文档的示例的示意性表示;
图2示出用于进行搜索询问的系统的示例的示意性表示;
图3示出产生用于对包括相同的块的文档进行搜索询问的数据结构集的示例的示意性流程图;
图4示出进行搜索询问的示例的示意性流程图;
图5示出第一数据结构的示例的示意性表示;
图6示出第二数据结构的示例的示意性表示;
图7示出处理“与”-搜索询问的第一实施例的示意性流程图;
图8示出处理“与”-搜索询问的第二实施例的示意性流程图;
图9示出处理“或”-搜索询问的第一实施例的示意性流程图;
图10示出处理“或”-搜索询问的第二实施例的示意性流程图;
图11示出处理“非”-搜索询问的示意性流程图;
图12示出进行具有搜索优化步骤的搜索询问的示意性流程图;
图13示出进行没有下推(push-down)优化的搜索询问的示意性流程图;
图14示出进行具有下推优化的搜索询问的示意性流程图;以及
图15示出进行具有下推优化的搜索询问的进一步的例子的示意性流程图。
具体实施方式
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
计算机程序指令还可以加载到计算机、其他可编程数据处理装置或其他设备上以致使在计算机、其他可编程装置或其他设备上进行一系列操作步骤以产生计算机实现的处理,使得在计算机或其他可编程装置上执行的指令提供用于实现流程图和/或框图的一个或多个块中指定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在此使用的术语仅用于描述具体实施例的目的,并且不意图限制本发明。如在此使用的,单数形式“一”、“一个”和“该”意图也包括复数形式,除非上下文明确指示不是这样。还将理解,术语“包括”和/或“包含”当用在此说明书中时指定所述特征、整体、步骤、操作、元素和/或组件的存在,但是不排除一个或多个其他特征、整体、步骤、操作、元素、组件和/或其组的存在或添加。
以下权利要求中的所有部件或步骤的相应结构、材料、动作和等效物加上功能要素意图包括用于与如具体声称的其它要求保护的要素组合进行功能的任意结构、材料或动作。为了例示和描述的目的已经给出本发明,但是并不意图以所公开的形式穷尽或者限制本发明。不脱离本发明的范围和精神,许多修改和变化对本领域技术人员将是显而易见的。选择并描述实施例以便最佳地说明本发明的原理及其实际应用,并使本领域其他普通技术人员能够理解对于具有适合于预期的具体用途的各个修改的各个实施例的本发明。
参考图1,示出了文档100的示意图。该文档可以是例如文本文档。该文档可以被划分为多个部分。例如,该文本文档可以是已经被回复或转发多次的电子邮件。所述文本文档的部分可以是该电子邮件中接连的单个电子邮件消息。以下,将文档的所述部分称为块110。例如电子邮件系统和像twitter、微博等的其它通信平台的系统可以存储多个文档100,其中文档100的子集包括具有相同内容的块110。另外,块还可以是电子邮件的附件或在附于电子邮件的zip文件内的文档。
图2示出用于进行搜索询问的系统200。该系统包括用于接收搜索询问的输入接口210、具有搜索引擎225的数据处理组件220、数据储存器230以及用于返回搜索结果的输出接口240。由输入接口210接收的搜索询问可以被转发到数据处理组件220的搜索引擎225。数据处理组件220、具体地数据处理组件220的搜索引擎225可以连接到数据储存器230。数据处理组件220可以访问存储在数据储存器230中的数据结构集。该数据结构集可以提供第一数据结构231和第二数据结构232。第一数据结构231可以是提供关于也称为块数据的块110中所包含的数据与块ID之间的相关性的信息的索引。块ID可以是确保块的可区分性的与块相关的唯一属性。在全文本索引的情况下,块数据可以是块中所包含的单个单词甚至是单词组。换句话说,第一数据结构231提供关于哪些块数据被包含在哪个或哪些块中的信息,即,第一数据结构231提供块级别索引。
第二数据结构232包括关于块110和文档100之间的关联性的信息。第二数据结构232可以提供指定哪个块被包含在哪个文档中的表。每个块可以由其块ID指示并且每个文档可以由唯一文档名指示。第二数据结构232可以是双向查找表,其包括哪些块被包含在哪个文档中以及—相反—哪个文档包括哪些块的相关性。
在接收到包括至少包含一个搜索项属性的搜索项、例如单个单词的搜索询问之后,搜索引擎225可以针对该搜索项属性在第一数据结构231内进行搜索,得到第一询问响应。该第一询问响应可以包含至少一个块ID,指示该搜索项属性被包括在与所述块ID相关联的块中。随后可以通过第二数据结构232进行从块级别到文档级别的映射。搜索引擎225可以访问第二数据结构232,将该第一询问响应提供给第二数据结构232以便接收第二询问响应。该第一询问响应可以包括包含该搜索项属性的块ID。通过提供块和文档之间的、特别是块ID和文档名之间的相关性的第二数据结构232,可以获得包括所述搜索项属性的至少一个文档。换句话说,第二数据结构232实现从块级别到文档级别的映射。与被询问的块相关的该至少一个文档的文档名被返回到搜索引擎225,作为第二询问响应。最后,所述第二询问响应被转发到输出接口240,作为搜索结果。
该系统还可以包括索引组件226。索引组件226可以是数据处理组件220的部分或者可以是单独的组件。索引组件226可以接收要被索引的文档。可以将索引组件226适配用于识别在所接收到的文档内的块。块可以是电子邮件主体的部分,例如单个电子邮件历程(threads)或者在一封电子邮件中接连的单个电子邮件消息、附于电子邮件的文档、附于电子邮件的ZIP文件的文档等等。在定义了块之后,可以进行检查以便确保之前是否已经对具有相同的块内容的块进行了索引。所述检查可以对接收到的文档的所有块进行。为了检查内容的一致性,需要将所要索引的块的全部内容与已经被索引的块的内容相比较。优选地,可以计算要被索引的块的内容的哈希值并将其与已经被索引的块的内容的哈希值相比较。如果该内容或内容的哈希值一致,则具有相同内容的块之前已经被索引,并且不对当前的块进行索引。由此可以减轻计算负荷。
如果之前没有具有相同内容的块被索引,则由索引组件226索引接收到的文档的块。可以产生定义哪些块数据(例如单词或短语)被包含在各自的块中的全文本索引。所述索引的结果可以存储在数据储存器230内的第一数据结构231中。此外,可以用关于哪些块被包含在所接收到的文档中的信息来更新第二数据结构232。换句话说,可以更新关于块和文档之间的映射的信息。基于被更新的第一和第二数据结构,可以针对新文档运行搜索询问。
图3例示产生/更新用于搜索包括至少部分相同的块的文档的数据结构的处理300。首先,可以接收文档(步骤310)。可以解析文档以便识别文档内的块(步骤320)。如上已经提及的,块可以是文档的部分、附于电子邮件的文件、附于电子邮件的zip文件夹内的文件等等。在进一步处理已识别的块之前,可以进行检查步骤330以便确定是否存在已经被索引的块。如果还不存在已经被索引的块,则处理可以在以下所述的步骤360继续。如果已经存在被索引的块,则关于接收到的文档内的每个定义的块的内容相对于已经被索引的块的一致性来检查该每个定义的块(步骤340)。换句话说,将在所接收到的文档内的每个已识别的块的内容与每个已经被索引的块的内容相比较。为了检查内容的一致性,需要将所要被索引的块的全部内容与已经被索引的块的内容相比较。为了减少用于进行所述比较步骤的计算工作,可以计算块的内容的哈希值,以下也称为块识别符,并将其与已经被索引的块的内容的哈希值、即块识别符相比较。通过使用所述块识别符,仅需要将新块的哈希值与其先前被索引的块的哈希值相比较。如果之前没有具有相同内容的块被索引(步骤350),则在步骤360,唯一块ID被分配给所述块。该块ID可以与块识别符相同,或者可以是用于识别该块的单独的属性。如上已经提及的,如果还不存在已经被索引的块(步骤330),则也进行分配块ID的所述步骤。
根据图3的实施例,在与块ID相关之后,对块索引(370)。或者,可以在对块索引之后将所述块与块ID相关联。索引步骤可以由索引引擎进行,优选由文本索引引擎进行。索引引擎可以适配用于解析块并分析在所述块中可获得哪些块数据。换句话说,索引引擎适配用于产生块数据的索引,优选是块的全文本索引。在进行索引之后,索引结果可以被传送到第一数据结构。如果之前还没有创建第一数据结构(因为是第一次对块索引),则可以产生所述第一数据结构。否则,可以用实际被索引的块的数据来更新已经存在的第一数据结构(步骤380)。第一数据结构可以包括块数据与包括所述块数据的块之间的关联性。具体地,第一数据结构可以包括单词或短语与块ID或块识别符之间的关联性。因此,类似于包括命中词(hit words)与书内的页或段落之间的关联性的书的内容的表,第一数据结构可以包括指示哪些块数据被包含在哪个/哪些块中的条目。在产生/更新第一数据结构之后,可以产生(在不存在第二数据结构的情况下)或更新(在已经存在第二数据结构的情况下)第二数据结构(步骤390)。第二数据结构包括指示哪些块被包含在哪个/哪些文档中的块和文档之间的关联性。因此,在识别出具体块数据(例如搜索项的单词)被包含在具体块中之后,第二数据结构使能够确定包括所述块的文档。换句话说,通过使用第二数据结构,能够将指示包含搜索项的至少一部分的块的第一询问响应映射到指示包括所述块的至少一个文档的第二询问响应。再换句话说,第二数据结构是使能够将块级别询问响应映射到文档级别询问响应的辅助数据结构。
最后,第一和第二数据结构被存储在储存器中用于搜索询问处理。第一和第二数据结构可以存储在相同的储存器中或者不同的储存器中。所述存储器可由进行搜索询问的数据处理组件访问。
图4例示用于进行搜索询问的基本结构。搜索询问可以包括具有至少一个搜索项属性的搜索项。搜索项可以仅包括单个搜索项属性或者通过逻辑运算符接连的多个搜索项属性。通过搜索询问,应该分析多个文档以便确定该搜索项是否被包括在所述文档中。例如,搜索项属性可以是单个单词或者短语。在开始处理之后,可以由搜索引擎接收搜索项(步骤410)。所述搜索询问可以包括所述搜索项。可以进行基于第一数据结构的块级别搜索(步骤420)。搜索引擎可以访问所述第一数据结构以便识别哪些块包括所述搜索项。例如,第一数据结构可以是包括多个条目的表。每个条目可以与具体的块数据、例如单词或短语相关联。通过第一数据结构,所述块数据可以与关于哪个/哪些块包括所述块数据的信息相关。作为访问第一数据结构的结果,可以返回至少一个块ID或者块识别符,指示具有该块ID或块识别符的块包括所述搜索项。
在进行块级别搜索之后,通过访问第二数据结构将接收到的块级别搜索结果映射到文档级别搜索结果(步骤430)。如上已经提及的,第二数据结构包括指示哪个块(由其块ID或者块识别符来识别)被包含在哪个文档中的块和文档之间的关联性。因此,返回至少一个文档(由其文档名或文档识别符来识别)。所述至少一个文档可以作为最终的搜索结果被返回(步骤440)。
图5示出第一数据结构500的示例。第一数据结构可以被组织为具有行和列的表。例如,第一数据结构包括指示块数据、特别是单词或短语的第一列510、指示块ID的第二列520以及包含支持信息的第三列。所述支持信息可以是例如块数据在具体的块内的频率或者所述块数据在块内的位置。例如,根据图5的列表中的第一行指示块数据“K1”被包括在具有块ID“B2”和“B5”的块内。支持信息“B2,1,1”指示块数据“K1”被包括在块“B2”中,具有频率“1”(频率指示符,例如一次、两次……)并且在位置“1”(位置指示符)处。
图6示出第二数据结构600的例子。优选地,第二数据结构600是包括哪个块被包括在哪个文档中以及—反之亦然—哪个文档包括哪些块的信息的双向数据结构。因而,第二数据结构被再分为两部分600a、600b,其中第一部分600a包括具体的文档ID和块ID之间的关系,并且第二部分600b包括具体的块ID和文档ID之间的关系。
因此,第二数据结构600的第一部分600a可以是包括以下的表:指示文档ID的第一列610a、指示块ID的第二列620a以及指示另外的支持信息的第三列630a。所述另外的支持信息可以是例如块指示符。块指示符可以是通过对块内容应用哈希函数而产生的块哈希值。所述块指示符可以用于比较块内容以便确定之前是否已经索引或处理了具有相同块内容的块。
第二部分600b也可以是包括几列的表,其中第一列610b指示块ID,第二列620b指示文档ID,并且搜索列630b指示另外的支持信息。
图7例示包括逻辑运算符“与”的搜索询问的处理700。在接收到搜索询问“T1与T2”(步骤710)之后,其中T1和T2是具体的块数据、例如单词或短语,搜索询问被划分或分段为几个子项或搜索项属性,即搜索项属性T1和搜索项属性T2。对于每个搜索项属性,可以进行单独的子询问。所述子询问可以被相继地或同时地处理。
在步骤720a中,基于第一数据结构确定包含搜索项属性“T1”的所有块。接着,基于第二数据结构,调查包括包含搜索项属性“T1”的块的文档(步骤730a)。步骤720a和730a形成第一子询问。
类似地,在步骤720b中,基于第一数据结构确定包含搜索项属性“T2”的所有块。接着,基于第二数据结构,调查包括包含搜索项属性“T2”的块的文档(步骤730b)。步骤720b和730b形成第二子询问。
在步骤740中,合并第一和第二子询问的结果。步骤730a和730b返回文档集。通过对接收到的两个文档集应用与运算来合并文档集。换句话说,从740得到的文档列表仅包括被包含在从第一和第二子询问得到的两个文档列表中的那些文档。所述合并的文档列表可以作为搜索结果被返回。
图8例示包括逻辑运算符“与”的搜索询问的替换处理800。在接收到搜索询问“T1与T2”(步骤810)之后,其中T1和T2是具体的块数据、例如单词或短语,处理分为两个阶段,即阶段I和阶段II。所述阶段可以相继地(优选首先是阶段I)或同时进行。在阶段I中,仅在块级别、即对所有各个块而不跨过具体文档的所有块进行搜索项“T1与T2”(步骤820)。换句话说,检查在第二数据结构中登记的每个块是否T1和T2被包括在所述块中。由此获得满足条件“T1与T2”的块集。根据步骤830,基于第二数据结构,调查包括该块集的块的文档。因此,使用根据阶段I的处理,仅仅获得满足搜索项的缩减的文档集,其中每个文档在至少一个块中包含该搜索项。不得到例如在第一块中包含“T1”并且在第二块中包含“T2”的文档。
阶段II的处理(步骤820a、820b、830a、830b、840)与上述的步骤720a、720b、730a、730b、740的处理相同。依赖于要求的搜索询问的准确度和速度,可以首先处理阶段I以便获得快速的搜索结果。阶段I和II的同时处理也是可能的,其中由于较低的处理工作,更快速地接收阶段I所获得的结果。
图9例示包括逻辑运算符“或”的搜索询问的处理900的第一实施例。在接收到搜索询问“T1或T2”(步骤910)之后,搜索项被分为两个搜索项属性“T1”、“T2”。接着,以块级别各自处理每个搜索项属性,即确定分别满足“T1”、“T2”的每个块(步骤920a、920b)。由此,接收两个块集,第一集满足搜索项属性“T1”,并且第二集满足搜索项属性“T2”。在确定了块之后,通过使用搜索项的逻辑运算符、即通过使用“或”运算符来合并第一集和第二集。因此,得到的集包括包含“T1或T2”的所有块(步骤930)。最后,使用第二数据结构将块集转换为文档集。由此,接收包含搜索项“T1或T2”的文档集(步骤940)。
图10例示包括逻辑运算符“或”的搜索询问的处理1000的第二实施例。在接收到搜索询问“T1或T2”(步骤1010)之后,搜索项不分为几个搜索项属性而是将整个搜索项下推到块级别,即对每个块应用整个搜索项。完全以块级别对由逻辑运算符接连的至少两个搜索项属性的处理在下文中被称为下推询问。由此,确定满足搜索项“T1或T2”的块集(步骤1020)。最后,使用第二数据结构将该块集转换为文档集。由此,接收包含搜索项“T1或T2”的文档集(步骤1030)。由于较高的处理性能,所以这样的下推询问是有利的。如稍后结合图15所述的,还可以将下推询问应用于包括几个“或”-运算符的更复杂的搜索项。
图11例示包括逻辑运算符“非”的搜索询问的处理1100。在接收到搜索询问“非T1”(步骤1110)之后,通过第一数据结构确定包括项“T1”的所有块(步骤1120)。在确定包括“T1”的块集之后,确定与所述块相关的、即包括所述块的文档(步骤1130)。步骤1130的结果是包括要作为搜索询问“非T1”的响应而被返回的文档的逆集(inverse set)的中间结果。为了获得对搜索询问“非T1”的正确响应,需要反转被返回作为步骤1130的结果的文档集(步骤1140)。换句话说,搜索询问“非T1”的最终结果包括未被包括在步骤1130的中间结果内的所有文档。由此,接收满足搜索项“非T1”的文档集。
图12例示对图4所示的搜索询问处理400进行优化的搜索询问处理1200的进一步的详细流程图。在接收到搜索询问(步骤1210)之后,进行优化分析以便分别提高处理速度和搜索询问的处理工作(步骤1220)。具体地,如果搜索项包括多个逻辑运算符,则调查可以以块级别处理的子项而不将以块级别获得的结果转变为文档级别结果。所述子项可以是例如包括或-运算符(也是多个接连的或-项)或者近似-运算符的项。如果能够优化(步骤1230),则以块级别处理可优化的子项而不进行到文档级别的中间映射(步骤1240)。在获得块级别的结果之后,将以块级别获得的结果映射或转变为文档级别的搜索结果(步骤1250)。换句话说,根据步骤1240,立即以块级别处理至少包括通过由逻辑运算符接连的两个搜索项属性的搜索项或子项的块,而不映射到文档级别,由此提高处理性能。
如果不能优化,则以块级别处理搜索项内的每个单个的项(步骤1260),并将其映射到文档级别(步骤1270)。可以对文档级别搜索结果应用接连单个搜索项属性的逻辑运算符(步骤1280)。最后,可以返回该搜索询问的结果(步骤1290)。
图13和图14例示基于图5所示的第一数据结构和图6所示的第二数据结构的搜索项((K1或K2)与K3)与(非K4)的处理。在图13中,不进行优化分析,而图14示出在进行优化步骤之后的搜索项处理。根据图13,确定包含搜索项属性“K1”和“K2”的块。“K1”被包括在块B2和B5中,而“K2”被包括在块B3和B4中。在调查各个块(第一询问响应)之后,确定包含各个块的文档,由此接收两个文档集(D1,D2,D3;D1,D2,D3)。通过使用逻辑运算符“或”来合并所述两个文档集,由此接收一个文档集作为对子项“K1或K2”的第二询问响应。类似地,通过第一数据结构确定包含搜索项属性“K3”的块(B1,B2),并使用第二数据结构将其映射到文档集(D1,D2,D3)。进一步,通过使用“与”-运算符来组合所获得的文档集(D1,D2,D3;D1,D2,D3)。然后,处理子项“非K4”。搜索项属性“K4”被包括在块B4中,并且块B4被包括在文档D2和D3中。因此,项“非K4”返回仅包含文档D1的文档列表。最后,对文档列表(D1,D2,D3)和(D1)应用“与”运算符,得到返回文档D1的询问响应。
与结合图13所述的处理相反,图14通过确定搜索询问的部分来优化该搜索询问,搜索询问的部分可以以块级别直接处理而不映射到文档级别。通过进行优化步骤,可以检测到子项“K1或K2”,其可以完全以块级别处理,即可以对通过确定包含搜索项属性“K1”和“K2”的块而获得的得到的块列表应用逻辑“或”-运算符。由此,获得块列表(B2,B3,B4,B5),其中通过第二数据结构将所述块列表映射到文档列表(D1,D2,D3)。因此,比较根据图13和图14的对子项“K1或K2”的处理,块级别和文档级别之间的映射仅需要进行一次。
图15示出基于图5所示的第一数据结构和图6所示的第二数据结构的搜索项((K1或K2)或K3)与(非K4)的处理。图15所示的处理树的左分支包括两个级联的“或”运算,它们也可以由单个下推询问来处理。换句话说,完全以块级别进行两个级联的“或”运算,导致得到的块列表(B1,B2,B3,B4,B5),其中所述块列表最终被映射到文档级别(D1,D2,D3)用于进一步处理搜索项。

Claims (15)

1.一种用于针对多个文档(100)进行搜索询问的方法,所述搜索询问包括具有至少一个搜索项属性的搜索项,每个文档被构造为块(110)的集,每个块(110)与唯一的块ID相关联,并且相同的块与相同的块ID相关联,该方法包括以下步骤:
-提供包含关于具体搜索项属性和至少一个块ID之间的相关性的信息的第一数据结构(231,500);
-提供包含关于块和文档之间的相关性的信息的第二数据结构(232,600);
-接收搜索询问;
-通过针对至少一个搜索项属性来搜索该第一数据结构(500)而处理该搜索询问,得到第一询问响应;
-使用该第二数据结构(232,600)将该第一询问响应映射到第二询问响应;以及
-返回该第二询问响应,作为搜索结果。
2.根据权利要求1的方法,其中该第一数据结构(231,500)是包括多个索引条目的索引,每个索引条目与具体搜索项属性相关联。
3.根据权利要求2的方法,其中每个条目包括关于至少一个块ID的信息,该块ID指示与该条目相关联的搜索项属性被包括在具有所述块ID的块(110)内。
4.根据在前的权利要求的任意一项的方法,其中第一数据结构(231,500)包括对于每个搜索项属性的关于该搜索项属性在块内的位置和/或该搜索项属性在具体块内的出现的频率的另外的信息。
5.根据在前的权利要求的任意一项的方法,其中第二数据结构(232,600)是提供关于哪个块(110)被包含在哪个文档(100)中和/或哪个文档(100)由哪些块(110)组成的信息的列表。
6.根据在前的权利要求的任意一项的方法,其中处理搜索询问的步骤包括分析步骤(1220),在该分析步骤中,分析搜索询问的结构和逻辑运算符,并且优化处理以便减少处理时间。
7.根据在前的权利要求的任意一项的方法,其中搜索询问由通过逻辑运算符链接的多个搜索项属性组成,其中依赖于逻辑运算符,仅使用第一数据结构(231,500)以块级别处理搜索询问的至少一个子集。
8.根据在前的权利要求的任意一项的方法,其中依赖于搜索询问内的逻辑运算符,产生两个搜索结果,其中第一搜索结果包含从使用第一数据结构(231,500)的块级别的搜索询问处理得到的减少的搜索命中数量,并且第二搜索结果包含从使用第一数据结构(231,500)的块级别的以及使用第二数据结构(232,600)的文档级别的相继处理得到的全部量的搜索命中。
9.一种用于产生数据结构的方法,该数据结构用于搜索包括至少部分相同的块(110)的文档(100),该方法包括以下步骤:
-接收文档(100);
-定义在接收的文档(100)内的块(110),并为每个块(110)分配唯一的块ID,其中相同的块(110)与相同的块ID相关联;
-对定义的块(110)索引,并产生包含关于块数据与包括所述块数据的块ID之间的相关性的信息的第一数据结构(231,500);
-产生包括关于块(110)和文档(100)之间的相关性的信息的第二数据结构(232,600);以及
-存储第一和第二数据结构(231,500,232,600)用于搜索询问处理。
10.根据权利要求9的方法,其中在索引之前,将所要索引的每个块(110)的内容与已经被索引的块(110)的内容相比较。
11.根据权利要求10的方法,其中仅在具有相同的内容的块(110)在之前还未被索引时对块(110)索引。
12.根据在前的权利要求9-11的任意一项的方法,其中对于每个块(110),产生并存储块数据的哈希值。
13.根据权利要求12的方法,其中基于实际块(110)的哈希值和先前被索引的块(110)的哈希值做出对块(110)索引的决定。
14.一种用于针对多个文档(100)进行搜索询问的系统,所述搜索询问包括具有至少一个搜索项属性的搜索项,每个文档(100)被构造为块(110)的集,每个块(110)包括唯一的块ID,并且相同的块(110)与相同的块ID相关联,该系统包括:
-输入接口(210),用于接收搜索询问;
-储存器(230),提供包含关于具体搜索项属性与至少一个块ID之间的相关性的信息的第一数据结构(231);
-储存器(230),提供包含关于块(110)与文档(100)之间的相关性的信息的第二数据结构(232);
-数据处理组件(220),适配用于:
-通过针对至少一个搜索项属性来搜索该第一数据结构(231)而处理该搜索询问,得到第一询问响应;
-使用该第二数据结构(232)将该第一询问响应映射到第二询问响应;以及
-输出接口(240),适配用于返回该第二询问响应,作为搜索结果。
15.一种系统,该系统包括适配用于进行权利要求1-13中的任意一项所要求保护的方法的模块。
CN201410674806.9A 2013-12-03 2014-11-21 用于使用和建立块级别索引进行搜索询问的方法和系统 Pending CN104679808A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1321286.5 2013-12-03
GB1321286.5A GB2520936A (en) 2013-12-03 2013-12-03 Method and system for performing search queries using and building a block-level index

Publications (1)

Publication Number Publication Date
CN104679808A true CN104679808A (zh) 2015-06-03

Family

ID=49979690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410674806.9A Pending CN104679808A (zh) 2013-12-03 2014-11-21 用于使用和建立块级别索引进行搜索询问的方法和系统

Country Status (4)

Country Link
US (1) US10262056B2 (zh)
JP (1) JP6399514B2 (zh)
CN (1) CN104679808A (zh)
GB (1) GB2520936A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112199461A (zh) * 2020-09-17 2021-01-08 暨南大学 基于块索引结构的文档检索方法、装置、介质和设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3403170A4 (en) * 2016-01-12 2019-08-07 Veritone, Inc. METHOD AND SYSTEMS FOR SEARCH ENGINE SELECTION AND OPTIMIZATION
US11221987B2 (en) * 2017-06-23 2022-01-11 Microsoft Technology Licensing, Llc Electronic communication and file reference association

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526956A (zh) * 2009-03-30 2009-09-09 清华大学 基于内容引用的网页搜索结果排序方法
US20100114878A1 (en) * 2008-10-22 2010-05-06 Yumao Lu Selective term weighting for web search based on automatic semantic parsing

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08272822A (ja) * 1995-03-29 1996-10-18 Fuji Xerox Co Ltd 文書登録装置及び文書検索装置
JPH1115759A (ja) 1997-06-16 1999-01-22 Digital Equip Corp <Dec> 全テキストインデックス型のメール保存装置
US6615209B1 (en) 2000-02-22 2003-09-02 Google, Inc. Detecting query-specific duplicate documents
EP1532542A1 (en) * 2002-05-14 2005-05-25 Verity, Inc. Apparatus and method for region sensitive dynamically configurable document relevance ranking
JP2006072744A (ja) * 2004-09-02 2006-03-16 Canon Inc 文書処理装置、その制御方法、プログラム、及び記憶媒体
US7685106B2 (en) * 2005-04-29 2010-03-23 International Business Machines Corporation Sharing of full text index entries across application boundaries
JP4481978B2 (ja) * 2006-11-30 2010-06-16 株式会社東芝 情報共有システム及び情報共有プログラム
US8504553B2 (en) * 2007-04-19 2013-08-06 Barnesandnoble.Com Llc Unstructured and semistructured document processing and searching
TW201027375A (en) 2008-10-20 2010-07-16 Ibm Search system, search method and program
US20100287177A1 (en) * 2009-05-06 2010-11-11 Foundationip, Llc Method, System, and Apparatus for Searching an Electronic Document Collection
WO2010128967A1 (en) * 2009-05-07 2010-11-11 Cpa Software Limited Method, system, and apparatus for searching an electronic document collection
US8140537B2 (en) 2009-07-21 2012-03-20 International Business Machines Corporation Block level tagging with file level information
US7953679B2 (en) * 2009-07-22 2011-05-31 Xerox Corporation Scalable indexing for layout based document retrieval and ranking
US8311964B1 (en) 2009-11-12 2012-11-13 Symantec Corporation Progressive sampling for deduplication indexing
JP5185402B2 (ja) * 2011-01-11 2013-04-17 株式会社東芝 文書検索装置、文書検索方法、及び文書検索プログラム
US20150066976A1 (en) * 2013-08-27 2015-03-05 Lighthouse Document Technologies, Inc. (d/b/a Lighthouse eDiscovery) Automated identification of recurring text

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100114878A1 (en) * 2008-10-22 2010-05-06 Yumao Lu Selective term weighting for web search based on automatic semantic parsing
CN101526956A (zh) * 2009-03-30 2009-09-09 清华大学 基于内容引用的网页搜索结果排序方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112199461A (zh) * 2020-09-17 2021-01-08 暨南大学 基于块索引结构的文档检索方法、装置、介质和设备

Also Published As

Publication number Publication date
GB201321286D0 (en) 2014-01-15
JP6399514B2 (ja) 2018-10-03
US20150154253A1 (en) 2015-06-04
US10262056B2 (en) 2019-04-16
GB2520936A (en) 2015-06-10
JP2015109078A (ja) 2015-06-11

Similar Documents

Publication Publication Date Title
CN106033416A (zh) 一种字符串处理方法及装置
US9563691B2 (en) Providing search suggestions from user selected data sources for an input string
CN102541631B (zh) 以多线程不同驱动源执行计划处理查询的方法和系统
US20110208715A1 (en) Automatically mining intents of a group of queries
CN107861981A (zh) 一种数据处理方法及装置
CN105574054A (zh) 一种分布式缓存范围查询方法、装置及系统
CN111930823A (zh) 一种数据查询方法、装置、数据中台和存储介质
CN104679808A (zh) 用于使用和建立块级别索引进行搜索询问的方法和系统
US20140067853A1 (en) Data search method, information system, and recording medium storing data search program
CN111797095B (zh) 索引构建方法和json数据查询方法
CN109597933B (zh) 医疗关键词精确搜索的方法、系统、设备及存储介质
JP6986577B2 (ja) 複数のドキュメント交差を取得するための方法及びドキュメントサーバー
US10853217B2 (en) Performance engineering platform using probes and searchable tags
US9122748B2 (en) Matching documents against monitors
CN102163199A (zh) 构造索引库的方法和设备以及查询方法
AU2021289542B2 (en) Refining a search request to a content provider
CN105159899A (zh) 一种搜索的方法和装置
CN117313111B (zh) 一种基于汽车信息安全测试用例的标注与索引方法和系统
CN112579961B (zh) Web导航页的构建方法、装置、设备和可读存储介质
KR100645711B1 (ko) 다수의 정보 블록으로 구분된 웹 페이지를 이용한 정보검색 서비스 제공 서버, 방법 및 시스템
CN114579573B (zh) 信息检索方法、装置、电子设备以及存储介质
US11841909B2 (en) Text analytics views for web site sources
JP6695766B2 (ja) 検索システム
JP5505207B2 (ja) 情報検索装置、情報検索方法及び情報検索プログラム
JP6767825B2 (ja) データ管理装置、データ管理方法、およびデータ管理プログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20150603

RJ01 Rejection of invention patent application after publication