搜索引擎的搜索方法、搜索引擎架构、设备及存储介质转让专利

申请号 : CN202110538075.5

文献号 : CN113378030B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张美华

申请人 : 上海德衡数据科技有限公司

摘要 :

本发明提供一种搜索引擎的搜索方法、搜索引擎架构、设备及存储介质,所述方法包括:响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本,并根据镜像文本构建数据容器;根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。本发明通过对搜索请求的数据流进行数据容器的构建,实现了通过数据容器快速遍历数据池,获取与搜索请求对应的目标数据,并将目标数据发送至终端设备,提升搜索的效率。

权利要求 :

1.一种搜索引擎的搜索方法,应用于服务器,其特征在于,所述方法包括:

响应于终端设备发送的搜索请求,获取数据流中的数据脚本,提取所述数据脚本中的多个第一数据特征向量和多个第二数据特征向量,其中,所述第一数据特征向量指向所述数据脚本中的键值,所述第二数据特征向量指向所述数据脚本中与每个所述键值对应的数值;

根据所述第一数据特征向量建立映射关系,形成与所述数据脚本中的所述第一数据特征向量一一对应的第一数据特征镜像向量;

根据所述第二数据特征向量建立映射关系,形成与所述数据脚本中的所述第二数据特征向量一一对应的第二数据特征镜像向量;

根据所述第一数据特征镜像向量和所述第二数据特征镜像向量构建镜像文本,提取所述镜像文本中的数据镜像特征块,并根据所述数据镜像特征块构建数据容器,其中,所述数据镜像特征块是根据所述第一数据特征镜像向量和所述第二数据特征镜像向量构建的,所述数据镜像特征块包含对应所述键值或者所述数值的特征块指针;

所述数据容器通过所述特征块指针对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;

若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。

2.根据权利要求1所述的一种搜索引擎的搜索方法,其特征在于,所述根据所述数据镜像特征块构建数据容器的步骤中,具体包括:提取所述镜像文本中的所述第一数据特征镜像向量,根据所述第一数据特征镜像向量构建第一数据镜像特征块;

提取所述镜像文本中的所述第二数据特征镜像向量,根据所述第二数据特征镜像向量构建第二数据镜像特征块;

根据所述第一数据镜像特征块和所述第二数据镜像特征块构建所述数据容器,其中,所述第一数据镜像特征块包括至少一个第一特征块指针,所述第一特征块指针与所述键值对应,所述第二数据镜像特征块包括至少一个第二特征块指针,所述第二特征块指针与所述数值对应。

3.根据权利要求2所述的一种搜索引擎的搜索方法,其特征在于,所述数据容器通过所述特征块指针对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据的步骤中,具体包括:根据每个所述第一特征块指针遍历所述数据池,并得到与所述镜像文本的键值对应的第一遍历结果;

根据所述第一遍历结果和所述第二特征块指针遍历所述数据池,得到与所述镜像文本的数值对应的第二遍历结果;

根据所述第一遍历结果和所述第二遍历结果生成遍历脚本文件,并将所述遍历脚本文件与所述镜像文本进行一致性检验。

4.根据权利要求3所述的一种搜索引擎的搜索方法,其特征在于,所述根据每个所述第一特征块指针遍历所述数据池,并得到与所述镜像文本键值对应的第一遍历结果的步骤中,具体包括:获取所述镜像文本中,全部所述键值的顺序特征;

所述第一数据镜像特征块中,所述第一特征块指针与所述键值的对应关系,为每个所述第一特征块指针分配所述键值在所述顺序特征中的序列号;

根据每个所述第一特征块指针遍历所述数据池,得到在所述数据池内与所述第一特征块指针的遍历对应结果,并根据所述遍历对应结果和每个所述第一特征块指针的所述序列号生成所述第一遍历结果。

5.根据权利要求3所述的一种搜索引擎的搜索方法,其特征在于,所述若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备的步骤中,具体包括:若在所述数据池内遍历到与所述镜像文本的键值对应的第一遍历结果,则根据所述第二特征块指针遍历所述数据池得到与所述镜像文本的数值对应的所述第二遍历结果;

若在所述数据池内遍历到与所述数值对应的第二遍历结果,则判定在数据池内存在与所述镜像文本一致的所述目标数据,并根据所述第一遍历结果和所述第二遍历结果获取所述目标数据。

6.一种搜索引擎架构,其特征在于,包括:构建模块、遍历模块和判断模块;

所述构建模块用于响应于终端设备发送的搜索请求,获取数据流中的数据脚本,提取所述数据脚本中的多个第一数据特征向量和多个第二数据特征向量,其中,所述第一数据特征向量指向所述数据脚本中的键值,所述第二数据特征向量指向所述数据脚本中与每个所述键值对应的数值;根据所述第一数据特征向量建立映射关系,形成与所述数据脚本中的所述第一数据特征向量一一对应的第一数据特征镜像向量;根据所述第二数据特征向量建立映射关系,形成与所述数据脚本中的所述第二数据特征向量一一对应的第二数据特征镜像向量;根据所述第一数据特征镜像向量和所述第二数据特征镜像向量构建镜像文本,提取所述镜像文本中的数据镜像特征块,并根据所述数据镜像特征块构建数据容器,其中,所述数据镜像特征块是根据所述第一数据特征镜像向量和所述第二数据特征镜像向量构建的,所述数据镜像特征块包含对应所述键值或者所述数值的特征块指针;

所述遍历模块用于根据所述数据容器通过所述特征块指针对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;

所述判断模块用于若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。

7.一种电子设备,其特征在于,包括:存储器和处理器;

所述存储器和所述处理器通过总线完成相互间的通信;

所述存储器存储有,能够在所述处理器上运行的计算机指令;

所述处理器调用所述计算机程序指令时,能够执行上述权利要求1至5任一所述的搜索引擎的搜索方法。

8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现上述权利要求1至5任一所述的搜索引擎的搜索方法的步骤。

说明书 :

搜索引擎的搜索方法、搜索引擎架构、设备及存储介质

技术领域

[0001] 本发明涉及计算机技术领域,尤其涉及一种搜索引擎的搜索方法、搜索引擎架构、设备及存储介质。

背景技术

[0002] 目前,用户通过互联网进行特定目标搜索时,通常是用户在搜索框中输入关键字,并发起搜索指令(如点击搜索按钮或点击回车键)之后,才会向服务端发起搜索请求,而客户端在接收到服务端返回的搜索结果页的资源之后,再根据服务端返回的搜索结果页的资源进行页面渲染。现有的搜索方式中,搜索的响应速度较慢。
[0003] 有鉴于此提出本发明。

发明内容

[0004] 本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种搜索引擎的搜索方法,用以解决现有技术中用户通过互联网进行特定目标搜索时,通常是用户在搜索框中输入关键字,并发起搜索指令之后,才会向服务端发起搜索请求,其搜索时存在响应速度较慢的缺陷,通过对搜索请求的数据流进行数据容器的构建,实现了通过数据容器快速遍历数据池,获取与搜索请求对应的目标数据,并将目标数据发送至终端设备,提升搜索的效率。
[0005] 本发明还提出一种搜索引擎的搜索引擎架构,用以解决现有技术中用户通过互联网进行特定目标搜索时,通常是用户在搜索框中输入关键字,并发起搜索指令之后,才会向服务端发起搜索请求,其搜索时存在响应速度较慢的缺陷,通过对搜索请求的数据流进行数据容器的构建,实现了通过数据容器快速遍历数据池,获取与搜索请求对应的目标数据,并将目标数据发送至终端设备,提升搜索的效率。
[0006] 本发明又提出一种电子设备。
[0007] 本发明再提出一种非暂态计算机可读存储介质。
[0008] 根据本发明第一方面提供的一种搜索引擎的搜索方法,应用于服务器,所述服务器与多个终端设备连接,所述方法包括:
[0009] 响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本,并根据镜像文本构建数据容器;
[0010] 根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;
[0011] 若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。
[0012] 根据本发明的一种实施方式,所述响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本的步骤中,具体包括:
[0013] 获取所述数据流中的数据脚本,提取所述数据脚本中的多个第一数据特征向量和多个第二数据特征向量,其中,所述第一数据特征向量指向所述数据脚本中的键值,所述第二数据特征向量指向所述数据脚本中与每个所述键值对应的数值;
[0014] 根据所述第一数据特征向量建立映射关系,形成与所述数据脚本中的所述第一数据特征向量一一对应的第一数据特征镜像向量;
[0015] 根据所述第二数据特征向量建立映射关系,形成与所述数据脚本中的所述第二数据特征向量一一对应的第二数据特征镜像向量;
[0016] 根据所述第一数据特征镜像向量和所述第二数据特征镜像向量构建所述镜像文本。
[0017] 具体来说,本实施例提供了一种根据所述搜索请求的数据流构建镜像文本的实施方式,将数据流中数据脚本按照键值和数值进行划分,并生成与键值一一对应的第一数据特征向量,以及与数值一一对应的第二数据特征向量,并根据第一数据特征向量构建映射的第一数据特征镜像向量,根据第二数据特征向量构建映射的第二数据特征镜像向量,进而根据第一数据特征镜像向量和第二数据特征镜像向量形成镜像文本。
[0018] 在一个应用场景中,数据文中是在终端设备输入的查询类搜索请求,而终端设备上则有相应的输入提示,例如在终端设备上提前预设有键值,操作者根据键值输入相应的数值,进而实现搜索,键值包括姓名、年龄、性别、事项等,数值则是李四、26、男、查询违章记录等,其中事项还可以是查询病例、查询住址、查询电话等,上述仅仅是进行示例性的举证,不代表穷尽相应的实施例。
[0019] 根据本发明的一种实施方式,所述根据镜像文本构建数据容器的步骤中,具体包括:
[0020] 提取所述镜像文本中的所述第一数据特征镜像向量,根据所述第一数据特征镜像向量构建第一数据镜像特征块;
[0021] 提取所述镜像文本中的所述第二数据特征镜像向量,根据所述第二数据特征镜像向量构建第二数据镜像特征块;
[0022] 根据所述第一数据镜像特征块和所述第二数据镜像特征块构建所述数据容器,其中,所述第一数据镜像特征块包括至少一个第一特征块指针,所述第一特征块指针与所述键值对应,所述第二数据镜像特征块包括至少一个第二特征块指针,所述第二特征块指针与所述数值对应。
[0023] 具体来说,本实施例提供了一种根据镜像文本构建数据容器的实施方式,所述第一数据镜像特征块和所述第二数据镜像特征块构建所述数据容器,实现了对所述第一数据镜像特征块和所述第二数据镜像特征块进行打包,形成在数据池内遍历的数据容器,提供了出色的灵活性、抗干扰性,并无须对根据服务端返回的搜索结果页的资源进行页面渲染,在遍历前对数据流进行前期处理,直接形成在遍历过程中能够直接调用的第一特征块指针和第二特征块指针,提升搜索效率,降低运算量。
[0024] 根据本发明的一种实施方式,所述根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据的步骤中,具体包括:
[0025] 根据每个所述第一特征块指针遍历所述数据池,并得到与所述镜像文本的键值对应的第一遍历结果;
[0026] 根据所述第一遍历结果和所述第二特征块指针遍历所述数据池,得到与所述镜像文本的数值对应的所述第二遍历结果;
[0027] 根据所述第一遍历结果和所述第二遍历结果生成遍历脚本文件,并将所述遍历脚本文件与所述镜像文本进行一致性检验。
[0028] 具体来说,本实施例提供了一种确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据的实施方式,通过先行对键值进行提取,降低了搜索任务量,当在数据池内并未遍历到相应的第一特征块指针时,则无法对第二特征块指针进行再次遍历,可直接判定在数据池内并无一致的数据。
[0029] 根据本发明的一种实施方式,所述根据每个所述第一特征块指针遍历所述数据池,并得到与所述镜像文本键值对应的第一遍历结果的步骤中,具体包括:
[0030] 获取所述镜像文本中,全部所述键值的顺序特征;
[0031] 所述第一数据镜像特征块中,所述第一特征块指针与所述键值的对应关系,为每个所述第一特征块指针分配所述键值在所述顺序特征中的序列号;
[0032] 根据每个所述第一特征块指针遍历所述数据池,得到在所述数据池内与所述第一特征块指针的遍历对应结果,并根据所述遍历对应结果和每个所述第一特征块指针的所述序列号生成所述第一遍历结果。
[0033] 具体来说,本实施例提供了一种得到与所述镜像文本键值对应的第一遍历结果的实施方式,通过获取镜像文本中的全部键值的顺序特征,根据第一特征块指针在数据池内获取相应的数据,并根据键值的顺序特征对第一特征块指针获取到的数据进行排序,最终形成与镜像文本中的键值顺序一致的第一遍历结果。
[0034] 需要说明的是,第一特征块指针在数据池内进行遍历过程中,并不按照键值的顺序特征进行,此种设备提升了第一特征块指针在数据池内的遍历响应速度,避免由于按照既定顺序进行遍历,而导致的搜索时长过长,效率低下的问题。
[0035] 根据本发明的一种实施方式,所述若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备的步骤中,具体包括:
[0036] 若在所述数据池内遍历到与所述镜像文本的键值对应的第一遍历结果,则根据所述第二特征块指针遍历所述数据池得到与所述镜像文本的数值对应的所述第二遍历结果;
[0037] 若在所述数据池内遍历到与所述数值对应的第二遍历结果,则判定在数据池内存在与所述镜像文本一致的所述目标数据,并根据所述第一遍历结果和所述第二遍历结果获取所述目标数据。
[0038] 具体来说,本实施例提供了一种根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备的实施方式,第一特征块指针在数据池内获取相应的数据,并根据键值的顺序特征对第一特征块指针获取到的数据进行排序,最终形成与镜像文本中的键值顺序一致的第一遍历结果后,根据第一遍历结果在数据池内遍历与镜像文本的键值对应的数值,并将数值添加至相应的键值上,最终形成第二遍历结果,并根据所述第一遍历结果和所述第二遍历结果生成所述目标数据,将所述目标数据发送至所述终端设备,完成操作者在终端设备上的搜索。
[0039] 根据本发明第二方面提供的一种搜索引擎架构,包括:构建模块、遍历模块和判断模块;
[0040] 所述构建模块用于响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本,并根据镜像文本构建数据容器;
[0041] 所述遍历模块用于根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;
[0042] 所述判断模块用于若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。
[0043] 根据本发明第三方面提供的一种电子设备,包括:存储器和处理器;
[0044] 所述存储器和所述处理器通过总线完成相互间的通信;
[0045] 所述存储器存储有,能够在所述处理器上运行的计算机指令;
[0046] 所述处理器调用所述计算机程序指令时,能够执行上述的搜索引擎的搜索方法。
[0047] 根据本发明第四方面提供的一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述的搜索引擎的搜索方法的步骤。
[0048] 本发明中的上述一个或多个技术方案,至少具有如下技术效果之一:本发明提供的一种搜索引擎的搜索方法、搜索引擎架构、设备及存储介质,通过对搜索请求的数据流进行数据容器的构建,实现了通过数据容器快速遍历数据池,获取与搜索请求对应的目标数据,并将目标数据发送至终端设备,提升搜索的效率。
[0049] 本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0050] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0051] 图1是本发明提供的搜索引擎的搜索方法的流程示意图;
[0052] 图2是本发明提供的搜索引擎的构架结构示意图;
[0053] 图3是本发明提供的电子设备的结构示意图。
[0054] 附图标记:
[0055] 810:处理器;820:通信接口;830:存储器;840:通信总线。

具体实施方式

[0056] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0057] 下面结合说明书附图对本申请进行具体说明,方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。在本申请的描述中,除非另有说明,“至少一个”包括一个或多个。“多个”是指两个或两个以上。例如,A、B和C中的至少一个,包括:单独存在A、单独存在B、同时存在A和B、同时存在A和C、同时存在B和C,以及同时存在A、B和C。在本申请中,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
[0058] 在本发明的一些具体实施方案中,如图1所示,本方案提供一种搜索引擎的搜索方法,应用于服务器,所述服务器与多个终端设备连接,所述方法包括:
[0059] 响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本,并根据镜像文本构建数据容器;
[0060] 根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;
[0061] 若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。
[0062] 详细来说,本发明提出一种搜索引擎的搜索方法,用以解决现有技术中用户通过互联网进行特定目标搜索时,通常是用户在搜索框中输入关键字,并发起搜索指令之后,才会向服务端发起搜索请求,其搜索时存在响应速度较慢的缺陷,通过对搜索请求的数据流进行数据容器的构建,实现了通过数据容器快速遍历数据池,获取与搜索请求对应的目标数据,并将目标数据发送至终端设备,提升搜索的效率。
[0063] 根据本发明的一种实施方式,所述响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本的步骤中,具体包括:
[0064] 获取所述数据流中的数据脚本,提取所述数据脚本中的多个第一数据特征向量和多个第二数据特征向量,其中,所述第一数据特征向量指向所述数据脚本中的键值,所述第二数据特征向量指向所述数据脚本中与每个所述键值对应的数值;
[0065] 根据所述第一数据特征向量建立映射关系,形成与所述数据脚本中的所述第一数据特征向量一一对应的第一数据特征镜像向量;
[0066] 根据所述第二数据特征向量建立映射关系,形成与所述数据脚本中的所述第二数据特征向量一一对应的第二数据特征镜像向量;
[0067] 根据所述第一数据特征镜像向量和所述第二数据特征镜像向量构建所述镜像文本。
[0068] 具体来说,本实施例提供了一种根据所述搜索请求的数据流构建镜像文本的实施方式,将数据流中数据脚本按照键值和数值进行划分,并生成与键值一一对应的第一数据特征向量,以及与数值一一对应的第二数据特征向量,并根据第一数据特征向量构建映射的第一数据特征镜像向量,根据第二数据特征向量构建映射的第二数据特征镜像向量,进而根据第一数据特征镜像向量和第二数据特征镜像向量形成镜像文本。
[0069] 在一个应用场景中,数据文中是在终端设备输入的查询类搜索请求,而终端设备上则有相应的输入提示,例如在终端设备上提前预设有键值,操作者根据键值输入相应的数值,进而实现搜索,键值包括姓名、年龄、性别、事项等,数值则是李四、26、男、查询违章记录等,其中事项还可以是查询病例、查询住址、查询电话等,上述仅仅是进行示例性的举证,不代表穷尽相应的实施例。
[0070] 根据本发明的一种实施方式,所述根据镜像文本构建数据容器的步骤中,具体包括:
[0071] 提取所述镜像文本中的所述第一数据特征镜像向量,根据所述第一数据特征镜像向量构建第一数据镜像特征块;
[0072] 提取所述镜像文本中的所述第二数据特征镜像向量,根据所述第二数据特征镜像向量构建第二数据镜像特征块;
[0073] 根据所述第一数据镜像特征块和所述第二数据镜像特征块构建所述数据容器,其中,所述第一数据镜像特征块包括至少一个第一特征块指针,所述第一特征块指针与所述键值对应,所述第二数据镜像特征块包括至少一个第二特征块指针,所述第二特征块指针与所述数值对应。
[0074] 具体来说,本实施例提供了一种根据镜像文本构建数据容器的实施方式,所述第一数据镜像特征块和所述第二数据镜像特征块构建所述数据容器,实现了对所述第一数据镜像特征块和所述第二数据镜像特征块进行打包,形成在数据池内遍历的数据容器,提供了出色的灵活性、抗干扰性,并无须对根据服务端返回的搜索结果页的资源进行页面渲染,在遍历前对数据流进行前期处理,直接形成在遍历过程中能够直接调用的第一特征块指针和第二特征块指针,提升搜索效率,降低运算量。
[0075] 根据本发明的一种实施方式,所述根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据的步骤中,具体包括:
[0076] 根据每个所述第一特征块指针遍历所述数据池,并得到与所述镜像文本的键值对应的第一遍历结果;
[0077] 根据所述第一遍历结果和所述第二特征块指针遍历所述数据池,得到与所述镜像文本的数值对应的所述第二遍历结果;
[0078] 根据所述第一遍历结果和所述第二遍历结果生成遍历脚本文件,并将所述遍历脚本文件与所述镜像文本进行一致性检验。
[0079] 具体来说,本实施例提供了一种确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据的实施方式,通过先行对键值进行提取,降低了搜索任务量,当在数据池内并未遍历到相应的第一特征块指针时,则无法对第二特征块指针进行再次遍历,可直接判定在数据池内并无一致的数据。
[0080] 根据本发明的一种实施方式,所述根据每个所述第一特征块指针遍历所述数据池,并得到与所述镜像文本键值对应的第一遍历结果的步骤中,具体包括:
[0081] 获取所述镜像文本中,全部所述键值的顺序特征;
[0082] 所述第一数据镜像特征块中,所述第一特征块指针与所述键值的对应关系,为每个所述第一特征块指针分配所述键值在所述顺序特征中的序列号;
[0083] 根据每个所述第一特征块指针遍历所述数据池,得到在所述数据池内与所述第一特征块指针的遍历对应结果,并根据所述遍历对应结果和每个所述第一特征块指针的所述序列号生成所述第一遍历结果。
[0084] 具体来说,本实施例提供了一种得到与所述镜像文本键值对应的第一遍历结果的实施方式,通过获取镜像文本中的全部键值的顺序特征,根据第一特征块指针在数据池内获取相应的数据,并根据键值的顺序特征对第一特征块指针获取到的数据进行排序,最终形成与镜像文本中的键值顺序一致的第一遍历结果。
[0085] 需要说明的是,第一特征块指针在数据池内进行遍历过程中,并不按照键值的顺序特征进行,此种设备提升了第一特征块指针在数据池内的遍历响应速度,避免由于按照既定顺序进行遍历,而导致的搜索时长过长,效率低下的问题。
[0086] 根据本发明的一种实施方式,所述若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备的步骤中,具体包括:
[0087] 若在所述数据池内遍历到与所述镜像文本的键值对应的第一遍历结果,则根据所述第二特征块指针遍历所述数据池得到与所述镜像文本的数值对应的所述第二遍历结果;
[0088] 若在所述数据池内遍历到与所述数值对应的第二遍历结果,则判定在数据池内存在与所述镜像文本一致的所述目标数据,并根据所述第一遍历结果和所述第二遍历结果生成所述目标数据。
[0089] 具体来说,本实施例提供了一种根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备的实施方式,第一特征块指针在数据池内获取相应的数据,并根据键值的顺序特征对第一特征块指针获取到的数据进行排序,最终形成与镜像文本中的键值顺序一致的第一遍历结果后,根据第一遍历结果在数据池内遍历与镜像文本的键值对应的数值,并将数值添加至相应的键值上,最终形成第二遍历结果,并根据所述第一遍历结果和所述第二遍历结果获取所述目标数据,将所述目标数据发送至所述终端设备,完成操作者在终端设备上的搜索。
[0090] 在本发明的一些具体实施方案中,如图2所示,本方案提供一种搜索引擎架构,包括:构建模块、遍历模块和判断模块;
[0091] 所述构建模块用于响应于终端设备发送的搜索请求,根据所述搜索请求的数据流构建镜像文本,并根据镜像文本构建数据容器;
[0092] 所述遍历模块用于根据所述数据容器对数据池进行遍历,确定所述数据池内是否存在与所述数据容器中的所述镜像文本一致的目标数据;
[0093] 所述判断模块用于若在数据池内存在与所述镜像文本一致的所述目标数据,根据所述目标数据生成搜索结果,并将所述搜索结果推送至所述终端设备。
[0094] 详细来说,本发明还提出一种搜索引擎的搜索引擎架构,用以解决现有技术中用户通过互联网进行特定目标搜索时,通常是用户在搜索框中输入关键字,并发起搜索指令之后,才会向服务端发起搜索请求,其搜索时存在响应速度较慢的缺陷,通过对搜索请求的数据流进行数据容器的构建,实现了通过数据容器快速遍历数据池,获取与搜索请求对应的目标数据,并将目标数据发送至终端设备,提升搜索的效率。
[0095] 图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行搜索引擎的搜索方法。
[0096] 需要说明的是,本实施例中的电子设备在具体实现时可以为服务器,也可以为PC机,还可以为其他设备,只要其结构中包括如图3所示的处理器810、通信接口820、存储器830和通信总线840,其中处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信,且处理器810可以调用存储器830中的逻辑指令以执行上述方法即可。本实施例不对电子设备的具体实现形式进行限定。
[0097] 其中,服务器可以是单个服务器,也可以是一个服务器组。服务器组可以是集中式的,也可以是分布式的(例如,服务器可以是分布式系统)。在一些实施例中,服务器相对于终端,可以是本地的、也可以是远程的。例如,服务器可以经由网络访问存储在用户终端、数据库或其任意组合中的信息。作为另一示例,服务器可以直接连接到用户终端和数据库中的至少一个,以访问其中存储的信息和/或数据。在一些实施例中,服务器可以在云平台上实现;仅作为示例,云平台可以包括私有云、公有云、混合云、社区云(community cloud)、分布式云、跨云(inter‑cloud)、多云(multi‑cloud)等,或者它们的任意组合。在一些实施例中,服务器和用户终端可以在具有本申请实施例中的一个或多个组件的电子设备上实现。
[0098] 进一步地,网络可以用于信息和/或数据的交换。在一些实施例中,交互场景中的一个或多个组件(例如,服务器,用户终端和数据库)可以向其他组件发送信息和/或数据。在一些实施例中,网络可以是任何类型的有线或者无线网络,或者是他们的结合。仅作为示例,网络可以包括有线网络、无线网络、光纤网络、远程通信网络、内联网、因特网、局域网(Local AreaNetwork,LAN)、广域网(Wide Area Network,WAN)、无线局域网(Wireless Local AreaNetworks,WLAN)、城域网(Metropolitan AreaNetwork,MAN)、广域网(Wide AreaNetwork,WAN)、公共电话交换网(Public Switched Telephone Network,PSTN)、蓝牙网络、ZigBee网络、或近场通信(Near Field Communication,NFC)网络等,或其任意组合。
在一些实施例中,网络可以包括一个或多个网络接入点。例如,网络可以包括有线或无线网络接入点,例如基站和/或网络交换节点,交互场景的一个或多个组件可以通过该接入点连接到网络以交换数据和/或信息。
[0099] 此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0100] 进一步地,本发明实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。
[0101] 另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的搜索引擎的搜索方法。
[0102] 又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的搜索引擎的搜索方法。
[0103] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0104] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0105] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。