掌桥专利:专业的专利平台
掌桥专利
首页

一种基于全文检索的索引处理方法和相关装置

文献发布时间:2023-06-19 18:35:48


一种基于全文检索的索引处理方法和相关装置

技术领域

本申请涉及检索技术领域,特别是涉及一种基于全文检索的索引处理方法和相关装置。

背景技术

随着全文检索在越来越多业务场景中广泛应用,对全文检索的要求也越来越高。全文检索是指针对文档构建索引并存储,以便在后续检索时可以通过该索引得到所需的检索结果。

相关技术中,针对文档构建索引时,仅仅是根据文档的分词和识别标识构建得到索引,并将该索引存储以便后续检索使用。但是,该方式构建得到的索引在粒度上不够细致,导致业务场景中不同文档类别所对应的索引相互交错存储,从而导致检索效率大大下降。

发明内容

为了解决上述技术问题,本申请提供了一种基于全文检索的索引处理方法和相关装置,使得同一文档类别所对应的索引信息顺序存储,避免不同文档类别所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

本申请实施例公开了如下技术方案:

一方面,本申请提供一种基于全文检索的索引处理方法,所述方法包括:

获得待写入文档的待更新词、文档识别标识和所述待写入文档所属的文档类别标识;所述文档类别标识是基于业务分类需求所设定文档类别的标识,所述文档类别标识用于构建索引关键字;

基于所述待更新词、所述文档识别标识和所述文档类别标识,在内存中构建所述索引关键字和所述索引关键字对应的索引值获得索引信息,所述索引信息以键值对格式存储;

满足预设持久化触发条件时,基于所述索引关键字的数值顺序,将所述内存中存储的所述索引信息持久化为第一索引文件存储至磁盘中。

另一方面,本申请提供一种基于全文检索的索引处理装置,所述装置包括:获得单元、构建单元和持久化单元;

所述获得单元,用于获得待写入文档的待更新词、文档识别标识和所述待写入文档所属的文档类别标识;所述文档类别标识是基于业务分类需求所设定文档类别的标识,所述文档类别标识用于构建索引关键字;

所述构建单元,用于基于所述待更新词、所述文档识别标识和所述文档类别标识,在内存中构建所述索引关键字和所述索引关键字对应的索引值获得索引信息,所述索引信息以键值对格式存储;

所述持久化单元,用于满足预设持久化触发条件时,基于所述索引关键字的数值顺序,将所述内存中存储的所述索引信息持久化为第一索引文件存储至磁盘中。

另一方面,本申请提供一种用于基于全文检索的索引处理设备,所述设备包括处理器以及存储器:

所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

所述处理器用于根据所述程序代码中的指令执行上述方面所述的方法。

另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述方面所述的方法。

由上述技术方案可以看出,预先按照业务分类需求设定不同文档类别的标识,针对待写入文档而言,通过在待写入文档的待更新词和文档识别标识的基础上,增加待写入文档所属的文档类别标识,在内存中共同构建索引关键字和索引关键字对应的索引值,得到键值对格式的索引信息,文档类别标识用于构建索引关键字;满足预设持久化触发条件,通过将存储在内存中的索引信息按照索引关键字的数值顺序持久化,得到第一索引文件存储在磁盘中。由于索引信息中索引关键字通过文档类别标识构建,因此构建得到的索引信息能够更细粒度的表征文档类别,进而能够在持久化触发后按照文档类别有序排列在磁盘的第一索引文件中。基于此,该方式在针对业务分类需求设定不同文档类别情况下,使得同一文档类别所对应的索引信息顺序存储,以避免不同文档类别所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的基于全文检索的索引处理方法的应用场景示意图;

图2为本申请实施例提供的一种基于全文检索的索引处理方法的流程示意图;

图3为本申请实施例提供的一种正向索引关键字的格式示意图;

图4为本申请实施例提供的一种反向索引关键字的格式示意图;

图5为本申请实施例提供的一种倒排列表的格式示意图;

图6为本申请实施例提供的一种正向索引信息和反向索引信息的格式示意图;

图7为本申请实施例提供的一种磁盘中文件层的示意图;

图8为本申请实施例提供的一种全文检索方法的流程示意图;

图9为本申请实施例提供的一种归并多个目标文档识别标识倒排列表的示意图;

图10为本申请实施例提供的一种基于全文检索的整体框架示意图;

图11为本申请实施例提供的一种基于全文检索的索引处理装置的示意图;

图12为本申请实施例提供的服务器的结构示意图;

图13为本申请实施例提供的终端设备的结构示意图。

具体实施方式

下面结合附图,对本申请的实施例进行描述。

相关技术中,在全文检索情况下,针对文档构建索引时,仅仅是根据文档的分词和识别标识构建得到索引,例如,分别针对文档1、文档2、文档3和文档4等的分词和识别标识构建索引,并存储构建得到的索引以便后续检索使用。但是,该方式构建的索引在粒度上不够细致,例如,需要将文档按照不同用户分类时,在文档1和文档3属于用户A,文档2和文档4属于用户B的情况下,该方式构建的索引无法细粒度表征用户A或用户B,导致用户A和用户B所对应的索引相互交错存储,即,不同文档类别所对应的索引相互交错存储,使得全文检索时检索处理较为复杂,从而导致检索效率大大下降。

基于此,本申请提供了一种基于全文检索的索引处理方法和相关装置,使得同一文档类别所对应的索引信息顺序存储,以避免不同文档类别所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

本申请提供的基于全文检索的索引处理方法可以应用于具有数据处理能力的基于全文检索的索引处理设备,例如可以是服务器、终端设备等。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。此外,终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

此外,本申请实施例提供的基于全文检索的索引处理设备还具备云存储能力。云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。

目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID entity,ID)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。

存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(Redundant Array of Independent Disk,RAID)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。

此外,本申请实施例所提供的基于全文检索的索引处理方法还可以涉及区块链,其中,索引信息、第一索引文件等数据可保存于区块链上。

为了便于理解本申请的技术方案,下面结合实际应用场景,以服务器作为基于全文检索的索引处理设备,对本申请实施例提供的基于全文检索的索引处理方法进行介绍。

参见图1,图1为本申请实施例提供的基于全文检索的索引处理方法的应用场景示意图。在图1所示的应用场景中,该应用场景包括终端设备101和服务器102。

其中,终端设备101确定待写入磁盘的文档作为待写入文档,并发送写入请求至服务器102,该写入请求需要携带待写入文档以及其相关信息,该相关信息例如可以包括文档识别标识、文档类别标识等;服务器102作为前述基于全文检索的索引处理设备,接收终端设备101发送的写入请求,针对其携带的待写入文档进行相关索引处理。

首先,服务器102可以得到待写入文档的文档识别标识、待写入文档所属的文档类别标识,该文档类别标识是基于业务分类需求所设定文档类别的标识,该文档类别标识用于构建索引关键字;服务器102还需要得到待写入文档的待更新词,例如,通过对待写入文档进行分词处理等操作,得到待写入文档的待更新词。

然后,服务器102在上述待更新词和文档识别标识的基础上,增加上述文档类别标识,在内存中共同构建索引关键字和索引关键字对应的索引值,获得键值对格式的索引信息。由于索引信息中索引关键字通过文档类别标识构建,因此构建得到的索引信息能够更细粒度的表征文档类别。

最后,服务器102判断得到满足预设持久化触发条件时,将存储在内存中的索引信息按照索引关键字的数值顺序,持久化为第一索引文件存储在磁盘中。在构建得到的索引信息能够更细粒度的表征文档类别的基础上,持久化触发后索引信息能够按照文档类别有序排列在磁盘的第一索引文件中。

基于此,在针对业务分类需求所设定不同文档类别情况下,同一文档类别所对应的索引信息顺序存储,以避免不同文档类别所对应的索引信息相互交错存储,实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

以业务分类需求包括用户分类需求为例,即,将文档按照不同用户做细粒度分类,确定文档所属的用户,为每个用户分配一个唯一的用户标识,则文档类别标识为用户标识。由于该方式中索引信息中索引关键字通过用户标识构建,因此构建得到的索引信息能够更细粒度的表征文档所属用户的情况,进而能够在持久化触发后按照文档所属用户的情况有序排列在磁盘的第一索引文件中。以此通过该方式使得同一用户所对应的索引信息顺序存储,避免不同用户所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于用户的索引分表功能,从而在全文检索时基于用户的检索处理更加便捷、快速,大大提高检索效率。

下面结合附图,以服务器作为基于全文检索的索引处理设备,对本申请实施例提供的一种基于全文检索的索引处理方法进行介绍。

参见图2,图2为本申请实施例提供的一种基于全文检索的索引处理方法的流程示意图。如图2所示,该基于全文检索的索引处理方法包括以下步骤:

S201、获得待写入文档的待更新词、文档识别标识和待写入文档所属的文档类别标识;文档类别标识是基于业务分类需求所设定文档类别的标识,文档类别标识用于构建索引关键字。

相关技术中,仅仅是根据文档的分词和识别标识构建得到索引,并将该索引存储以便后续检索使用,该方式构建得到的索引在粒度上不够细致,导致业务场景中不同文档类别所对应的索引相互交错存储,从而导致检索效率大大下降。为了解决上述问题,本申请实施例中,预先基于业务分类需求设定不同文档类别,为每个文档类别分配唯一标识;将任意一个需要写入磁盘的文档作为待写入文档,针对待写入文档而言,在构建得到索引信息之前,首先需要获得用于构建索引的数据。不仅需要获得待写入文档的待更新词、待写入文档的文档识别标识,而且还需要获得待写入文档所属的文档类别标识,该文档类别标识用于构建索引关键字,以便在后续构建得到的索引信息能够更细粒度的表征文档类别。

其中,获得待写入文档的待更新词的过程实际上是指:首先,对待写入文档进行分词处理,可以得到待写入文档的多个分词,形成待写入分词集合。然后,判断待写入文档的文档识别标识是否已存储,文档识别标识是指用于唯一识别文档的标识,例如可以是文档编号等,可以采用无符号64位数值表示;若是,表示待写入文档实际上文档识别标识对应的已写入文档的更新版本,则可以通过文档识别标识,从内存和磁盘中读取已写入文档的已写入分词集合。最后,通过比较待写入分词集合和已写入分词集合两个集合,即可得到待写入文档的待更新词。因此,本申请提供了一种可能的实现方式,S201中获得待写入文档的待更新词的步骤,例如可以包括以下步骤中S2011-S2013:

S2011、对待写入文档进行分词处理,获得待写入文档的待写入分词集合。

S2012、若文档识别标识已存储,从内存和磁盘中,获取文档识别标识对应的已写入分词集合。

此外,若文档识别标识未存储,表示内存和磁盘中并不包括文档识别标识对应的已写入分词集合,则可以直接基于待写入文档的待写入分词集合,获得待写入文档的待更新词,即,待写入分词集合中待写入分词作为待写入文档的待更新词。

S2013、基于待写入分词集合和已写入分词集合,获得待写入文档的待更新词。

作为一种示例,待写入文档为文档1,文档1的文档识别标识为000001,对文档1进行分词处理,得到文档1的待写入分词集合为集合A;当判断得到文档识别标识000001已存储时,从内存和磁盘中读取文档识别标识000001对应的已写入分词集合为集合B;计算集合A与集合B的差集,得到待插入分词集合A-B,计算集合B与集合A的差集,得到待删除分词集合B-A,待插入分词集合A-B中待插入分词和待删除分词集合B-A中待删除分词,作为文档1的待更新词。

其中,在本申请实施例中不做具体限定业务分类需求的具体内容,按照业务场景的具体情况确定业务分类需求的具体内容即可。由于预先基于业务分类需求设定不同文档类别,为每个文档类别分配一个唯一的标识,因此,通过待写入文档所属的文档类别,可以得到待写入文档所属的文档类别标识。

例如,针对用户通信场景中具有海量用户的情况,业务分类需求可以是用户分类需求,即,将文档按照不同用户做细粒度分类;此时,需要为每个用户分配一个唯一的用户标识,对应地,文档类别标识可以是用户标识,用户标识可以是个人标识、或者企业标识、或者账号标识、或者前述三者中任意组合等。因此,本申请提供了一种可能的实现方式,业务分类需求包括用户分类需求时,文档类别标识包括用户标识,用户标识包括个人标识、企业标识或账号标识中任意一种或多种的组合。

作为一种示例,业务分类需求为用户分类需求,为每个用户分配一个唯一的用户标识,文档类别标识为用户标识;待写入文档为文档1,文档1所属文档类别为用户A,用户A分配得到的用户标识为100001,则文档1所属的文档类别标识为用户A的用户标识,即,100001。

又如,针对数据报表场景中具有很长时间的报表的情况,业务分类需求可以是时间分类需求,即,将文档按照不同时间做细粒度分类;此时,需要为每段时间分配一个唯一的时间标识,对应地,文档类别标识可以是时间标识,时间标识可以是日期标识、或者周期标识、或者月份标识、或者年份标识,或者前述四者中任意组合等。因此,本申请提供了一种可能的实现方式,业务分类需求包括时间分类需求时,文档类别标识包括时间标识,时间标识包括日期标识、周期标识、月份标识或年份标识中任意一种或多种的组合。

作为一种示例,业务分类需求为时间分类需求,为每段时间分配一个唯一的时间标识,文档类别标识为时间标识;待写入文档为文档1,文档1所属文档类别为X年X月X日,X年X月X日分配得到的时间标识为100111,则文档1所属的文档类别标识为X年X月X日的时间标识,即,100111。

S202、基于待更新词、文档识别标识和文档类别标识,在内存中构建索引关键字和索引关键字对应的索引值获得索引信息,索引信息以键值对格式存储。

本申请实施例中,S201得到待写入文档的待更新词、文档识别标识和待写入文档所属的文档类别标识,均是用于构建索引的数据,则基于上述数据可以构建索引关键字和索引关键字对应的索引值,从而得到索引信息,并通过日志结构化合并树(Log-StructuredMerge Tree,LSM-tree)将索引信息以键值对格式存储在内存中。由于索引信息中索引关键字通过文档类别标识构建,因此构建得到的索引信息能够更细粒度的表征文档类别。

其中,LSM-tree是由两个或两个以上存储数据的结构组成的,最简单的LSM-tree由两个部件构成,一个部件常驻内存,可以为任何一种方便键值查找的数据结构,另一个部件常驻磁盘之中,也可以为任何一种方便键值查找的数据结构。

实际上,通过待更新词、文档识别标识和文档类别标识,既可以构建正向索引关键字和正向索引关键字对应的正向索引值,从而得到正向索引信息;也可以构建反向索引关键字和反向索引关键字对应的反向索引值,从而得到反向索引信息;即,索引信息可以包括正向索引信息和反向索引信息。

其中,上述正向索引信息是指以待写入文档的文档识别标识为正向索引关键字,在正向索引值中记录待写入文档的待更新词,在文档类别标识用于构建索引关键字的基础上,则可以通过文档识别标识和文档类别标识构建正向索引关键字,对待更新词进行序列化处理构建正向索引值,在内存中以键值对格式对应存储正向索引关键字和正向索引值,即得到正向索引信息。

上述反向索引信息是指以待写入文档的待更新词为反向索引关键字,在反向索引值中记录待写入文档的文档识别标识,在文档类别标识用于构建索引关键字的基础上,则可以通过待更新词和文档类别标识构建反向索引关键字,通过文档识别标识构建反向索引值,在内存中以键值对格式对应存储反向索引关键字和反向索引值,即得到反向索引信息。

因此,本申请提供了一种可能的实现方式,S202例如可以包括以下步骤中S2021-S2026:

S2021、基于文档识别标识和文档类别标识,构建正向索引关键字。

正向索引关键字包括正向前缀和文档识别标识两个部分,其中,正向前缀用于表示文档所属的文档类别,以支持更细粒度的基于文档类别的索引分表功能,且正向前缀需要具有正向标记;则可以先通过文档类别标识和正向标识确定正向前缀,再结合文档识别标识即可构建正向索引关键字。因此,本申请提供了一种可能的实现方式,S2021例如可以包括以下步骤:基于文档类别标识和正向标识,确定正向索引关键字中正向前缀;基于正向前缀和文档识别标识,构建正向索引关键字。

作为一种示例,如图3所示的一种正向索引关键字的格式示意图。正向索引关键字包括正向前缀和文档识别标识,正向前缀包括文档类别标识和正向标识。其中,文档类别标识例如可以占据8个字节,无符号64位数值,比如用户A的用户标识100001;正向标识例如可以占据1个字节,比如定值1,文档识别标识例如也可以占据8个字节,无符号64位数值,比如文档1的文档识别标识000001、或者文档2的文档识别标识000002、或者文档3的文档识别标识000003等等。

S2022、基于待更新词进行序列化处理,构建正向索引关键字对应的正向索引值。

S2023、在内存中以键值对格式对应存储正向索引关键字和正向索引值,获得索引信息中正向索引信息。

S2024、基于待更新词和文档类别标识,构建反向索引关键字。

反向索引关键字包括反向前缀和待更新词两个部分,其中,反向前缀用于表示文档所属的文档类别,以支持更细粒度的基于文档类别的索引分表功能,且反向前缀需要具有反向标记;则可以先通过文档类别标识和反向标识确定反向前缀,再结合待更新词即可构建反向索引关键字。因此,本申请提供了一种可能的实现方式,S2024例如可以包括以下步骤:基于文档类别标识和反向标识,确定反向索引关键字中反向前缀;基于反向前缀和待更新词,构建反向索引关键字。

作为一种示例,如图4所示的一种反向索引关键字的格式示意图。反向索引关键字包括反向前缀和待更新词,反向前缀包括文档类别标识和反向标识。其中,文档类别标识例如可以占据8个字节,无符号64位数值,比如用户A的用户标识100001;反向标识例如可以占据1个字节,比如定值0,待更新词例如可以是待更新词1、或者待更新词2、或者待更新词3等等。

S2025、基于文档识别标识构建反向索引关键字对应的反向索引值。

反向索引值实际上存储的待更新词的倒排列表,倒排列表包括头部、删除列表和文档识别标识倒排列表三个部分;其中,头部用于记录删除列表和文档识别标识倒排列表对应的编码版本,删除列表用于记录文档识别标识倒排列表中需要删除待更新词的各个文档所属的文档识别标识的位置,文档识别标识倒排列表用于记录包括待更新词的各个文档所属的文档识别标识的倒序。

在基于文档识别标识构建反向索引关键字对应的反向索引值过程中,需要判断反向索引关键字是否具有对应的历史倒排列表,若否,表示针对该反向索引关键字还没有编码得到倒排列表,则需要基于文档识别标识编码待更新词的倒排列表,以得到该反向索引关键字对应的反向索引值;若有,表示针对该反向索引关键字已经编码得到倒排列表,即,上述历史倒排列表,则需要将文档识别标识有序插入历史倒排列表中的历史文档识别标识倒排列表。

在用于构建反向索引关键字的待更新词分为待插入分词和待删除分词的基础上,对于待插入分词而言,直接将文档识别标识有序插入历史文档识别标识倒排列表,即可得到反向索引关键字对应的反向索引值;对于待删除分词而言,不仅需要将文档识别标识有序插入历史文档识别标识倒排列表,还需要在历史倒排列表中的历史删除列表增加对应文档识别标识的删除标记,才能得到反向索引关键字对应的反向索引值。因此,本申请提供了一种可能的实现方式,S2025例如可以包括以下步骤中步骤A-步骤C:

步骤A、若反向索引关键字具有对应的历史倒排列表,待更新词为待插入分词,将文档识别标识有序插入历史倒排列表中的历史文档识别标识倒排列表,获得反向索引关键字对应的反向索引值。

步骤B、若反向索引关键字具有对应的历史倒排列表,待更新词为待删除分词,将文档识别标识有序插入历史倒排列表中的历史文档识别标识倒排列表,并在历史倒排列表中的历史删除列表增加对应文档识别标识的删除标记,获得反向索引关键字对应的反向索引值。

步骤C、若反向索引关键字不具有对应的历史倒排列表,基于文档识别标识编码待更新词的倒排列表,获得反向索引关键字对应的反向索引值。

作为一种示例,如图5所示的一种倒排列表的格式示意图。以包括待更新词的各个文档所属的文档识别标识分别为99999,99998,99997,99996,99995,其中,需要删除待更新词的各个文档所属的文档识别标识分别为99998和99995为例;则文档识别标识倒排列表采用varint编码,varint是一种使用一个或多个字节序列化整数的方法,会把整数编码为变长字节,具体是按照文档识别标识倒序,第一个是数值最大的文档识别标识作为基础,后续每个值记录与前一个文档识别标识的差值,即,99999,1,1,1,1。删除列表同样采用varint编码,具体按照文档识别标识倒排列表中需要删除待更新词的各个文档所属的文档识别标识的位置升序,文档识别标识倒排列表中文档识别标识的位置从0开始,第一个是具体位置,后续每个值记录与前一个位置差值,即,1,3。

S2026、在内存中以键值对格式对应存储反向索引关键字和反向索引值,获得索引信息中反向索引信息。

作为一种示例,如图6所示的一种正向索引信息和反向索引信息的格式示意图。其中,正向索引信息包括正向索引关键字和正向索引值,正向索引关键字包括正向前缀和文档识别标识,正向索引值包括序列化后的待更新词;反向索引信息包括反向索引关键字和反向索引值,反向索引关键字包括反向前缀和待更新词,反向索引值包括待更新词的倒排列表。

S203、满足预设持久化触发条件时,基于索引关键字的数值顺序,将内存中存储的索引信息持久化为第一索引文件存储至磁盘中。

本申请实施例中,内存中存储的数据后续需要持久化为文件存储至磁盘中,且持久化需要一定的触发条件,则预先设定持久化的触发条件,作为预设持久化触发条件;在S202构建得到的索引信息以键值对格式存储至内存后,需要先判断是否满足预设持久化触发条件,若是,再按照索引信息中索引关键字的数值顺序,将索引信息需要持久化为第一索引文件,并通过LSM-tree将第一索引文件存储至磁盘中。在S202构建得到的索引信息能够更细粒度的表征文档类别的基础上,持久化触发后索引信息能够按照文档类别有序排列在磁盘的第一索引文件中。

基于此,S201-S203的实现方式在针对业务分类需求设定不同文档类别情况下,使得同一文档类别所对应的索引信息顺序存储,以避免不同文档类别所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

以业务分类需求包括用户分类需求为例,即,将文档按照不同用户做细粒度分类,确定文档所属的用户,为每个用户分配一个唯一的用户标识,则文档类别标识为用户标识。由于该方式中索引信息中索引关键字通过用户标识构建,因此构建得到的索引信息能够更细粒度的表征文档所属用户的情况,进而能够在持久化触发后按照文档所属用户的情况有序排列在磁盘的第一索引文件中。以此通过该方式使得同一用户所对应的索引信息顺序存储,避免不同用户所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于用户的索引分表功能,从而在全文检索时基于用户的检索处理更加便捷、快速,大大提高检索效率。

一般情况下,内存使用状态达到预设内存状态,例如,内存大小达到预设内存阈值、或者内存占用率达到预设占用率等;持久化后统计时间达到预设时间,例如,距离上一次持久化的统计时间达到预设持久化周期时间;系统重启等触发将索引信息持久化为第一索引文件。因此,本申请提供了一种可能的实现方式,预设持久化触发条件包括以下一种或多种:内存使用状态达到预设内存状态、持久化后统计时间达到预设时间或系统重启。

此外,本申请实施例中,磁盘包括多层文件层,多层文件层的层级不同,每层文件层存储多个索引文件,每个索引文件存储一个连续索引关键字范围内多个索引信息,索引文件内部、索引文件之间的索引信息按照索引关键字的数值顺序有序排列。随着层级较低的文件层存储的索引文件增多,可以选择一部分索引文件,与更高一层级的文件层存储的索引文件合并,合并后存储在该更高一层级的文件层,该合并方式减少磁盘中冗余的索引文件、索引信息,以便在后续全文检索时,进一步使得检索处理更加便捷、快速,从而进一步提高检索效率。因此,本申请提供了一种可能的实现方式,磁盘包括第一文件层和第二文件层,第二文件层的层级高于第一文件层的层级,第一文件层存储第一索引文件,第二文件层存储第二索引文件;对应地,该方法例如还可以包括S204:将第一文件层中的第一索引文件与第二文件层中的第二索引文件合并,存储至第二文件层。

在上述说明的基础上,磁盘还可以包括第三文件层,第三文件层的层级高于第二文件层的层级,第三文件层存储第三索引文件,将第二文件层中的第二索引文件与第三文件层中的第三索引文件合并,存储至第三文件层,依次类推,具体不再赘述。

作为一种示例,如图7所示的一种磁盘中文件层的示意图,磁盘包括的第一文件层为Level 0、第二文件层为Level 1、第二文件层为Level 2等等,Level 0存储的第一索引文件之间存在索引关键字范围的重叠,例如,007.sst和008.sst之间存在索引关键字范围的重叠。对于非Level 0的文件层,比如Level 1存储的第二索引文件、Level 2存储的第三索引文件之间不存在索引关键字范围的重叠,例如,005.sst和004.sst之间不存在索引关键字范围的重叠、002.sst和001.sst之间不存在索引关键字范围的重叠。

上述实施例提供的基于全文检索的索引处理方法,预先按照业务分类需求设定不同文档类别的标识,针对待写入文档而言,通过在待写入文档的待更新词和文档识别标识的基础上,增加待写入文档所属的文档类别标识,在内存中共同构建索引关键字和索引关键字对应的索引值,得到键值对格式的索引信息,文档类别标识用于构建索引关键字;满足预设持久化触发条件,通过将存储在内存中的索引信息按照索引关键字的数值顺序持久化,得到第一索引文件存储在磁盘中。由于索引信息中索引关键字通过文档类别标识构建,因此构建得到的索引信息能够更细粒度的表征文档类别,进而能够在持久化触发后按照文档类别有序排列在磁盘的第一索引文件中。基于此,该方式在针对业务分类需求设定不同文档类别情况下,使得同一文档类别所对应的索引信息顺序存储,以避免不同文档类别所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

此外,相关技术中,通过Elasticsearch存储索引,全文检索时所使用的检索引擎是Lucene,通过Lucene只能检索磁盘中存储的索引,而内存中存储的索引并不是实时持久化并存储至磁盘中,则无法实时检索到完整、准确的检索结果。其中,Elasticsearch是一个基于Lucene的搜索服务器,其提供了一个分布式多用户能力的全文检索服务。

因此,在上述基于全文检索的索引处理方法实施例的基础上,在全文检索时针对用户通过终端设备输入的待检索文本和待检索文档类别标识,终端设备将其发送至服务器,服务器通过待检索文本的待检索词和待检索文档类别标识,构建待检索反向索引关键字;考虑LSM-tree的特性,不仅需要在磁盘中检索待检索反向索引关键字,而且需要在内存中检索待检索反向索引关键字,得到待检索反向索引关键字对应的多个目标文档识别标识倒排列表;多个目标文档识别标识倒排列表具有优先级,按照优先级归并多个目标文档识别标识倒排列表,以得到完整目标文档识别标识倒排列表。

下面结合附图,对本申请实施例提供的一种全文检索方法进行介绍。参见图8,图8为本申请实施例提供的一种全文检索方法的流程示意图。如图8所示,该全文检索方法包括以下步骤:

S801、获得待检索文本的待检索词和待检索文档类别标识。

本申请实施例中,对待检索文本进行分词处理,得到待检索文本的多个待检索分词,形成待检索分词集合,待检索分词集合中待检索分词作为待检索词。

S802、基于待检索词和检索待文档类别标识,构建待检索反向索引关键字。

本申请实施例中,S802的实现方式可以参见S2024的实现方式,基于待检索文档类别标识和反向标识,确定待检索反向索引关键字中反向前缀;基于反向前缀和待检索词,构建待检索反向索引关键字。

S803、在内存和磁盘中基于待检索反向索引关键字进行检索,获得待检索反向索引关键字对应的多个目标文档识别标识倒排列表。

本申请实施例中,在内存和磁盘中检索待检索反向索引关键字,实际上可以读取待检索反向索引关键字对应的多个目标反向索引值,目标反向索引值存储的是待检索词的目标倒排列表,参考上述实施例中关于倒排列表的说明,可以对对多个目标反向索引值进行解析,以得到多个目标文档识别标识倒排列表。因此,本申请提供了一种可能的实现方式,S803例如可以包括以下步骤中S8031-S8032:

S8031、在内存和磁盘中基于待检索反向索引关键字进行检索,获得待检索反向索引关键字对应的多个目标反向索引值。

S8032、对多个目标反向索引值进行解析,获得多个目标文档识别标识倒排列表。

S804、按照多个目标文档识别标识倒排列表的优先级,对多个目标文档识别标识倒排列表进行归并处理,获得完整目标文档识别标识倒排列表。

本申请实施例中,从内存中得到的目标文档识别标识倒排列表的优先级最高,从磁盘中得到的目标文档识别标识倒排列表中,目标文档识别标识倒排列表存储在的文件层的层级越低,目标文档识别标识倒排列表的优先级越高,若两个以及两个以上目标文档识别标识倒排列表均存储在第一文件层,写入时间越新优先级越高。

本申请实施例中,S804的具体实现方式是指:按照多个目标文档识别标识倒排列表的优先级,遍历其中的第一个目标文档识别标识,以优先级最高的目标文档识别标识为准,若优先级最高的第一个目标文档识别标识具有删除标记,需要去除第一个目标文档识别标识,若优先级最高的第一个目标文档识别标识不具有删除标记,需要保留第一个目标文档识别标识;以上述类似方式遍历下一个目标文档识别标识;直至各个目标文档识别标识均遍历完成,得到完整目标文档识别标识倒排列表。因此,本申请提供了一种可能的实现方式,S804例如可以包括以下步骤中S8041-S8042:

S8041、按照多个目标文档识别标识倒排列表的优先级,遍历多个目标文档识别标识倒排列表中目标文档识别标识,确定优先级最高的目标文档识别标识。

S8042、若优先级最高的目标文档识别标识具有删除标记,去除目标文档识别标识,若优先级最高的目标文档识别标识不具有删除标记,保留目标文档识别标识,获得完整目标文档识别标识倒排列表。

作为一种示例,如图9所示的一种归并多个目标文档识别标识倒排列表的示意图。其中,4个目标文档识别标识倒排列表的优先级由高至低从上到下依次排列,遍历第一个目标文档识别标识9,优先级最高的目标文档识别标识为9[delete],具有删除标记,去除目标文档识别标识9;遍历下一个目标文档识别标识8,优先级最高的目标文档识别标识为8,不具有删除标记,保留目标文档识别标识8,以此类推,直至遍历最后一个目标文档识别标识4,优先级最高的目标文档识别标识为4,不具有删除标记,保留目标文档识别标识4,得到完整目标文档识别标识倒排列表,即,8,7,6,5,4。

上述实施例提供的全文检索方法,通过待检索文本的待检索词和待检索文档类别标识,构建待检索反向索引关键字;不仅需要在磁盘中检索待检索反向索引关键字,而且需要在内存中检索待检索反向索引关键字,可得到待检索反向索引关键字对应的多个目标文档识别标识倒排列表;多个目标文档识别标识倒排列表具有优先级,按照优先级归并多个目标文档识别标识倒排列表,以得到完整目标文档识别标识倒排列表。基于此,在全文检索时,可以实时将内存中新增存储的文档识别标识倒排列表,以及磁盘中历史存储文档识别标识倒排列表合并,以实现实时检索,得到完整、准确的检索结果。

为了更好的理解本申请实施例提供的基于全文检索的索引处理方法以及全文检索方法,下面对基于全文检索的整体框架进行介绍。参见图10,图10为本申请实施例提供的一种基于全文检索的整体框架示意图。

基于全文检索的整体框架可以包括获得模块、分词模块、构建模块、持久化模块、合并模块和检索模块。其中,获得模块的输入可以是待写入文档,也可以是待检索文本。

当获得模块的输入为待写入文档时,分词模块对待写入文档进行分词处理,得到待写入文档的待更新词;构建模块基于待更新词、待写入文档的文档识别标识和待写入文档所属的文档类别标识,构建索引关键字和索引关键字对应的索引值,获得正向索引信息和反向索引信息,将正向索引信息和反向索引信息以键值对格式存储至内存中;持久化模块在满足预设持久化触发条件时,按照索引关键字的数值顺序,将内存中存储的正向索引信息和反向索引信息持久化为索引文件;将索引文件存储至磁盘中;此外,合并删除模块将磁盘中存储的低层级文件层中索引文件与高层级文件层中索引文件合并,并存储至高层级文件层中,删除反向索引信息的反向索引值中具有删除标记的文档识别标识。

当获得模块的输入为待检索文本时,分词模块对待检索文本进行分词处理,得到待检索文本的待检索词;检索模块基于待检索词和检索待文档类别标识,构建待检索反向索引关键字,在内存和磁盘中检索得待检索反向索引关键字对应的多个目标文档识别标识倒排列表,按照多个目标文档识别标识倒排列表的优先级,对多个目标文档识别标识倒排列表进行归并处理,得到完整目标文档识别标识倒排列表。

基于全文检索支持细粒度的基于文档类别的索引分表功能,也可以实时对索引信息进行更新,并且随着索引信息、索引文件的逐渐增多,检索性能仍能保持稳定、高效。该方式广泛应用于通讯场景等业务场景中的全文检索,文档类别可以包括企业员工通讯录、审批、日报、周报、汇报、企业素材检索、企业邮箱等。最大业务场景可达到300+亿条记录,索引信息数量万亿+,存储容量几十太字节(Terabyte,TB)。

针对上述实施例提供的基于全文检索的索引处理方法,本申请实施例还提供了一种基于全文检索的索引处理装置。

参见图11,该图为本申请实施例提供的一种基于全文检索的索引处理装置的示意图。如图11所示,该基于全文检索的索引处理装置1100包括:获得单元1101、构建单元1102和持久化单元1103;

获得单元1101,用于获得待写入文档的待更新词、文档识别标识和待写入文档所属的文档类别标识;文档类别标识是基于业务分类需求所设定文档类别的标识,文档类别标识用于构建索引关键字;

构建单元1102,用于基于待更新词、文档识别标识和文档类别标识,在内存中构建索引关键字和索引关键字对应的索引值获得索引信息,索引信息以键值对格式存储;

持久化单元1103,用于满足预设持久化触发条件时,基于索引关键字的数值顺序,将内存中存储的索引信息持久化为第一索引文件存储至磁盘中。

作为一种可能的实现方式,构建单元1102,用于:

基于文档识别标识和文档类别标识,构建正向索引关键字;

基于待更新词进行序列化处理,构建正向索引关键字对应的正向索引值;

在内存中以键值对格式对应存储正向索引关键字和正向索引值,获得索引信息中正向索引信息;

基于待更新词和文档类别标识,构建反向索引关键字;

基于文档识别标识构建反向索引关键字对应的反向索引值;

在内存中以键值对格式对应存储反向索引关键字和反向索引值,获得索引信息中反向索引信息。

作为一种可能的实现方式,构建单元1102,用于:

基于文档类别标识和正向标识,确定正向索引关键字中正向前缀;

基于正向前缀和文档识别标识,构建正向索引关键字;

基于文档类别标识和反向标识,确定反向索引关键字中反向前缀;

基于反向前缀和待更新词,构建反向索引关键字。

作为一种可能的实现方式,构建单元1102,用于:

若反向索引关键字具有对应的历史倒排列表,待更新词为待插入分词,将文档识别标识有序插入历史倒排列表中的历史文档识别标识倒排列表,获得反向索引关键字对应的反向索引值;

若反向索引关键字具有对应的历史倒排列表,待更新词为待删除分词,将文档识别标识有序插入历史倒排列表中的历史文档识别标识倒排列表,并在历史倒排列表中的历史删除列表增加对应文档识别标识的删除标记,获得反向索引关键字对应的反向索引值;

若反向索引关键字不具有对应的历史倒排列表,基于文档识别标识编码待更新词的倒排列表,获得反向索引关键字对应的反向索引值。

作为一种可能的实现方式,获得单元1101,用于:

对待写入文档进行分词处理,获得待写入文档的待写入分词集合;

若文档识别标识已存储,从内存和磁盘中,获取文档识别标识对应的已写入分词集合;

基于待写入分词集合和已写入分词集合,获得待写入文档的待更新词。

作为一种可能的实现方式,磁盘包括第一文件层和第二文件层,第二文件层的层级高于第一文件层的层级,第一文件层存储第一索引文件,第二文件层存储第二索引文件;装置还包括合并单元;

合并单元,用于将第一文件层中的第一索引文件与第二文件层中的第二索引文件合并,存储至第二文件层。

作为一种可能的实现方式,预设持久化触发条件包括以下一种或多种:

内存使用状态达到预设内存状态、持久化后统计时间达到预设时间或系统重启。

作为一种可能的实现方式,业务分类需求包括用户分类需求时,文档类别标识包括用户标识,用户标识包括个人标识、企业标识或账号标识中任意一种或多种的组合;业务分类需求包括时间分类需求时,文档类别标识包括时间标识,时间标识包括日期标识、周期标识、月份标识或年份标识中任意一种或多种的组合。

作为一种可能的实现方式,装置还包括归并单元;

获得单元1101,还用于获得待检索文本的待检索词和待检索文档类别标识;

构建单元1102,还用于基于待检索词和检索待文档类别标识,构建待检索反向索引关键字;

获得单元1101,还用于在内存和磁盘中基于待检索反向索引关键字进行检索,获得待检索反向索引关键字对应的多个目标文档识别标识倒排列表;

归并单元,用于按照多个目标文档识别标识倒排列表的优先级,对多个目标文档识别标识倒排列表进行归并处理,获得完整目标文档识别标识倒排列表。

作为一种可能的实现方式,获得单元1101,还用于:

在内存和磁盘中基于待检索反向索引关键字进行检索,获得待检索反向索引关键字对应的多个目标反向索引值;

对多个目标反向索引值进行解析,获得多个目标文档识别标识倒排列表。

上述实施例提供的基于全文检索的索引处理装置,预先按照业务分类需求设定不同文档类别的标识,针对待写入文档而言,通过在待写入文档的待更新词和文档识别标识的基础上,增加待写入文档所属的文档类别标识,在内存中共同构建索引关键字和索引关键字对应的索引值,得到键值对格式的索引信息,文档类别标识用于构建索引关键字;满足预设持久化触发条件,通过将存储在内存中的索引信息按照索引关键字的数值顺序持久化,得到第一索引文件存储在磁盘中。由于索引信息中索引关键字通过文档类别标识构建,因此构建得到的索引信息能够更细粒度的表征文档类别,进而能够在持久化触发后按照文档类别有序排列在磁盘的第一索引文件中。基于此,该方式在针对业务分类需求设定不同文档类别情况下,使得同一文档类别所对应的索引信息顺序存储,以避免不同文档类别所对应的索引信息相互交错存储,在全文检索中实现更细粒度的基于文档类别的索引分表功能,从而在全文检索时使得检索处理更加便捷、快速,大大提高检索效率。

本申请实施例还提供了一种用于基于全文检索的索引处理设备,下面将从硬件实体化的角度对本申请实施例提供的用于基于全文检索的索引处理设备进行介绍。

参见图12,图12是本申请实施例提供的一种服务器结构示意图,该服务器1200可因配置或性能不同而产生比较大的差距,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。

服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows Server

上述实施例中由服务器所执行的步骤可以基于该图12所示的服务器结构。

其中,CPU 1222用于执行如下步骤:

获得待写入文档的待更新词、文档识别标识和待写入文档所属的文档类别标识;文档类别标识是基于业务分类需求所设定文档类别的标识,文档类别标识用于构建索引关键字;

基于待更新词、文档识别标识和文档类别标识,在内存中构建索引关键字和索引关键字对应的索引值获得索引信息,索引信息以键值对格式存储;

满足预设持久化触发条件时,基于索引关键字的数值顺序,将内存中存储的索引信息持久化为第一索引文件存储至磁盘中。

针对上文描述的基于全文检索的索引处理方法,本申请实施例还提供了一种用于基于全文检索的索引处理终端设备,以使上述基于全文检索的索引处理方法在实际中实现以及应用。

参见图13,图13为本申请实施例提供的一种终端设备的结构示意图。为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(Personal DigitalAssistant,简称PDA)等任意终端设备,以终端设备为手机为例:

图13示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图13,该手机包括:射频(Radio Frequency,简称RF)电路1310、存储器1320、输入单元1330、显示单元1340、传感器1350、音频电路1360、无线保真(Wireless Fidelity,简称WiFi)模块1370、处理器1380、以及电源1390等部件。本领域技术人员可以理解,图13中示出的手机结构并不构建对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图13对手机的各个构建部件进行具体的介绍:

RF电路1310可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1380处理;另外,将设计上行的数据发送给基站。通常,RF电路1310包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,简称LNA)、双工器等。此外,RF电路1310还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,简称GSM)、通用分组无线服务(GeneralPacket Radio Service,简称GPRS)、码分多址(Code Division Multiple Access,简称CDMA)、宽带码分多址(Wideband Code Division Multiple Access,简称WCDMA)、长期演进(Long Term Evolution,简称LTE)、电子邮件、短消息服务(Short Messaging Service,简称SMS)等。

存储器1320可用于存储软件程序以及模块,处理器1380通过运行存储在存储器1320的软件程序以及模块,从而实现手机的各种功能应用以及数据处理。存储器1320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元1330可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1330可包括触控面板1331以及其他输入设备1332。触控面板1331,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1331上或在触控面板1331附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1331可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1380,并能接收处理器1380发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1331。除了触控面板1331,输入单元1330还可以包括其他输入设备1332。具体地,其他输入设备1332可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元1340可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1340可包括显示面板1341,可选的,可以采用液晶显示器(LiquidCrystal Display,简称LCD)、有机发光二极管(Organic Light-Emitting Diode,简称OLED)等形式来配置显示面板1341。进一步的,触控面板1331可覆盖显示面板1341,当触控面板1331检测到在其上或附近的触摸操作后,传送给处理器1380以确定触摸事件的类型,随后处理器1380根据触摸事件的类型在显示面板1341上提供相应的视觉输出。虽然在图13中,触控面板1331与显示面板1341是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1331与显示面板1341集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器1350,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1341的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1341和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路1360、扬声器1361,传声器1362可提供用户与手机之间的音频接口。音频电路1360可将接收到的音频数据转换后的电信号,传输到扬声器1361,由扬声器1361转换为声音信号输出;另一方面,传声器1362将收集的声音信号转换为电信号,由音频电路1360接收后转换为音频数据,再将音频数据输出处理器1380处理后,经RF电路1310以发送给比如另一手机,或者将音频数据输出至存储器1320以便进一步处理。

WiFi属于短距离无线传输技术,手机通过WiFi模块1370可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图13示出了WiFi模块1370,但是可以理解的是,其并不属于手机的必须构建,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器1380是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1320内的软件程序和/或模块,以及调用存储在存储器1320内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1380可包括一个或多个处理单元;优选的,处理器1380可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1380中。

手机还包括给各个部件供电的电源1390(比如电池),优选的,电源可以通过电源管理系统与处理器1380逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本申请实施例中,该手机所包括的存储器1320可以存储程序代码,并将所述程序代码传输给所述处理器。

该手机所包括的处理器1380可以根据所述程序代码中的指令执行上述实施例提供的基于全文检索的索引处理方法。

本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行上述实施例提供的基于全文检索的索引处理方法。

本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。用于基于全文检索的索引处理设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该用于基于全文检索的索引处理设备执行上述方面的各种可选实现方式中提供的基于全文检索的索引处理方法。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:Read-Only Memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

相关技术
  • 一种基于ElasticSearch全文检索的文件索引系统及方法
  • 一种视频处理方法、视频索引方法、装置及终端设备
  • 一种基于多信道的数据读写处理方法、装置及相关设备
  • 一种基于区块链网络的数据处理方法及相关装置
技术分类

06120115622253