基于垂直搜索引擎的信息存储、查询方法及其装置的制作方法

文档序号:6440691阅读:214来源:国知局
专利名称:基于垂直搜索引擎的信息存储、查询方法及其装置的制作方法
技术领域
本申请涉及搜索引擎技术领域,尤其涉及一种基于垂直搜索引擎的信息存储方法及其装置,以及一种基于垂直搜索引擎的信息查找方法及其装置。
背景技术
垂直搜索引擎是相对通用搜索引擎的信息量大、查询不准确、深度不够等问题而提出来的新的搜索引擎服务模式,是搜索引擎的细分和延伸,用于针对某一特定的领域、某一特定的人群或者某一特定需求,提供有一定价值的信息和相关服务。垂直搜索引擎通过对网页库中的某类专门信息进行整合,定向、分字段抽取出需要的数据,对这些数据进行处理后再以某种形式返回给用户。垂直搜索引擎的基本架构如图1所示,其中,垂直搜索引擎的索引系统数据库主要包括字典与倒排表、正排表/属性(Attribute)和摘要(Summary)三部分。如图2所示,所述字典和倒排表组合在一起称之为倒排索引,字典是指由索引词组成的索引表,在字典中保存了各种中英文词汇以及对应该些词汇的一些统计信息。倒排表是指每个索引词出现过的文档集合,以及命中位置等信息组成的记录表。倒排表中的各个文档以文档编号唯一标识,每个文档编号是由该文档所在网页的URL经过MD5算法变换得到的一个整型值。字典一般存储在内存中,倒排表一般存储在硬盘上。正排表/属性是存储在内存中,用于记录倒排表中的每个文档的属性值的集合。其结构组成如图3所示,包括头信息文件、正排表索引文件以及正排表数据文件。其中,头信息文件用于存储文档字段值的类型信息、文档数量等信息,正排表索引文件用于存储每个文档中预设字段的属性值在正排表数据文件中的起始位置的偏移量和属性值个数的信息对,正排表数据文件,用于按照预设顺序存储每个文档的预设字段的属性值。摘要是用于将搜索结果返回的文档的字段信息的集合。基于上述垂直搜索引擎的基本架构,垂直搜索引擎的查询原理具体如下:S1:将用户输入的搜索词作拆分处理,根据拆分后的搜索词进行倒排索引。即根据拆分后的搜索词,分别在字典中查找与该拆分后的各搜索词对应的词典信息,然后根据查找到的词典信息在倒排表中查询出现过该词典的所有文档的标识信息的集合。S2:根据SI中查找到的所有文档的标识信息,在正排表中查询对应每个文档标识信息的文档的属性值。S3:按照预设的排序算法,根据在正排表中查找到的每个文档的属性值,计算每个文档的排序分值,并根据计算得到的每个文档的排序分值,将各文档进行排序处理,根据排序后的顺序,依次向用户返回文档的摘要信息。这里以输入的搜索词汇是dell computer为例,对上述垂直搜索引擎过程做以详细说明。首先将输入的搜索词汇做分词处理,分成dell和computer,然后在字典里分别查询dell和computer,得到与dell和computer分别对应的倒排表,如图4所示,以computer为例,对应computer的文档标识信息为O和2,即computer在标识信息为O和2的文档中出现过。对应标识信息O和2,在正排表中查询文档标识为O和2的文档对应的属性值。例如,以标识信息2为例,在正排表索引文件中取得与该文档对应的属性值实际保存的起始存储位置的偏移量和属性值个数信息对,即11/6,其中11表示该文档对应的属性值实际保存的起始位置的偏移量,6表示该文档的属性值个数(如图4所示),然后根据获得的偏移量和属性值个数,在正排表数据文件中查询到属性值:0,1,50032886,50032888,50041278和50048524,以同样的步骤获取文档标识为O的文档的属性值信息,然后使用排序算法,根据查找到的文档0、2的属性值信息,分别对文档标识信息为O和2的文档进行排序分值计算,得到对应文档的排序分值,根据计算得到的排序分值对两个文档进行排序,例如排序后的顺序为2,0,则根据排序后的顺序2,0,依次向用户返回文档2和O的摘要信息。上述详细阐述了使用垂直搜索引擎技术实现数据搜索的具体实施方案,因为正排表是需要存储在内存中的,而在正排表的数据文件中,存储的被索引的文档的属性值中,会有较多的相同的文件属性值重复存储,例如在上述图4中,文档标识为O的文档属性值和文档标识为2的文档属性值就是完全相同的,而在正排表数据文件中却要重复存储两次,这种重复性的存储会占用较多的内存资源,使得在用户使用垂直搜索引擎查询相关信息时,会因为系统的内存资源不够而使得搜索的速率降低。

发明内容
本申请实施例提供一种基于垂直搜索引擎的信息存储、查询方法及其装置,用以降低对内存资源的占用,提高用户使用垂直搜索引擎查询相关信息的速率。本申请实施例提出的技术方案如下:一种基于垂直搜索引擎的信息存储方法,包括:针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值;根据确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值、该指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;如果判断结果为是,将在消重字典中存储的与确定的属性相关值对应的起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中;如果判断结果为否,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;将确定的所述属性相关值、起始存储位置的偏移量和属性值数目映射存储在所述消重字典中;并将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。一种基于垂直搜索引擎的信息存储方法,包括:针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值;根据确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值和文档标识信息;如果判断结果为是,根据在消重字典中存储的与确定的属性相关值对应的文档标识信息,在正排表索引文件中与该文档标识信息对应的存储域中查找对应的偏移量和属性值数目;将查找到的偏移量和属性值数目作为该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中;如果判断结果为否,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;将该待存储的文档的标识信息与确定的所述属性相关值映射存储在所述消重字典中;并将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。一种基于垂直搜索引擎的信息存储方法,包括:在对应文档一个指定属性字段的正排表索引文件中,当至少两个文档的标识信息分别对应的存储域中存储的偏移量和属性值数目相同时,判断所述至少两个文档中的一个文档的该指定属性字段中包含的属性值是否发生变化;若发生变化,则根据该文档的标识信息对应的存储域中存储的偏移量和属性值数目,在该指定属性字段的正排表数据文件中查找对应该文档的相应数目的属性值;并将查找到的属性值重新写入到所述数据文件中的空白区域,并将写入的属性值更新为变化后的属性值;以及修改该文档的标识信息对应的存储域中存储的偏移量和属性值数目与重新写入的区域和更新后的属性值数目对应。—种基于上述信息存储方法进行信息查询的方法,包括:将用户输入的搜索词作拆分处理,根据拆分后的搜索词基于倒排表进行倒排索引,得到拆分后的搜索词所出现在的至少一个文档的标识信息;针对得到的每个文档的标识信息,分别基于正排表进行正排索引,得到每个文档分别对应的属性值;按照预设的排序算法,根据在正排表中得到的每个文档的属性值,计算每个文档的排序分值;根据计算得到的每个文档的排序分值,将各文档进行排序处理,根据排序后的顺序,依次返回各文档的摘要信息。一种基于垂直搜索引擎的信息存储装置,包括:属性相关值确定单元,用于针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值;判断单元,用于根据属性相关值确定单元确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值、该指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;执行单元,用于在判断单元判断出消重字典中存储有所述属性相关值时,将在消重字典中存储的与属性相关值确定单元确定的属性相关值对应的起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中;以及在判断单元判断出消重字典中未存储有所述属性相关值时,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;将确定的所述属性相关值、起始存储位置的偏移量和属性值数目映射存储在所述消重字典中;并将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。一种基于垂直搜索引擎的信息存储装置,包括:属性相关值确定单元,用于针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值;判断单元,用于根据属性相关值确定单元确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值和文档标识信息;执行单元,用于在判断单元判断出消重字典中存储有所述属性相关值时,根据在消重字典中存储的与确定的属性相关值对应的文档标识信息,在正排表索引文件中与该文档标识信息对应的存储域中查找对应的偏移量和属性值数目;将查找到的偏移量和属性值数目作为该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中;以及在判断单元在判断单元判断出消重字典中未存储有所述属性相关值时,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;将该待存储的文档的标识信息与确定的所述属性相关值映射存储在所述消重字典中;并将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。一种基于垂直搜索引擎的信息存储装置,包括:判断单元,用于在对应文档一个指定属性字段的正排表索引文件中,当至少两个文档的标识信息分别对应的存储域中存储的偏移量和属性值数目相同时,判断所述至少两个文档中的一个文档的该指定属性字段中包含的属性值是否发生变化;查找单元,用于在判断单元判断出至少一个文档的该指定属性字段中包含的属性值发生变化时,则根据该文档的标识信息对应的存储域中存储的偏移量和属性值数目,在该指定属性字段的正排表数据文件中查找对应该文档的相应数目的属性值;修改单元,用于将查找单元查找到的属性值重新写入到所述数据文件中的空白区域,并将写入的属性值更新为变化后的属性值;以及修改该文档的标识信息对应的存储域中存储的偏移量和属性值数目与重新写入的区域和更新后的属性值数目对应。一种基于上述信息存储装置进行信息查询的装置,包括:分词处理单元,用于将用户输入的搜索词作拆分处理,根据拆分后的搜索词基于倒排表进行倒排索引,得到拆分后的搜索词所出现在的至少一个文档的标识信息;属性值确定单元,用于针对分词处理单元得到的每个文档的标识信息,分别基于正排表进行正排索引,得到每个文档分别对应的属性值;排序分值计算单元,用于按照预设的排序算法,根据属性值确定单元在正排表中得到的每个文档的属性值,计算每个文档的排序分值;摘要信息返回单元,用于根据排序分值计算单元计算得到的每个文档的排序分值,将各文档进行排序处理,根据排序后的顺序,依次返回各文档的摘要信息。本申请实施例针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值,根据确定的属性相关值,判断在消重字典中是否存储有与该属性相关值相同的数值,如果判断结果为是,将在消重字典中存储的与该属性相关值对应的起始存储位置的偏移量和属性值数目,写入到正排索引文件中与该待存储文档的标识信息对应的存储域中;如果判断结果为否,则确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目,然后将确定出的属性相关值、起始存储位置的偏移量和属性值数目映射存储在所述消重字典中,并将确定的偏移量和属性值数据写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,在正排表中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值,从而使得在不同的待存储文档在某一指定属性字段内具有相同属性值时,在正排表数据文件中只对该指定字段的属性值存储一次,然后在正排表索引文件中对应存储该属性值在正排表数据文件中的起始存储地址的偏移量和属性值数目,从而能够降低垂直搜索引擎系统中正排表对内存资源的占用,进而提高了用户使用垂直搜索引擎系统进行信息查询的速率。


图1为现有技术中,提出的垂直搜索引擎的基本组成架构图;图2为现有技术中,提出的垂直搜索引擎中倒排索引的组成结构图;图3为现有技术中,提出的垂直搜索引擎中正排索引的组成结构图;图4为现有技术中,提出的垂直搜索引擎工作原理示意图;图5为本申请实施例一中,提出的基于垂直搜索引擎的信息存储方法流程图;图6为本申请实施例一中,提出的基于垂直搜索引擎的信息存储方法对文档的存储结构图;图7为本申请实施例一中,提出的基于垂直搜索引擎的信息存储装置结构图;图8为本申请实施例三中,提出的基于垂直搜索引擎的信息存储方法流程图;图9为本申请实施例三中,提出的基于垂直搜索引擎的信息存储装置结构图;图10为本申请实施例四中,提出的基于垂直搜索引擎的信息查询方法流程图;图11为本申请实施例四中,提出的基于垂直搜索引擎的信息查询装置结构图。
具体实施例方式针对现有技术中存在的在垂直搜索引擎系统中,不同文档如果在某一指定属性字段内具有相同的属性值,会在正排表数据文件中重复性存储该些相同的属性值,从而导致占用较多的内存资源,使得用户在使用垂直搜索引擎系统查询信息时,会因为系统的内存资源不够而致使搜索速率降低的问题,本申请实施例这里提出一种基于垂直搜索引擎的信息存储、查询方法及其装置,主旨是尽量在不同文档中具有相同属性值时,在正排表数据文件中尽量仅存储一份该些相同的属性值,然后在正排表索引文件中分别使用相同的起始地址偏移量指向数据文件中这些相同的属性值,从而为后续查询属性值时提供实现基础。并因此有效地降低了正排表对内存资源的占用,提高了用户使用垂直搜索引擎系统查询信息的速率,特别是对于大多数文档在具有较多相同的属性值的情况下,本申请实施例的方案效果将更为明显。需要说明的是,针对每一个待存储的文档,可以只包含一个属性字段,也可以包含多个属性字段,每个属性字段内又包含不同的属性值。本申请各实施例中以待存储文档的每一指定属性字段为例分别介绍,即本申请方案可以适用于待存储文档的不同指定属性字段,为描述方便清晰起见,本申请实施例这里仅是以其中某一个指定的属性字段为例来进行介绍。在建立垂直搜索引擎系统中的正排表时,一般是对应文档的每个指定属性字段分别建立一个正排表,即文档有多个属性字段时,可能会对应多个不同的正排表,并在多个不同的正排表中分别查询到不同的属性值。例如,假设一个文档有4个不同的属性字段,则对应该文档的4个不同的属性字段会有4个不同的正排表分别存储不同属性字段的属性值。下面将结合各个附图对本申请实施例技术方案的主要实现原理具体实施方式
及其对应能够达到的有益效果进行详细地阐述。
本申请实施例这里提出一种基于垂直搜索引擎的信息存储方法,如图5所示,具体过程如下:步骤501,根据配置信息,初始化正排表中的头信息文件Fieldname, pfl.1nfo。其中,配置信息包括文档数目,文档相应的字段值类型等信息。具体地,初始状态下,文档数目可以是O。字段值类型可以但不限于包括定长多值类型、变长多值类型或者是字符串类型等。步骤502,在对正排表头信息文件进行初始化配置后,针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值。其中,可以采用预先设定的算法,对该待存储文档的指定属性字段中包含的属性值执行运算,从而得到一个唯一的数值作为该待存储文档的指定属性字段的属性相关值,其中预设的算法可以但不限于是MD5算法或者是哈希(hash)算法,当然还可以为其他可以对数组计算得到唯一数值的算法。一种较佳的实现方式,可以对该待存储文档的指定属性字段中包含的属性值,执行哈希运算,将运算得到的结果作为该待存储文档的指定属性字段的属性相关值。例如,本申请实施例一这里将待存储文档的指定属性字段中包含的属性值,执行哈希运算,得到一个64位哈希值,将得到的64位哈希值做为该待存储文档的指定属性字段的属性相关值(这里可以称之为key值)。步骤503,根据步骤502中确定的属性相关值,将确定的属性相关值做为键值key,根据该键值判断在消重字典中是否存储有与确定出的该key值相同的数值,如果判断结果为是,执行步骤504 ;如果判断结果为否,则执行步骤505。其中,消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值、该指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目。其中每个文档的每个指定属性字段都对应有一个消重字典,如果一个文档有N个属性字段,则对应该文档就存储了 N个消重字典,初始状态下,消重字典中未存储任何信息,随着待存储文档的数目不断增加,消重字典中学习到的存储信息也不断进行更新。消重字典可以存储计算机的任何一个位置,例如可以存储在内存中,也可以存储在计算机硬盘上,较佳地,本申请实施例中选择将消重字典存储在计算机硬盘上。具体地,消重字典的存储形式可以有多种方式,本申请实施例一这里以对每个文档的指定属性字段采用哈希运算得到的哈希值做为属性相关值为例来进一步阐述消重字典的存储形式,如下述表I所示,是消重字典的其中一种存储形式:

权利要求
1.一种基于垂直搜索引擎的信息存储方法,其特征在于,包括: 针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值; 根据确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值、该指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目; 如果判断结果为是,将在消重字典中存储的与确定的属性相关值对应的起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中; 如果判断结果为否,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目; 将确定的所述属性相关值、起始存储位置的偏移量和属性值数目映射存储在所述消重字典中;并 将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。
2.如权利要求1所述的方法,其特征在于,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值,包括: 对该待存储文档的指定属性字段中包含的属性值,执行哈希运算; 将运算得到的结果作 为该待存储文档的指定属性字段的属性相关值。
3.一种基于垂直搜索引擎的信息存储方法,其特征在于,包括: 针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值; 根据确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值和文档标识息; 如果判断结果为是,根据在消重字典中存储的与确定的属性相关值对应的文档标识信息,在正排表索引文件中与该文档标识信息对应的存储域中查找对应的偏移量和属性值数目; 将查找到的偏移量和属性值数目作为该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中; 如果判断结果为否,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目; 将该待存储的文档的标识信息与确定的所述属性相关值映射存储在所述消重字典中;并 将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。
4.一种基于垂直搜索引擎的信息存储方法,其特征在于,包括: 在对应文档一个指定属性字段的正排表索引文件中,当至少两个文档的标识信息分别对应的存储域中存储的偏移量和属性值数目相同时,判断所述至少两个文档中的一个文档的该指定属性字段中包含的属性值是否发生变化; 若发生变化,则根据该文档的标识信息对应的存储域中存储的偏移量和属性值数目,在该指定属性字段的正排表数据文件中查找对应该文档的相应数目的属性值;并 将查找到的属性值重新写入到所述数据文件中的空白区域,并将写入的属性值更新为变化后的属性值;以及 修改该文档的标识信息对应的存储域中存储的偏移量和属性值数目与重新写入的区域和更新后的属性值数目对应。
5.一种基于I 4任一权利要求所述的信息存储方法进行信息查询的方法,其特征在于,包括: 将用户输入的搜索词作拆分处理,根据拆分后的搜索词基于倒排表进行倒排索引,得到拆分后的搜索词所出现在的至少一个文档的标识信息; 针对得到的每个文档的标识信息,分别基于正排表进行正排索引,得到每个文档分别对应的属性值; 按照预设的排序算法,根据在正排表中得到的每个文档的属性值,计算每个文档的排序分值; 根据计算得到的每个文档的排序分值,将各文档进行排序处理,根据排序后的顺序,依次返回各文档的摘要信息。
6.一种基于垂直搜索引擎的信息存储装置,其特征在于,包括: 属性相关值确定单元,用于针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值; 判断单元,用于根据属性相关值确定单元确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值、该指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目; 执行单元,用于在判断单元判断出消重字典中存储有所述属性相关值时,将在消重字典中存储的与属性相关值确定单元确定的属性相关值对应的起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中;以及在判断单元判断出消重字典中未存储有所述属性相关值时,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;将确定的所述属性相关值、起始存储位置的偏移量和属性值数目映射存储在所述消重字典中;并将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。
7.如权利要求6所述的装置,其特征在于,所述属性相关值确定单元,具体用于对该待存储文档的指定属性字段中包含的属性值,执行哈希运算;将运算得到的结果作为该待存储文档的指定属性字段的属性相关值。
8.一种基于垂直搜索引擎的信息存储装置,其特征在于,包括: 属性相关值确定单元,用于针对每个待存储的文档,根据该待存储文档的指定属性字段中包含的属性值,确定该待存储文档的指定属性字段的属性相关值; 判断单元,用于根据属性相关值确定单元确定的属性相关值,判断在消重字典中是否存储有与所述属性相关值相同的数值,所述消重字典中映射存储有已存储的各文档的该指定属性字段的属性相关值和文档标识信息; 执行单元,用于在判断单元判断出消重字典中存储有所述属性相关值时,根据在消重字典中存储的与确定的属性相关值对应的文档标识信息,在正排表索引文件中与该文档标识信息对应的存储域中查找对应的偏移量和属性值数目;将查找到的偏移量和属性值数目作为该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目,写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中;以及在判断单元判断出消重字典中未存储有所述属性相关值时,确定该待存储文档的指定属性字段中包含的属性值在正排表数据文件中起始存储位置的偏移量和属性值数目;将该待存储的文档的标识信息与确定的所述属性相关值映射存储在所述消重字典中;并将确定的偏移量和属性值数目写入到正排表索引文件中与该待存储文档的标识信息对应的存储域中,并在正排表数据文件中该偏移量指向的位置开始写入该待存储文档的指定属性字段中包含的属性值。
9.一种基于垂直搜索引擎的信息存储装置,其特征在于,包括: 判断单元,用于在对应文档一个指定属性字段的正排表索引文件中,当至少两个文档的标识信息分别对应的存储 域中存储的偏移量和属性值数目相同时,判断所述至少两个文档中的一个文档的该指定属性字段中包含的属性值是否发生变化; 查找单元,用于在判断单元判断出至少一个文档的该指定属性字段中包含的属性值发生变化时,根据该文档的标识信息对应的存储域中存储的偏移量和属性值数目,在该指定属性字段的正排表数据文件中查找对应该文档的相应数目的属性值; 修改单元,用于将查找单元查找到的属性值重新写入到所述数据文件中的空白区域,并将写入的属性值更新为变化后的属性值;以及修改该文档的标识信息对应的存储域中存储的偏移量和属性值数目与重新写入的区域和更新后的属性值数目对应。
10.一种基于6 9任一权利要求所述的信息存储装置进行信息查询的装置,其特征在于,包括: 分词处理单元,用于将用户输入的搜索词作拆分处理,根据拆分后的搜索词基于倒排表进行倒排索引,得到拆分后的搜索词所出现在的至少一个文档的标识信息; 属性值确定单元,用于针对分词处理单元得到的每个文档的标识信息,分别基于正排表进行正排索引,得到每个文档分别对应的属性值; 排序分值计算单元,用于按照预设的排序算法,根据属性值确定单元在正排表中得到的每个文档的属性值,计算每个文档的排序分值; 摘要信息返回单元,用于根据排序分值计算单元计算得到的每个文档的排序分值,将各文档进行排序处理,根据排序后的顺序,依次返回各文档的摘要信息。
全文摘要
本申请公开了一种基于垂直搜索引擎的信息存储、查询方法及其装置,包括对每个待存储的文档,根据其指定属性字段中包含的属性值,确定属性相关值;判断在消重字典中是否存储有与所述属性相关值相同的数值;如果判断结果为是,将消重字典中存储的起始位置的偏移量和属性值数目,写入到正排表索引文件中;否则,确定所述属性值在正排表数据文件中起始位置的偏移量和属性值数目;将确定的属性相关值、偏移量和属性值数目存储在消重字典中;将确定的偏移量和属性值数目写入到正排表索引文件中,并在该偏移量指向的位置开始写入待存储文档的指定属性字段中包含的属性值,从而降低了内存资源的占用,提高用户使用垂直搜索引擎查询相关信息的速率。
文档编号G06F17/30GK103164408SQ20111040849
公开日2013年6月19日 申请日期2011年12月9日 优先权日2011年12月9日
发明者孙权, 程丽敏 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1