CN116894118B - 数据搜索方法、装置、设备及存储介质 - Google Patents
数据搜索方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116894118B CN116894118B CN202311157692.6A CN202311157692A CN116894118B CN 116894118 B CN116894118 B CN 116894118B CN 202311157692 A CN202311157692 A CN 202311157692A CN 116894118 B CN116894118 B CN 116894118B
- Authority
- CN
- China
- Prior art keywords
- search
- search result
- information
- content
- result
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000004590 computer program Methods 0.000 claims description 24
- 238000004458 analytical method Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 6
- 230000002123 temporal effect Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 11
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 238000007619 statistical method Methods 0.000 description 10
- 230000032683 aging Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000011218 segmentation Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—Query formulation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种数据搜索方法、装置、设备及存储介质,该方法可以应用于数据检索、云计算、云存储等领域,该方法包括:接收客户端发送的搜索请求,搜索请求包括搜索内容;从时新集群中召回搜索内容的第一预检索结果,并确定第一预检索结果的特征统计信息,时新集群包括最新搜索数据;基于预检索缓存所存储的预检索结果的特征统计信息,确定搜索内容的第二预检索结果的特征统计信息;基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性,并基于搜索内容的时效性,得到搜索内容的目标搜索结果。本申请可以准确确定出搜索内容的时效性,进而提高数据的搜索准确性和搜索速度,进而提升了数据搜索效果。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种数据搜索方法、装置、设备及存储介质。
背景技术
随着计算机、大数据和自媒体的快速发展,各种搜索引擎随之产生。用户可以在搜索引擎中搜索到各种各样需要的信息。
传统的数据搜索方法,用户在搜索引擎客户端上输入目标搜索词,并触发搜索选项后,客户端将目标搜索词发送给服务器。服务器基于目标搜索词进行搜索,得到目标搜索结果,并将搜索结果发送给客户端呈现给用户。但是,已有的数据搜索方法,无法准确确定搜索内容的时效性,进而导致搜索效果差。
发明内容
本申请提供一种数据搜索方法、装置、设备及存储介质,可以提高数据搜索的效果。
第一方面,本申请提供一种数据搜索方法,应用于服务器,包括:
接收客户端发送的搜索请求,所述搜索请求包括搜索内容;
从时新集群中召回所述搜索内容的第一预检索结果,并确定所述第一预检索结果的特征统计信息,所述时新集群包括最新搜索数据,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息;
基于预检索缓存所存储的预检索结果的特征统计信息,确定所述搜索内容的第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息;
基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定所述搜索内容的时效性,并基于所述搜索内容的时效性,得到所述搜索内容的目标搜索结果。
第二方面,本申请提供一种数据搜索方法,应用于客户端,包括:
响应于搜索内容的输入操作,发送搜索请求,所述搜索请求中包括所述搜索内容;
接收并显示所述搜索内容的目标搜索结果,
其中,所述目标搜索结果是基于所述搜索内容的时效性得到的,所述时效性是基于所述搜索内容的第一预检索结果的特征统计信息和第二预检索结果的特征统计信息确定的,所述第一预检索结果的特征统计信息是对从时新集群中召回所述搜索内容的第一预检索结果的特征进行统计得到,所述时新集群包括最新搜索数据,所述特征统计信息包括时间信息。
第三方面,本申请提供一种数据搜索装置,应用于服务器,包括:
接收单元,用于接收客户端发送的搜索请求,所述搜索请求包括搜索内容;
第一预检索单元,用于从时新集群中召回所述搜索内容的第一预检索结果,并确定所述第一预检索结果的特征统计信息,所述时新集群包括最新搜索数据,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息;
第二预检索单元,用于基于预检索缓存所存储的预检索结果的特征统计信息,确定所述搜索内容的第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息;
确定单元,用于基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定所述搜索内容的时效性,并基于所述搜索内容的时效性,得到所述搜索内容的目标搜索结果。
在一些实施例中,第一预检索单元,具体用于对所述搜索内容进行理解分析,得到所述搜索内容的第一先验理解信息;基于所述第一先验理解信息,从所述时新集群中召回所述第一预检索结果。
在一些实施例中,第一预检索单元,具体用于从所述时新集群所包括的最新搜索数据中,获取当前第一时间段内的第一搜索数据;基于所述第一先验理解信息,在所述第一搜索数据中进行搜索,得到所述第一预检索结果。
在一些实施例中,第一预检索单元,具体用于获取所述第一预检索结果的时间信息;基于所述第一预检索结果的时间信息,确定所述第一预检索结果的特征统计信息。
在一些实施例中,第二预检索单元,具体用于在预检索缓存中进行检索,若所述预检索缓存中包括与所述搜索内容匹配的预检索结果时,则从所述预检索缓存中获得所述第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息。
在一些实施例中,若在所述预检索缓存中未检索到与所述搜索内容匹配的预检索结果,或检索到的检索结果的数量不足时,第二预检索单元,具体用于基于所述搜索请求进行垂直搜索,得到所述第二预检索结果;确定所述第二预检索结果的特征统计信息。
在一些实施例中,第二预检索单元,具体用于对所述搜索内容进行理解分析,得到所述搜索内容的第一先验理解信息;基于所述第一先验理解信息进行垂直搜索,得到所述第二预检索结果。
在一些实施例中,第二预检索单元,具体用于基于所述第一先验理解信息,在N条链路上进行并行垂直搜索,得到所述第二预检索结果,所述N为正整数。
在一些实施例中,第二预检索单元,具体用于对于所述N条链路中的每一条链路,基于所述第一先验理解信息,从所述链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到所述链路召回的第二预检索结果。
在一些实施例中,第二预检索单元,具体用于基于所述第一先验理解信息,从所述实时流索引集群所包括的全部数据和所述优质索引集群包括的部分数据中进行垂直搜索,得到所述链路召回的第二预检索结果。
在一些实施例中,第二预检索单元,具体用于获取所述第二预检索结果的时间信息;基于所述第二预检索结果的时间信息,确定所述第二预检索结果的特征统计信息。
在一些实施例中,第二预检索单元,还用于将垂直搜索得到的所述第二预检索结果的特征统计信息,存储至所述预检索缓存中。
在一些实施例中,确定单元,具体用于基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定各预检索结果在时间上的分布信息;基于所述分布信息,确定所述搜索内容的时效性。
在一些实施例中,确定单元,具体用于若所述分布信息中当前时间段内的一时刻上预检索结果的数量增速大于预设值时,则确定所述搜索内容的时效性为突发时效性。
在一些实施例中,确定单元,具体用于基于所述搜索内容的时效性和所述第一先验理解信息,确定所述搜索内容的第二先验理解信息;基于所述第二先验理解信息,得到所述搜索内容的目标搜索结果。
在一些实施例中,确定单元,具体用于基于所述第二先验理解信息、所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,得到所述搜索内容的目标搜索结果。
第四方面,本申请提供一种数据搜索装置,应用于客户端,包括:
发送单元,用于响应于搜索内容的输入操作,发送搜索请求,所述搜索请求中包括所述搜索内容;
接收单元,用于接收并显示所述搜索内容的目标搜索结果,
其中,所述目标搜索结果是基于所述搜索内容的时效性得到的,所述时效性是基于所述搜索内容的第一预检索结果的特征统计信息和第二预检索结果的特征统计信息确定的,所述第一预检索结果的特征统计信息是对从时新集群中召回所述搜索内容的第一预检索结果的特征进行统计得到,所述时新集群包括最新搜索数据,所述特征统计信息包括时间信息。
第五方面,提供了一种电子设备,包括处理器和存储器。所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行上述第一方面或其各实现方式中的方法。
第六方面,提供了一种芯片,用于实现上述第一方面中任一方面或其各实现方式中的方法。具体地,所述芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片的设备执行如上述第一方面中任一方面或其各实现方式中的方法。
第七方面,提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行上述第一方面中任一方面或其各实现方式中的方法。
第八方面,提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令使得计算机执行上述第一方面中任一方面或其各实现方式中的方法。
第九方面,提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面中任一方面或其各实现方式中的方法。
综上,本申请实施例在数据搜索时,服务器接收客户端发送的搜索请求,搜索请求包括搜索内容;从时新集群中召回搜索内容的第一预检索结果,并确定第一预检索结果的特征统计信息,时新集群包括最新搜索数据,该第一预检索结果的特征统计信息包括第一预检索结果的时间信息;基于预检索缓存所存储的预检索结果的特征统计信息,确定搜索内容的第二预检索结果的特征统计信息,预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,第二预检索结果的特征统计信息包括第二预检索结果的时间信息;基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性,并基于搜索内容的时效性,得到搜索内容的目标搜索结果。本申请实施例在预检索时,单独部署时新集群,以从时新集群中及时找回最新的第一预检索结果,同时并行召回第二预检索结果,进而基于并行召回的第一预检索结果和第二预检索结果的特征统计信息,确定搜索内容的时效性,这样基于搜索内容的时效性进行后续数据搜索,可以提高数据的搜索准确性和搜索速度,进而提升了数据搜索效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为目前的垂直搜索示意图;
图2为本申请实施例涉及的一种实施环境示意图;
图3为本申请一实施例提供的数据搜索方法的流程示意图;
图4为本申请的预检索示意图;
图5为实时召回链路示意图;
图6为实时召回和预检索召回的示意图;
图7为预检索召回链路示意图;
图8为预检索结果的数量和时间分布示意图;
图9为本申请一实施例提供的数据搜索方法的流程示意图;
图10为本申请涉及的预检索的另一原理示意图;
图11是本申请一实施例提供的数据搜索装置的示意性框图;
图12是本申请一实施例提供的数据搜索装置的示意性框图;
图13是本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够除了在这里图示或描述的那些以外的顺序实施。在本发明实施例中,“与A对应的B”表示B与A相关联。在一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。
本申请提出的技术方案,可应用于数据搜索、大数据、云计算等技术领域,用于提高数据搜索的准确率和时间成本,提升数据搜索效果。
下面对本申请实施例涉及的相关概念进行介绍。
L1:单索引分片倒排求交、粗计算,主要为内容(doc)独立计算、搜索词(query)相关、一般考虑命中信息。
L2:单索引分片粗计算,主要为doc独立计算、query相关、考虑更多命中位置、命中距离、特征打分等。
L3:单集群粗计算,也称粗排,主要为内容列表中的内容进行与query相关的打分。
L4:精排,一般为单业务多集群、多源召回结果融合的全局排序、query相关。
L5:多业务结果混排。
Mixer:搜索引擎后台接入整合服务,负责整体流程调度,包括发起query理解服务、各垂搜业务结果召回、多业务结果混排等。不同搜索引擎名称不完全一致。
垂搜mixer:垂搜业务接入服务,负责对垂搜业务搜索流程调度。不同搜索引擎名称不完全一致。
垂直搜索(简称垂搜):垂直搜索是针对某一个行业的专业搜索,是搜索引擎的细分和延伸,是根据特定用户的特定搜索请求,对网站(页)库中的某类专门信息进行深度挖掘与整合后,再以某种形式将结果返回给用户。
Fob:实时流索引集群,支持数据实时增量入库,千万到亿级别。
Gob:优质索引集群,十亿级别。
Wob:中长尾索引集群,百亿级别。
目前的搜索引擎完成一次搜索的流程一般如图1所示。客户端将搜索请求发送给服务器。服务器对搜索引擎经过初始化,搜索query理解分析,得到query的检索语法树、query分词权重、非必留、紧密度、query业务意图等信息。接着,下发到有意图的的垂搜并行进行垂搜结果召回。各垂搜经过索引求交召回、垂搜粗排、垂搜精排等过程,得到垂搜排序后的结果列表。对结果列表再进行多业务垂搜结果的混排,得到最终结果列表,发送给客户端进行渲染后返回给用户。各垂搜进行召回时,如果查索引求交召回(一查)后结果数不足,可以根据query理解信息如分词权重、非必留、紧密度等进行分词丢弃后进行二次检索(二查)。
由上述可知,上述搜索方法未考虑搜索内容的时效性,使得搜索结果不准确,且搜索耗时长,进而导致搜索效果差。
为了解决上述技术问题,本申请实施例在数据搜索时,并行两路进行预检索,一路预检索是从包括最新搜索数据的时新集群中进行搜索,获得最新的第一预检索结果的特征统计信息,另一路预检索是确定搜索内容的第二预检索结果的特征统计信息,其中第一预检索结果的特征统计信息和第二预检索结果的特征统计信息均包括预检索结果的时间信息。接着,基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息中的时间信息,确定搜索内容的时效性,进而基于搜索内容的时效性、第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的目标搜索结果。本申请实施例在预检索时,单独部署时新集群,以从时新集群中及时找回最新的第一预检索结果,同时并行召回第二预检索结果,进而基于并行召回的第一预检索结果和第二预检索结果的特征统计信息,确定搜索内容的时效性,例如确定搜索内容是否为突发热点事件,这样基于搜索内容的时效性进行后续搜索时,可以提高数据的搜索准确性和搜索速度,进而提升了数据搜索效果。
下面对本申请实施例的实施环境进行介绍。
图2为本申请实施例涉及的一种实施环境示意图,包括客户端101和服务器102。客户端101可以按照在任意终端设备上,客户端101与服务器102通信连接,例如通过WiFi等无线或有线的方式通信连接。
本申请实施例的客户端101可以理解为搜索引擎的客户端。对象可以在该客户端101上输入搜索内容,例如输入搜索词query。客户端响应于对象输入的搜索内容,向服务器102发送搜索请求,该搜索请求中包括搜索内容。服务器102响应于客户端101发送的搜索请求,进行搜索得到搜索内容的搜索结果,并将搜索结果发送给客户端101进行渲染,呈现给对象。
在本申请实施例中,为了提高数据的搜索效果,服务器102在数据搜索时,首先进行预检索,确定搜索内容的时效性和预检索结果的特征统计信息。具体的,从时新集群中召回搜索内容的第一预检索结果,并确定第一预检索结果的特征统计信息,例如确定第一预检索结果的时间信息、质量分数、召回量等信息,同时并行确定第二预检索结果的特征统计信息,进而基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息中的时间信息,确定搜索内容的时效性。最后,基于搜索内容的时效性,对搜索内容进行再次检索,得到搜索内容的最终搜索结果,并将该最终搜索结果发送给客户端进行显示。这样可以提高数据的搜索准确性和搜索速度,进而提升了数据搜索效果。
在一些实施例中,服务器102在检索的过程会访问数据库,得到搜索内容的检索结果。数据库(Database),简而言之可视为电子化的文件柜,即存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。数据库管理***(英语:Database Management System,简称DBMS)是为管理数据库而设计的电脑软件***,一般具有存储、截取、安全保障、备份等基础功能。数据库管理***可以依据它所支持的数据库模型来作分类,例如关系式、XML(Extensible Markup Language,即可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如SQL(结构化查询语言(Structured Query Language)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。
在一些实施例中,服务器102在检索的过程会访问私有云或公有云,得到搜索内容的检索结果。私有云(Private Cloud)是将云基础设施与软硬件资源创建在防火墙内,以供机构或企业内各部门共享数据中心内的资源。创建私有云,除了硬件资源外,一般还有云设备(IaaS,Infrastructure as a Service,基础设施即服务)软件。私有云计算同样包含云硬件、云平台、云服务三个层次。不同的是,云硬件是用户自己的个人电脑或服务器,而非云计算厂商的数据中心。云计算厂商构建数据中心的目的是为千百万用户提供公共云服务,因此需要拥有几十上百万台服务器。私有云计算,对个人来说只服务于亲朋好友,对企业来说只服务于本企业员工以及本企业的客户和供应商,因此个人或企业自己的个人电脑或服务器已经足够用来提供云服务。公有云(Public Cloud)通常指第三方提供商为用户提供的能够使用的云,公有云一般可通过 Internet 使用,可能是免费或成本低廉的,公有云的核心属性是共享资源服务。这种云有许多实例,可在当今整个开放的公有网络中提供服务。
本申请实施例对终端设备的具体类型不做限制。在一些实施例中,终端设备可包括但不限于:手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器、可穿戴智能设备、医疗设备等等。设备往往配置有显示装置,显示装置也可为显示器、显示屏、触摸屏等等,触摸屏也可为触控屏、触控面板等等。
在一些实施例中,上述服务器102可以是一台或多台。服务器是多台时,存在至少两台服务器用于提供不同的服务,和/或,存在至少两台服务器用于提供相同的服务,比如以负载均衡方式提供同一种服务,本申请实施例对此不加以限定。其中,上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。服务器102也可以成为区块链的节点。
需要说明的是,本申请实施例的应用场景包括但不限于图1所示。
下面通过一些实施例对本申请实施例的技术方案进行详细说明。下面这几个实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图3为本申请一实施例提供的数据搜索方法的流程示意图。本申请实施例的执行主体为具有数据搜索功能的装置,例如为数据搜索装置。在一些实施例中,该数据搜索装置可以为图2中的服务器。为了便于描述,本申请实施例以执行主体为服务器为例进行说明。
下面结合图3,对本申请实施例的数据搜索方法进行介绍。
如图3所示,本申请实施例的数据搜索方法包括:
S101、服务器接收客户端发送的搜索请求。
该搜索请求包括搜索内容。
在本申请实施例中,终端设备上安装有客户端,本申请实施例对该客户端的具体类型不做限制,可以为任意具有搜索功能的客户端。
本申请实施例的数据搜索主要包括两部分,第一部分为预检索部分,第二部分为再次检索部分。本申请实施例主要涉及预检索部分。在本申请实施例中,通过预检索,得到搜索内容的时效性,进而基于该时效性,进行后续的再次检索,例如进行后续的一查、二查召回等。在本申请实施例中,由于通过预检索准确确定出搜索内容的时效性,这样在后续的再次检索时,可以基于搜索内容的时效性进行准确检索,例如若确定该搜索内容为刚出现的热度内容时,则在后续检索中着重搜索最新的搜索数据,以实现对搜索结果的准确和快速召回,进而提升数据的搜索速度和准确性。
在本申请实施例中,时效性用于指示用户对搜索结果新旧程度的感知。用户的搜索需求(例如搜索内容)显式或隐式地带有一定的时效性信息,例如“最近上映的电影”带有显式的时效性词语“最近”,再例如“城市A的地方美食”没有严格的时间限制。本申请实施例在预检索阶段,准确确定出搜索内容的时效性,这样在后续召回数据时可以针对性地做一些过滤或者在排序时进行时效性调权,以提高数据搜索的准确性和效率。
示例性的,搜索内容的时效性主要包括以下几种:无时效性、弱时效性、中时效性、强时效性和突发时效性。
其中突发时效性是指刚出现短时间内社会热点内容。无时效性是指搜索内容与时间无关,不是当前热点内容。弱时效性是指搜索内容与时间相关性较弱,中时效性是指搜索内容与时间有一定相关性,但相关性一般。强时效性是指搜索内容与时间有强相关性,可能当前热点内容。
在本申请实施例中,如图4所示,对象在该客户端的搜索框内输入想搜索的内容,并触发搜索选项。客户端响应于对象对搜索选项的触发,向服务器发送搜索请求,该搜索请求包括对象在搜索框内输入的搜索内容。该搜索内容可以理解为上述query。
在一些实施例中,该搜索请求中还包括对象的其他特征信息,例如对象的账号信息、位置信息等。
S102、服务器从时新集群中召回搜索内容的第一预检索结果,并确定第一预检索结果的特征统计信息。
其中,时新集群包括最新搜索数据,特征统计信息包括时间信息。
本申请实施例的S102和S103可以理解为预检索的两个步骤。本申请实施例对S102与S103的具体实现顺序不做限制,在一些实施例中,上述S102可以在S103之前执行,也可以在S103之后执行,或者与S103并行执行。
在一些实施例中,为了提高数据预检索的速度,则上述S102与S103并行执行。也就是说,如图4所示,本申请实施例的预检索召回链路包括两条并行链路,第一召回链路可以理解为实时召回链路,用于召回搜索内容的第一预检索结果的特征统计信息,第二召回链路用于召回搜索内容的第二预检索结果的特征统计信息。
本申请实施例中,预检索结果的特征统计信息可以理解为对预检索得到的结果的各特征进行统计分析。例如对预检索得到的结果的时间信息、质量分数、召回次数等信息进行统计,得到预检索结果的特征统计信息。也就是说,本申请实施例的预检索结果统计信息包括预检索结果的时间信息、质量分数、召回次数等的统计信息。
如图4所示,在本申请实施例中,为了提高对搜索内容时效性的准确确定,则本申请实施例中,单独部署了时新集群,该时新集群中的数据实时更新,用于存储最新一段时间,例如几小时到一天的最新搜索数据。
示例性的,表1为时新集群的索引划分示意图:
表1
在本申请实施例中,服务器接收到客户端发送的搜索请求后,则服务器启动两条召回链路,并行召回搜索内容的预检索结果。具体的,通过实时召回链路,从时新集群所包括的最新数据中检索与搜索内容匹配的预检索结果,为了便于描述,将该检索结果,记为第一检索结果。在本申请实施例中,第一检索结果可以理解为包括多个检索结果的列表。
在一些实施例中,为了实现对第一预检索结果的准确召回,则服务器在基于搜索内容在时新集群中进行预检索之前,首先对搜索内容进行预处理。此时,服务器从时新集群中召回所述搜索内容的第一预检索结果包括如下S102-A1和S102-A2的步骤:
S102-A1、对搜索内容进行理解分析,得到搜索内容的第一先验理解信息;
S102-A2、基于第一先验理解信息,从时新集群中召回第一预检索结果。
在本申请实施例中,服务器基于对象输入的搜索内容,从时新集群中召回第一预检索结果时,首先对搜索内容进行理解分析,得到该搜索内容的第一先验理解信息。示例性的,该第一先验理解信息包括:搜索内容的检索语法树、分词、分词权重、紧密度、必非留等用于指导索引的信息,以及根据搜索内容本身事先挖掘的时效性、地域性等属性信息,以及搜索内容的业务意图分类等信息。上述信息中的部分或全部通常是根据历史搜索日志、外部挖掘的搜索内容相关内容经过分类、语义模型构建得到的。
接着,服务器基于上述分析得到的搜索内容的第一先验理解信息后,基于搜索内容的第一先验理解信息,从时新集群中召回搜索内容的第一预检索结果。
在一些实施例中,本申请实施例的时新集群中可能包括不同业务的最新数据,例如包括网页、文章、视频号、图片等不同业务的最新数据。此时,服务器在从时新集群中召回第一预检索结果时,需要确定目标业务范围,进而从时新集群的目标业务范围内的最新数据中,召回第一预检索结果。
本申请实施例对确定目标业务范围的具体方式不做限制。
在一些实施例中,目标业务范围为默认业务范围。
在一些实施例中,对象在发起搜索时,可以设置业务范围,例如对象在发起搜索,选择网页作为业务范围。此时客户端向服务器发送的搜索请求中还包括对象所选择的业务范围的标识信息,这样服务器可以基于搜索请求中包括的业务范围的标识信息,确定出目标业务范围,进而在目标业务范围内进行搜索。
在一些实施例中,本申请实施例的目标业务范围与搜索场景对应,例如若对象在网页环境中发起搜索时,则上述目标业务范围为网页,若对象在视频号界面发起搜索时,则上述目标业务范围为视频。也就是说,该目标业务范围与发起该搜索请求的搜索场景相关,即属于该搜索场景能够涉及到的业务范围的全部或一部分。也就是说,在搜索场景涉及的业务范围有多个时,目标业务范围可以是一个,也可以是多个,本申请对此不做限定。
在一种示例中,如图5所示,时新集群中所包括的最新搜索数据包括文章数据和视频数据。服务器在具体召回时,通过文章链路,基于第一先验理解信息,从时新集群所包括的文章数据中,召回与搜索内容匹配的文章预检索结果,并通过视频链路,基于第一先验理解信息,从时新集群所包括的视频数据中,召回与搜索内容匹配的视频预检索结果,进而得到搜索内容的第一预检索结果。
在本申请实施例的一种可能的实现方式中,服务器在进行数据搜索时,通过多层服务进行预检索结果召回。例如,服务器通过L5层、L4层、L3层、L2层和L1层的服务,从时新集群中召回第一预检索结果。
在一些实施例中,服务器在从时新集群中召回第一预检索结果时,可以控制只向L3层或L4层下发原串检索,不对搜索内容进行纠错、改写等扩展。
在一些实施例中,服务器从时新集群中召回第一预检索结果时,可以对搜索内容进行纠错、改写等扩展,进而控制将扩展后的检索串下发给L3层或L4层进行预检索。
在本申请实施例中,基于第一先验理解信息,从时新集群中召回第一预检索结果至少包括如下几种情况:
第一种情况是,若时新集群中所包括的最新搜索数据对应的时效信息与第一预检索结果的时效信息一致时,则服务器基于搜索内容的第一先验理解信息,直接从时序集群所包括的所有最新搜索数据或所有目标业务范围内的最新搜索数据中,召回第一预检索结果。例如,时新集群中包括最新6个小时内的搜索数据,而召回第一预检索结果时要求召回最新的6个小时内的检索结果。这样,服务器可以从时序集群所包括的所有最新搜索数据中或所有目标业务范围内的最新搜索数据中,召回第一预检索结果。
第二种情况是,若时新集群中所包括的最新搜索数据对应的时效信息与第一预检索结果的时效信息不一致时,此时,上述S102-A2包括如下S102-A21和S102-A22的步骤:
S102-A21、从时新集群所包括的最新搜索数据中,获取当前第一时间段内的第一搜索数据;
S102-A22、基于第一先验理解信息,在第一搜索数据中进行搜索,得到第一预检索结果。
在该情况2中,若时新集群中所包括的最新搜索数据对应的时效信息与第一预检索结果的时效信息不一致,例如第一预检索结果的时效信息为当前第一时间段。此时,服务器首先从时新集群所包括的最新搜索数据中,获取当前第一时间段内的第一搜索数据,进而基于第一先验理解信息,在第一搜索数据中进行搜索,得到第一预检索结果。
举例说明,假设时新集群中保存当前12小时内的搜索数据,而进行第一预检索时,要求在当前6小时内的最新搜索数据中进行检索。需要说明的是,上述当前第一时间段可以为事先设定的,或者为默认的。基于此,服务器首先从时新集群所包括的最新搜索数据中,获取当前6小时内的第一搜索数据,进而基于第一先验理解信息,在当前6小时内的第一搜索数据中进行搜索,得到第一预检索结果。
服务器基于上述步骤,从时新集群中召回搜索内容的第一预检索结果后,对该第一预检索结果的相关特征数据进行统计分析,得到该第一预检索结果的特征统计信息。
在一种示例中,若第一预检索结果的特征统计信息包括时间信息时,则服务器获取第一预检索结果的时间信息,进而基于第一预检索结果的时间信息,确定第一预检索结果的特征统计信息。
本申请实施例对获取第一预检索结果的时间信息的具体方式不做限制。
例如,第一预检索结果的时间信息包括该第一预检索结果的发布时间,该发布时间作为第一预检索结果的低层索引信息,保存在时新集群中。这样服务器可以从时新集群中获得该第一预检索结果的发布时间。
再例如,第一预检索结果的时间信息包括该第一预检索结果的内容所包括的时间信息。这样服务器对第一预检索结果的内容进行分析,提取出第一预检索结果的内容所包括的时间信息,作为第一预检索结果的时间信息的一部分。
再例如,第一预检索结果的时间信息还包括L3层的相关时效信息,例如第一预检索结果作为热点时的相关时间信息等等。
在本申请实施例中,服务器还可以对第一预检索结果的其他特征进行统计,例如对第一预检索结果的质量分数、召回次数等信息进行统计,得到包括更多细节的第一预检索结果的特征统计信息,用于后续再次检索。
S103、服务器基于预检索缓存所存储的预检索结果的特征统计信息,确定搜索内容的第二预检索结果的特征统计信息。
其中,预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,第二预检索结果的特征统计信息包括第二预检索结果的时间信息。
在本申请实施例中,服务器在从时新集群中召回搜索内容的第一预检索结果的同时,确定搜索内容的第二预检索结果的特征统计信息。
在该实施例中,为了进一步提高预检索搜索,则本申请实施例部署了预检索缓存,该预检索缓存用于缓存最近垂直搜索得到的预检索结果的特征统计信息。
也就是说,本申请实施例利用当前搜索内容下索引分布情况,优化搜索内容的理解分析能力,从性能优化的角度设计了预查询缓存。以搜一搜为例,整体***框架如图6所示,预检索缓存的key设计为[搜索内容]_[搜索内容的地域],value为预检索统计特征,其中搜索内容的地域为问题理解服务(QP)得到的先验理解信息中识别到的搜索内容的地域属性。如图6所示,具体过程为,服务器中的主服务(mainmixer)调用问题理解服务(QP),获取搜索内容的先验理解信息。接着,主服务(mainmixer)调预检索服务(PP)进行预检索。预检索服务(PP)先查预检索缓存,若命中预检索缓存,直接使用预检索缓存中的结果作为第二预检索结果的特征统计信息返回。若不命中预检索缓存,则调用通搜(即文章)与视频号垂搜进行第二预检索结果的召回,进而预检索服务(PP)收集文章和视频号预检索召回的第二预检索结果的特征,进行统计计算分析,得到搜索内容级的统计特征信息,返回到主服务(mainmixer)。
在一些实施例中,上述S103包括如下S103-A的步骤:
S103-A、在预检索缓存中进行检索,若预检索缓存中包括与搜索内容匹配的预检索结果时,则从预检索缓存中获得第二预检索结果的特征统计信息,预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息。
在一种可能的实现方式中,上述预检索缓存为搜索请求对应的目标账号的预检索缓存,也就是说,本申请实施例为不同的用户(即目标账号)设置不同的预检索缓存,用于缓存不同用户的历史垂直搜索的预检索结果的特征统计信息。例如,对于用户A设置一个预检索缓存1,该预检索缓存1用户缓存用户A在最近时间段内进行垂直搜索得到的预检索结果的特征统计信息。对于用户B设置一个预检索缓存2,该预检索缓存2用户缓存用户B在最近时间段内进行垂直搜索得到的预检索结果的特征统计信息。也就是说,目标账号对应的预检索缓存用户存储目标账号的最新垂直搜索得到的预检索结果的特征统计信息。
举例说明,对于用户A,预检索缓存1的初始状态为空。在时间1,用户A在客户端的搜索界面输入搜索内容1,客户端将该搜索内容1携带在搜索请求中发送给服务器。服务器接收到该搜索请求后,进行预检索,并行确定搜索内容1的第一预检索结果和第二预检索结果的特征统计信息。其中第一预检索结果的特征统计信息的确定过程参照上述S102的具体描述。在确定第二预检索结果的特征统计信息时,服务器首先在预检索缓存1中进行检索,此时预检索缓存1为空,无法从该预检索缓存1中检索到搜索内容1的第二预检索结果的特征统计信息。此时,服务器通过垂直搜索的方式,召回搜索内容1的第二预检索结果,并对第二预检索结果进行分析,得到第二预检索结果的特征统计信息,将该第二预检索结果的特征统计信息存入该预检索缓存1中。在时间2,用户A在客户端的搜索界面输入搜索内容2,客户端将该搜索内容2携带在搜索请求中发送给服务器。服务器接收到该搜索请求后,进行预检索,并行确定搜索内容2的第一预检索结果和第二预检索结果的特征统计信息。其中第一预检索结果的特征统计信息的确定过程参照上述S102的具体描述。在确定第二预检索结果的特征统计信息时,服务器首先在预检索缓存1中进行检索,此时预检索缓存1中不包括与搜索内容2匹配的预检索结果,无法从该预检索缓存1中检索到搜索内容2的第二预检索结果的特征统计信息。此时,服务器通过垂直搜索的方式,召回搜索内容2的第二预检索结果,并对第二预检索结果进行分析,得到第二预检索结果的特征统计信息,将该第二预检索结果的特征统计信息存入该预检索缓存1中。依次类推,在时间t,用户A在客户端的搜索界面输入搜索内容n,客户端将该搜索内容n携带在搜索请求中发送给服务器。服务器接收到该搜索请求后,进行预检索,并行确定搜索内容n的第一预检索结果和第二预检索结果的特征统计信息。其中第一预检索结果的特征统计信息的确定过程参照上述S102的具体描述。在确定第二预检索结果的特征统计信息时,服务器首先在预检索缓存1中进行检索,此时预检索缓存1中包括与搜索内容n匹配的预检索结果,此时服务器直接从预检索缓存中召回搜索内容n的第二预检索结果的特征统计信息。
由上述可知,在本申请实施例中通过设置预检索缓存,在确定搜索内容的第二预检索结果的特征统计信息时,直接从预检索缓存中召回,无需进行垂直搜索,以及特征统计信息的计算统计,进而大大减少了预检索的复杂度,有效提升预检索的速度,进而保证在不增加搜索时间的基础上,提高了搜索的准确性。
在一些实施例中,若服务器在预检索缓存中未检索到与搜索内容匹配的预检索结果,或检索到的检索结果的数量不足,例如预设的第二预检索结果的个数为10个,而在预检索缓存中召回5个第二预检索结果时,则本申请实施例的方法还包括如下步骤S103-B和S103-C:
S103-B、基于搜索请求进行垂直搜索,得到第二预检索结果;
S103-C、确定第二预检索结果的特征统计信息。
在本申请实施例中,若服务器未命中预检索缓存,或者命中预检索缓存,但是在预检索缓存中检索到的检索结果的数目不足。此时,服务器通过垂直搜索的方法,在目标搜索范围内,检索与搜索内容匹配的数据,进而召回搜索内容的第二预检索结果,接着对第二预检索结果进行分析,确定第二预检索结果的特征统计信息。
在一些实施例中,服务器在基于搜索请求进行垂直搜索,得到第二预检索结果时,首先对搜索请求所包括的搜索内容进行分析处理,此时上述S103-B包括如下S103-B1和S103-B2的步骤:
S103-B1、对搜索内容进行理解分析,得到搜索内容的第一先验理解信息;
S103-B2、基于第一先验理解信息进行垂直搜索,得到第二预检索结果。
在该实施例中,服务器通过垂直搜索召回搜索内容的第二预检索结果时,首先对搜索请求所包括的搜索内容进行理解分析,例如进行检索语法树的构建、进行分词、确定分词的权重、确定非必留的字词、确定紧密度、预估搜索内容的一个时效性、以及预估搜索内容的业务意图等信息,得到搜索内容的先验理解信息,为了便于描述,将该先验理解信息记为第一先验理解信息。
接着,服务器基于该第一先验理解信息进行垂直搜索,召回搜索内容的第二预检索结果。
在一些实施例中,为了进一步提高垂直搜索的速度,则本申请实施例可以基于第一先验理解信息,在N条链路上进行并行垂直搜索,得到第二预检索结果,N为正整数。也就是说,在本申请实施例中,服务器为了进一步提高预检索的速度,则在进行垂直搜索得到搜索内容的第二预检索结果时,通过多条并行链路,例如N条并行链路,并行进行垂直搜索,以快速召回搜索内容的第二预检索结果。
举例说明,假设搜索请求对应的目标搜索范围包括文章和视频,则服务器通过文章链路,进行垂直搜索,得到文章检索结果。同时,服务器通过视频链路,进行垂直搜索,得到视频检索结果。
本申请实施例对垂直搜索的搜索范围不做限制。
在一些实施例中,本申请实施例的垂直搜索的搜索范围包括实时流索引集群和优质索引集群,此时,服务器通过N条链路并行进行垂直搜索时,对于N条链路中的每一条链路,基于第一先验理解信息,从该链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到该链路召回的第二预检索结果。
举例说明,如图7所示,N条链路包括文章链路和视频链路。服务器中的主服务(mainmixer)首先调用问题理解服务QP对搜索内容进行分析理解,得到搜索内容的第一先验理解信息。接着,服务器调用预检索服务(PP)向L4层下发搜索请求。文章和视频L4层的业务接收到搜索请求后,不做作额外业务逻辑处理,直接请求L3层获取第二预检索结果。文章和视频L3层收到搜索请求后,控制在文章链路对应的实时流索引集群(fob)和优质索引集群(gob)中进行垂直搜索,得到文章链路召回的第二预检索结果,同时,控制在视频链路对应的实时流索引集群(fob)和优质索引集群(gob)中进行垂直搜索,得到视频链路召回的第二预检索结果。最后,文章和视频L3层拿到第二预检索结果列表,带上底层索引特征(包括第二预检索结果的时间),并计算部分L3层特征(包括时间相关信息),将第二预检索结果列表和相关特征一起经过L4层服务返回预检索服务(PP)。
如图7所示,L4层的服务包括文章整合服务(docmixer)、文章主代理服务(masterbroker)、视频号服务(videomixer)、最小视频代理服务(minivideoproxy),L3、L2和L1层的服务包括搜索器、统计分析服务(Statistical Analysis System,简称SAS)、索引存取服务(indexAccess)、查找器等。
在一些实施例中,在基于第一先验理解信息,从链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到链路召回的第二预检索结果时,可以对整个实时流索引集群和优质索引集群中的数据进行垂直搜索,得到该链路召回的第二预检索结果。
在一些实施例中,在基于第一先验理解信息,从链路对应的实时流索引集群所包括的全部数据和优质索引集群包括的部分数据中进行垂直搜索,得到链路召回的第二预检索结果。例如,从实时流索引集群所包括的全部数据和优质索引集群包括的10%数据中进行垂直搜索,得到链路召回的第二预检索结果。
接着,服务器对召回的第二预检索结果的相关特征进行统计分析,得到第二预检索结果的特征统计信息。
示例性的,服务器获取第二预检索结果的时间信息,基于第二预检索结果的时间信息,确定第二预检索结果的特征统计信息。例如,对第二预检索结果的时间信息进行统计分析,确定第二预检索结果的时间分布信息,进而将该时间分析信息作为第二预检索结果的特性统计信息的一部分。
在一些实施例中,服务器除了对第二预检索结果的时间信息进行统计分析外,还对第二预检索结果的质量分数、浏览量(或召回量)等信息进行统计分析,得到第二预检索结果的特征统计信息。
在一种示例中,本申请实施例的第一预检索结果的统计信息和第二预检索结果的统计特征信息还包括第一预检索结果列表和第二预检索结果列表。
在一些实施例中,服务器对垂直搜索得到第二预检索结果进行统计分析,得到第二预检索结果的特征统计信息后,除了基于该第二预检索结果的统计特征信息执行后续S104的步骤外,还将该第二预检索结果的特性统计信息存储至预检索缓存中,用于其他的内容的预检索。
在本申请实施例中,服务器在进行数据搜索时,首先进行预检索,具体的如上所述并行两路,确定出第一预检索结果的特征统计信息以及第二预检索结果的特征统计信息,接着,执行如下S104的步骤。
S104、服务器基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性,并基于搜索内容的时效性,得到搜索内容的目标搜索结果。
服务器基于上述S102和S103的步骤,确定出第一预检索结果的特征统计信息以及第二预检索结果的特征统计信息,进而基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性,实现对搜索内容时效性的准确确定,基于该准确确定的时效性进行搜索时,可以提高数据的搜索准确性。
本申请实施例对服务器基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性的具体方式不做限制。
由上述可知,第一预检索结果的特征统计信息和第二预检索结果的特征统计信息均包括时间信息,进而基于该时间信息,确定出搜索内容的时效性。
在一些实施例中,若服务器基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,基于搜索内容的第一预检索结果的个数和第二预检索结果的个数,确定搜索内容的时效性。例如,第一预检索结果的个数远远大于第二预检索结果的个数,由于第一预检索结果是服务器从时新集群所包括的最新搜索数据中召回的,此时则可以确定搜索内容最新突发热点内容,进而确定搜索内容的时效性为突发时效性。
在一些实施例中,上述S104中基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性包括如下S104-A和S104-B的步骤:
S104-A、基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定各预检索结果在时间上的分布信息;
S104-B、基于分布信息,确定搜索内容的时效性。
在该实现方式中,服务器第一预检索结果的特征统计信息和第二预检索结果的特征统计信息分别包括的时间信息,确定第一预检索结果和第二预检索结果中各预检索结果在时间上的分布信息。例如第一预检索结果包括10个检索结果,第二预检索结果包括5个检索结果,则基于第一预检索结果包括10个检索结果的时间信息和第二预检索结果包括5个检索结果的时间信息进行统计分析,确定这15个检索结果在时间上的分布情况。
在一种示例中,若在确定第二预检索结果的特征统计信息时,服务器命中预检索缓存,预检索服务在进行数据统计时,输入的结果为从预检索缓存中直接召回的第二预检索结果的特征统计信息、以及从时新集群召回第一预检索结果及其第一预检索结果的时间分布。接着,对时新集群召回第一预检索结果的数量在时间上的分布变化进行统计分析,结合从预检索缓存中召回的第二预检索结果的数量在时间上的分布变化,得到各预检索结果在时间上的分布信息。
在另一种示例中,若在确定第二预检索结果的特征统计信息时,服务器未命中预检索缓存,预检索服务在进行数据统计时,输入的结果为垂直搜索得到第二预检索结果及其时间分布,以及从时新集群召回第一预检索结果及其第一预检索结果的时间分布。接着,对所有召回的预检索结果的数量在时间上的分布变化进行统计,得到各预检索结果在时间上的分布信息。
服务器基于上述步骤,确定出各预检索结果在时间上的分布信息后,基于该分布信息,确定搜索内容的时效性。
例如,若分布信息中当前时间段内的一时刻上预检索结果的数量增速大于预设值时,则确定搜索内容的时效性为突发时效性。也就是说,如图8所示,若在最近某个时间上(例如近3个小时内)召回的预检索结果的数量有较大的突涨,则可以判定该搜索内容的时效性为突发时效性。
再例如,若分布信息中,在最近一段时间内预检索结果的数据很少,而在后续时间内预检索结果的数量变化平稳,则确定该搜索内容的时效性为无时效性。
由上述可知,本申请实施例通过对第一预检索结果和第二预检索结果的特征统计信息进行分析,可以准确确定出搜索内容的时效性。
本申请实施例,通过部署时新集群,可以实现对时新数据的实时召回,同时设置预检索缓存,用于缓存目标账号对应的最新预检索结果的特征分布信息。这样在具体预检索时,从时新集群中及时召回最新的第一预检索结果,从预检索缓存中快速召回第二预检索结果的特征分布信息。由于时新集群的索引量较少,召回性能较高,不会大幅降低有命中预检索缓存时的耗时。经测试,在微信搜一搜上,预检索缓存召回链路平均耗时66ms,增加了实时召回链路后,整体平均耗时只增加了10ms。进而可以保证在不明显增加耗时的基础上,实现对搜索内容的时序性的准确确定。
服务器基于上述步骤,可以准确确定出搜索内容的时效性,例如对突发时效性的识别,进而基于该准确确定的时效性,进而数据搜索时,可以准确、快速的召回搜索内容对应的目标搜索结果。
本申请实施例服务器基于搜索内容的时效性,得到搜索内容的目标搜索结果的具体方式不做限制。
在一些实施例中,服务器基于搜索内容的时效性和上述确定的第一预检索结果的特征统计信息、第二预检索结果的特征统计信息,进行一查召回,得到搜索内容的目标搜索结果。
在一些实施例中,上述S104中基于搜索内容的时效性、得到搜索内容的目标搜索结果包括如下S104-C和S104-D的步骤:
S104-C、基于搜索内容的时效性和第一先验理解信息,确定搜索内容的第二先验理解信息;
S104-D、基于第二先验理解信息,得到搜索内容的目标搜索结果。
由上述分析可以,服务器对搜索内容进行分析理解,可以得到搜索内容的第一先验理解信息。接着,服务器基于上述S102、S103和S104的步骤,准确确定出搜索内容的时效性,进而基于该准确确定的时效性和第一先验理解信息,确定搜索内容的第二先验理解信息。例如,若第一先验理解信息不包括搜索内容的时效性时,则将本申请实施例确定的搜索内容的时效性包括在第一先验理解信息中,生成搜索内容的第二先验理解信息。再例如,若第一先验理解信息包括搜索内容的时效性时,则基于本申请实施例确定的搜索内容的时效性对第一先验理解信息所包括的时效性进行修正,例如,使用本申请实施例确定出的时效性替换第一先验理解信息所包括的时效性,生成第二先验理解信息,或者,将本申请实施例确定出的时效性与第一先验理解信息所包括的时效性进行加权处理,确定出一个新的时效性,进而将该新的时效性包括在第二先验理解信息中。这样可以帮助对搜索内容的先验信息的理解,进而优化了搜索内容的先验理解信息,进而基于优化的先验理解信息(即第二先验理解信息)进行数据搜索时,可以提高数据搜索的准确性和效率。
接着,服务器基于搜索内容的第二先验理解信息,进行一查或二查,得到搜索内容的目标搜索结果。
在一些实施例中,为了进一步提高数据搜索的准确性和效率,则服务器在基于搜索内容的第二先验理解信息召回数据时,还考虑了第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,即服务器基于搜索内容的第二先验理解信息、第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,得到搜索内容的目标搜索结果。也就是说,在本申请实施例中,服务器中的预检索服务基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,得到包括时效性在内的搜索内容级的特征统计信息后,将该特征统计信息返回到主服务(mainmixer)。主服务(mainmixer)得到预检索的特征统计信息后,正式发起对垂搜业务的一查召回,同时将预检索的特征统计信息在正式召回时传透到垂搜业务,则预检索识别的时效性信号可以传透到垂搜业务使用,进而可以提高数据搜索的准确性和效率。
本申请实施例提供的数据搜索方法,在数据搜索时,服务器接收客户端发送的搜索请求,搜索请求包括搜索内容;从时新集群中召回搜索内容的第一预检索结果,并确定第一预检索结果的特征统计信息,时新集群包括最新搜索数据,该第一预检索结果的特征统计信息包括第一预检索结果的时间信息;基于预检索缓存所存储的预检索结果的特征统计信息,确定搜索内容的第二预检索结果的特征统计信息,预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,第二预检索结果的特征统计信息包括第二预检索结果的时间信息;基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性,并基于搜索内容的时效性,得到搜索内容的目标搜索结果。本申请实施例在预检索时,单独部署时新集群,以从时新集群中及时找回最新的第一预检索结果,同时并行召回第二预检索结果,进而基于并行召回的第一预检索结果和第二预检索结果的特征统计信息,确定搜索内容的时效性,这样基于搜索内容的时效性进行后续数据搜索,可以提高数据的搜索准确性和搜索速度,进而提升了数据搜索效果。
上文以服务器为例,对本申请实施例的数据搜索过程进行介绍,下面以交互方式为例,对本申请实施例提供的数据搜索方法作进一步介绍。
图9为本申请一实施例提供的数据搜索方法的流程示意图,如图9所示,包括:
S201、客户端响应于搜索内容的输入操作,发送搜索请求。
其中,搜索请求中包括搜索内容。
例如,用户在客户端显示的搜索界面中输入待搜索的搜索内容,接着点击搜索选项。客户端响应于用于对搜索内容的输入操作,向服务器发送搜索请求。
S202、服务器对搜索内容进行理解分析,得到搜索内容的第一先验理解信息。
例如,如图10所示,服务器中的主程序调用问题分析无法QP对搜索内容进行理解分析,得到搜索内容的检索语法树、分词、分词权重、紧密度、必非留等用于指导索引的信息,以及根据搜索内容本身事先挖掘的时效性、地域性等属性信息,以及搜索内容的业务意图分类等信息。
S203、服务器基于第一先验理解信息,从时新集群中召回第一预检索结果。
其中,时新集群包括最新搜索数据,特征统计信息包括时间信息。
示例性的,如图10所示,服务器调用预检索服务PP,并行两路进行预检索,其中一路为实时召回链路,一路为预检测缓存召回链路。其中实时召回链路用于从时新集群中召回第一预检索结果。
示例性的,如图10所示,实时召回链路并行对文章和视频发送时新结果的实时召回,可选的,在实时召回时,可以控制只下发原串检索,不进行纠错、改写等扩展搜索内容下发。可选的,在实时召回时,可以对搜索内容进行纠错和改写等处理。该实时召回请求可以直接请求文章和视频L3层服务,也可以经过L4层服务转发给L3层。
在一些实施例中,在实现召回链路中,可以控制在一定的时间范围内进行检索。也就是说,服务器从时新集群所包括的最新搜索数据中,获取当前第一时间段内的第一搜索数据,基于第一先验理解信息,在第一搜索数据中进行搜索,得到第一预检索结果。例如,文章链路中的SAS服务控制索引存取服务indexAccess在时新集群中的当前第一时间段内的第一搜索数据进行预检索,得到文章预检索结果。视频链路中的查找器控制在时新集群中的当前第一时间段内的第一搜索数据进行预检索,得到第一预检索结果中视频预检索结果。
S204、服务器确定第一预检索结果的特征统计信息。
例如,服务器获取第一预检索结果的时间信息,进而基于第一预检索结果的时间信息,确定第一预检索结果的特征统计信息。
上述S203和S204的具体实现过程可以参照上述S102的相关描述,在此不再赘述。
S205、服务器在预检索缓存中进行检索,若预检索缓存中包括与搜索内容匹配的预检索结果时,则服务器从预检索缓存中获得第二预检索结果的特征统计信息。
其中,预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息。
S206、服务器若在预检索缓存中未检索到与搜索内容匹配的预检索结果,或检索到的检索结果的数量不足时,基于搜索请求进行垂直搜索,得到第二预检索结果。
在一种示例中,本申请实施例的预检索涉及集群如表2所示:
表2
需要说明的是,上述表2所示的各集群所包括的数据只是一种示例,本申请实施例的各集群所包括的数据不仅仅是上述各时间段的数据,还可以是其他时间段的数据,本申请实施例对此不做限制。
示例性的,如图10所示,在本申请实施例中,在确定第二预检索结果的特征统计信息时,服务器首先检索预检索缓存,判断该预检索缓存中是否包括搜索内容的第二预检索结果的特征统计信息。若预检索缓存中是否包括搜索内容的第二预检索结果的特征统计信息,则服务器直接从预检索缓存读取搜索内容的第二预检索结果的特征统计信息。
若服务器在预检索缓存中未检索到与搜索内容匹配的预检索结果,或检索到的检索结果的数量不足时,则服务器基于搜索请求进行垂直搜索,得到第二预检索结果。
在一些实施例中,服务器对搜索内容进行理解分析,得到搜索内容的第一先验理解信息;基于第一先验理解信息进行垂直搜索,得到第二预检索结果。
在一些实施例中,服务器基于第一先验理解信息,在N条链路上进行并行垂直搜索,得到第二预检索结果,N为正整数。例如,对于N条链路中的每一条链路,基于第一先验理解信息,从链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到链路召回的第二预检索结果。
继续参照图10,预检索服务并行对文章(docmixer链路)、视频(videomixer链路)发起预检索请求。可选的,可以控制只下发原串检索,不作纠错、改写等扩展搜索内容的下发。可选的,可以对搜索内容进行纠错或改写等处理后下发。文章、视频链路L4层收到预检索请求后,请求L3层获取预检索召回结果。文章、视频L3层收到预检索请求后,控制检索FOB及GOB索引库,可选的,控制检索FOB及10%的GOB索引库,进行底层索引召回。文章、视频L3层拿到预检索通过索引召回的doc列表,带上底层索引特征(包括doc时间),并计算L3层时效相关特征,将doc列表及相关特征一起经过L4层服务返回预检索PP服务,进而得到搜索内容的第二预检索结果及其相关特征。
S207、服务器确定第二预检索结果的特征统计信息。
例如,服务器获取第二预检索结果的时间信息,并基于第二预检索结果的时间信息,确定第二预检索结果的特征统计信息。
在一些实施例中,服务器将垂直搜索得到的第二预检索结果的特征统计信息,存储至预检索缓存中。
上述S205至S207的具体实现过程可以参照上述S103的相关描述,在此不再赘述。
S208、服务器基于第一预检索结果的特征统计信息和第二预检索结果,确定搜索内容的时效性。
在一些实施例中,服务器基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定各预检索结果在时间上的分布信息,进而基于服务器基于分布信息,确定搜索内容的时效性。
例如,若分布信息中当前时间段内的一时刻上预检索结果的数量增速大于预设值时,则服务器确定搜索内容的时效性为突发时效性。
S209、服务器基于搜索内容的时效性、得到搜索内容的目标搜索结果。
在一些实施例中,服务器基于搜索内容的时效性和第一先验理解信息,确定搜索内容的第二先验理解信息;基于第二先验理解信息,得到搜索内容的目标搜索结果。
在一些实施例中,基于第二先验理解信息、第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,得到搜索内容的目标搜索结果。
上述S208和S209的具体实现过程,可以参照上述S104的相关描述,在此不再赘述。
S210、服务器将目标搜索结果发送给客户端。
S211、客户端显示目标搜索结果。
本申请实施例提供的数据搜索方法,在数据搜索时,服务器接收客户端发送的搜索请求,搜索请求包括搜索内容;并行两路,获取第一预检索结果的特征统计信息和第二预检索结果的特征统计信息。具体的,通过实时召回链路,从时新集群中召回搜索内容的第一预检索结果,并确定第一预检索结果的特征统计信息,时新集群包括最新搜索数据,该特征统计信息包括时间信息。同时,通过预检索缓存链路,先在预检索缓存中查找是否存在第二预检索结果的特征统计信息,若存在时,则直接从预检索缓存中获取搜索内容的第二预检索结果的特征统计信息。若预检索缓存中未检索到与搜索内容匹配的预检索结果,或检索到的检索结果的数量不足时,则基于搜索请求进行垂直搜索,得到第二预检索结果,并确定第二预检索结果的特征统计信息。最后,基于第一预检索结果的特征统计信息和第二预检索结果的特征统计信息,确定搜索内容的时效性,并基于搜索内容的时效性,得到搜索内容的目标搜索结果。本申请实施例在预检索时,单独部署时新集群,以从时新集群中及时找回最新的第一预检索结果,同时通过预检索缓存链路,并行召回第二预检索结果,提高了第一预检索结果和第二预检索结果的快速召回。进而基于并行召回的第一预检索结果和第二预检索结果的特征统计信息,快速、准确的确定出搜索内容的时效性,以优化对搜索内容的分析理解,进而可以提高数据的搜索准确性和搜索速度,提升了数据搜索效果。
上文结合图3至图10,详细描述了本申请的数据搜索方法实施例,下文结合图11,详细描述本申请的装置实施例。
图11是本申请一实施例提供的数据搜索装置的示意性框图。该数据搜索装置10应用于服务器,如图11所示,数据搜索装置10包括:
接收单元11,用于接收客户端发送的搜索请求,所述搜索请求包括搜索内容;
第一预检索单元12,用于从时新集群中召回所述搜索内容的第一预检索结果,并确定所述第一预检索结果的特征统计信息,所述时新集群包括最新搜索数据,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息;
第二预检索单元13,用于基于预检索缓存所存储的预检索结果的特征统计信息,确定所述搜索内容的第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息;
确定单元14,用于基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定所述搜索内容的时效性,并基于所述搜索内容的时效性,得到所述搜索内容的目标搜索结果。
在一些实施例中,第一预检索单元12,具体用于对所述搜索内容进行理解分析,得到所述搜索内容的第一先验理解信息;基于所述第一先验理解信息,从所述时新集群中召回所述第一预检索结果。
在一些实施例中,第一预检索单元12,具体用于从所述时新集群所包括的最新搜索数据中,获取当前第一时间段内的第一搜索数据;基于所述第一先验理解信息,在所述第一搜索数据中进行搜索,得到所述第一预检索结果。
在一些实施例中,第一预检索单元12,具体用于获取所述第一预检索结果的时间信息;基于所述第一预检索结果的时间信息,确定所述第一预检索结果的特征统计信息。
在一些实施例中,第二预检索单元13,具体用于在预检索缓存中进行检索,若所述预检索缓存中包括与所述搜索内容匹配的预检索结果时,则从所述预检索缓存中获得所述第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息。
在一些实施例中,若在所述预检索缓存中未检索到与所述搜索内容匹配的预检索结果,或检索到的检索结果的数量不足时,第二预检索单元13,具体用于基于所述搜索请求进行垂直搜索,得到所述第二预检索结果;确定所述第二预检索结果的特征统计信息。
在一些实施例中,第二预检索单元13,具体用于对所述搜索内容进行理解分析,得到所述搜索内容的第一先验理解信息;基于所述第一先验理解信息进行垂直搜索,得到所述第二预检索结果。
在一些实施例中,第二预检索单元13,具体用于基于所述第一先验理解信息,在N条链路上进行并行垂直搜索,得到所述第二预检索结果,所述N为正整数。
在一些实施例中,第二预检索单元13,具体用于对于所述N条链路中的每一条链路,基于所述第一先验理解信息,从所述链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到所述链路召回的第二预检索结果。
在一些实施例中,第二预检索单元13,具体用于基于所述第一先验理解信息,从所述实时流索引集群所包括的全部数据和所述优质索引集群包括的部分数据中进行垂直搜索,得到所述链路召回的第二预检索结果。
在一些实施例中,第二预检索单元13,具体用于获取所述第二预检索结果的时间信息;基于所述第二预检索结果的时间信息,确定所述第二预检索结果的特征统计信息。
在一些实施例中,第二预检索单元13,还用于将垂直搜索得到的所述第二预检索结果的特征统计信息,存储至所述预检索缓存中。
在一些实施例中,确定单元14,具体用于基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定各预检索结果在时间上的分布信息;基于所述分布信息,确定所述搜索内容的时效性。
在一些实施例中,确定单元14,具体用于若所述分布信息中当前时间段内的一时刻上预检索结果的数量增速大于预设值时,则确定所述搜索内容的时效性为突发时效性。
在一些实施例中,确定单元14,具体用于基于所述搜索内容的时效性和所述第一先验理解信息,确定所述搜索内容的第二先验理解信息;基于所述第二先验理解信息,得到所述搜索内容的目标搜索结果。
在一些实施例中,确定单元14,具体用于基于所述第二先验理解信息、所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,得到所述搜索内容的目标搜索结果。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图11所示的装置可以执行上述方法的实施例,并且装置中的各个模块的前述和其它操作和/或功能分别为了实现计算设备对应的方法实施例,为了简洁,在此不再赘述。
图12是本申请一实施例提供的数据搜索装置的示意性框图。该数据搜索装置20应用于客户端,如图12所示,数据搜索装置20包括:
发送单元21,用于响应于搜索内容的输入操作,发送搜索请求,所述搜索请求中包括所述搜索内容;
接收单元22,用于接收并显示所述搜索内容的目标搜索结果,
其中,所述目标搜索结果是基于所述搜索内容的时效性得到的,所述时效性是基于所述搜索内容的第一预检索结果的特征统计信息和第二预检索结果的特征统计信息确定的,所述第一预检索结果的特征统计信息是对从时新集群中召回所述搜索内容的第一预检索结果的特征进行统计得到,所述时新集群包括最新搜索数据,所述特征统计信息包括时间信息。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图12所示的装置可以执行上述方法的实施例,并且装置中的各个模块的前述和其它操作和/或功能分别为了实现计算设备对应的方法实施例,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图13是本申请实施例提供的电子设备的示意性框图,图13的电子设备可以为终端设备或服务器,用于执行上述方法实施例。
如图13所示,该电子设备30可包括:
存储器31和处理器32,该存储器31用于存储计算机程序33,并将该计算机程序33传输给该处理器32。换言之,该处理器32可以从存储器31中调用并运行计算机程序33,以实现本申请实施例中的方法。
例如,该处理器32可用于根据该计算机程序33中的指令执行上述方法中的步骤。
在本申请的一些实施例中,该处理器32可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器31包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序33可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器31中,并由该处理器32执行,以完成本申请提供的录制页面的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序33在该电子设备中的执行过程。
如图13所示,该电子设备30还可包括:
收发器34,该收发器34可连接至该处理器32或存储器31。
其中,处理器32可以控制该收发器34与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器34可以包括发射机和接收机。收发器34还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备30中的各个组件通过总线***相连,其中,总线***除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
根据本申请的一个方面,提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
根据本申请的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法实施例的方法。
换言之,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (19)
1.一种数据搜索方法,其特征在于,应用于服务器,包括:
接收客户端发送的搜索请求,所述搜索请求包括搜索内容;
从时新集群中召回所述搜索内容的第一预检索结果,并确定所述第一预检索结果的特征统计信息,所述时新集群包括最新搜索数据,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息;
基于预检索缓存所存储的预检索结果的特征统计信息,确定所述搜索内容的第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息;
基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定所述搜索内容的时效性;
对所述搜索内容进行理解分析,得到所述搜索内容的第一先验理解信息,并基于所述搜索内容的时效性对所述第一先验理解信息中的时效性进行修正,得到所述搜索内容的第二先验理解信息,所述第二先验理解信息中包括修正后的时效性;
基于所述第二先验理解信息,得到所述搜索内容的目标搜索结果。
2.根据权利要求1所述的方法,其特征在于,所述从时新集群中召回所述搜索内容的第一预检索结果,包括:
基于所述第一先验理解信息,从所述时新集群中召回所述第一预检索结果。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一先验理解信息,从所述时新集群中召回所述第一预检索结果,包括:
从所述时新集群所包括的最新搜索数据中,获取当前第一时间段内的第一搜索数据;
基于所述第一先验理解信息,在所述第一搜索数据中进行搜索,得到所述第一预检索结果。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述确定所述第一预检索结果的特征统计信息,包括:
获取所述第一预检索结果的时间信息;
基于所述第一预检索结果的时间信息,确定所述第一预检索结果的特征统计信息。
5.根据权利要求1所述的方法,其特征在于,所述基于预检索缓存所存储的预检索结果的特征统计信息,确定所述搜索内容的第二预检索结果的特征统计信息,包括:
在预检索缓存中进行检索,若所述预检索缓存中包括与所述搜索内容匹配的预检索结果时,则从所述预检索缓存中获得所述第二预检索结果的特征统计信息。
6.根据权利要求5所述的方法,其特征在于,若在所述预检索缓存中未检索到与所述搜索内容匹配的预检索结果,或检索到的预检索结果的数量不足时,所述方法还包括:
基于所述搜索请求进行垂直搜索,得到所述第二预检索结果;
确定所述第二预检索结果的特征统计信息。
7.根据权利要求6所述的方法,其特征在于,所述基于所述搜索请求进行垂直搜索,得到所述第二预检索结果,包括:
基于所述第一先验理解信息进行垂直搜索,得到所述第二预检索结果。
8.根据权利要求7所述的方法,其特征在于,所述基于所述第一先验理解信息进行垂直搜索,得到所述第二预检索结果,包括:
基于所述第一先验理解信息,在N条链路上进行并行垂直搜索,得到所述第二预检索结果,所述N为正整数。
9.根据权利要求8所述的方法,其特征在于,所述基于所述第一先验理解信息,在N条链路上进行并行垂直搜索,得到所述第二预检索结果,包括:
对于所述N条链路中的每一条链路,基于所述第一先验理解信息,从所述链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到所述链路召回的第二预检索结果。
10.根据权利要求9所述的方法,其特征在于,所述基于所述第一先验理解信息,从所述链路对应的实时流索引集群和优质索引集群中进行垂直搜索,得到所述链路召回的第二预检索结果,包括:
基于所述第一先验理解信息,从所述实时流索引集群所包括的全部数据和所述优质索引集群包括的部分数据中进行垂直搜索,得到所述链路召回的第二预检索结果。
11.根据权利要求6所述的方法,其特征在于,所述确定所述第二预检索结果的特征统计信息,包括:
获取所述第二预检索结果的时间信息;
基于所述第二预检索结果的时间信息,确定所述第二预检索结果的特征统计信息。
12.根据权利要求6-11任一项所述的方法,其特征在于,所述方法还包括:
将垂直搜索得到的所述第二预检索结果的特征统计信息,存储至所述预检索缓存中。
13.根据权利要求1所述的方法,其特征在于,所述基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定所述搜索内容的时效性,包括:
基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定各预检索结果在时间上的分布信息;
基于所述分布信息,确定所述搜索内容的时效性。
14.根据权利要求13所述的方法,其特征在于,所述基于所述分布信息,确定所述搜索内容的时效性,包括:
若所述分布信息中当前时间段内的一时刻上预检索结果的数量增速大于预设值时,则确定所述搜索内容的时效性为突发时效性。
15.一种数据搜索方法,其特征在于,应用于客户端,包括:
响应于搜索内容的输入操作,发送搜索请求,所述搜索请求中包括所述搜索内容;
接收并显示所述搜索内容的目标搜索结果,
其中,所述目标搜索结果是基于所述搜索内容的第二先验理解信息进行搜索得到,所述第二先验理解信息是基于所述搜索内容的时效性对所述搜索内容的第一先验理解信息中的时效性进行修正得到,所述搜索内容的时效性是基于所述搜索内容的第一预检索结果的特征统计信息和第二预检索结果的特征统计信息确定的,所述第一预检索结果的特征统计信息是对从时新集群中召回所述搜索内容的第一预检索结果的特征进行统计得到,所述第二预检索结果的特征统计信息是基于预检索缓存所存储的预检索结果的特征统计信息得到,所述时新集群包括最新搜索数据,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息。
16.一种数据搜索装置,其特征在于,应用于服务器,包括:
接收单元,用于接收客户端发送的搜索请求,所述搜索请求包括搜索内容;
第一预检索单元,用于从时新集群中召回所述搜索内容的第一预检索结果,并确定所述第一预检索结果的特征统计信息,所述时新集群包括最新搜索数据,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息;
第二预检索单元,用于基于预检索缓存所存储的预检索结果的特征统计信息,确定所述搜索内容的第二预检索结果的特征统计信息,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息;
确定单元,用于基于所述第一预检索结果的特征统计信息和所述第二预检索结果的特征统计信息,确定所述搜索内容的时效性;对所述搜索内容进行理解分析,得到所述搜索内容的第一先验理解信息,并基于所述搜索内容的时效性对所述第一先验理解信息中的时效性进行修正,得到所述搜索内容的第二先验理解信息,所述第二先验理解信息中包括修正后的时效性;基于所述第二先验理解信息,得到所述搜索内容的目标搜索结果。
17.一种数据搜索装置,其特征在于,应用于客户端,包括:
发送单元,用于响应于搜索内容的输入操作,发送搜索请求,所述搜索请求中包括所述搜索内容;
接收单元,用于接收并显示所述搜索内容的目标搜索结果,
其中,所述目标搜索结果是基于所述搜索内容的第二先验理解信息进行搜索得到,所述第二先验理解信息是基于所述搜索内容的时效性对所述搜索内容的第一先验理解信息中的时效性进行修正得到,所述搜索内容的时效性是基于所述搜索内容的第一预检索结果的特征统计信息和第二预检索结果的特征统计信息确定的,所述第一预检索结果的特征统计信息是对从时新集群中召回所述搜索内容的第一预检索结果的特征进行统计得到,所述第二预检索结果的特征统计信息是基于预检索缓存所存储的预检索结果的特征统计信息得到,所述时新集群包括最新搜索数据,所述预检索缓存中包括历史垂直搜索得到的预检索结果的特征统计信息,所述第一预检索结果的特征统计信息包括第一预检索结果的时间信息,所述第二预检索结果的特征统计信息包括第二预检索结果的时间信息。
18.一种电子设备,包括处理器和存储器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序以实现如上述权利要求1至14或15任一项所述的方法。
19.一种计算机可读存储介质,其特征在于,用于存储计算机程序;
所述计算机程序使得计算机执行如上述权利要求1至14或15任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311157692.6A CN116894118B (zh) | 2023-09-08 | 2023-09-08 | 数据搜索方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311157692.6A CN116894118B (zh) | 2023-09-08 | 2023-09-08 | 数据搜索方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116894118A CN116894118A (zh) | 2023-10-17 |
CN116894118B true CN116894118B (zh) | 2023-12-22 |
Family
ID=88312354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311157692.6A Active CN116894118B (zh) | 2023-09-08 | 2023-09-08 | 数据搜索方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116894118B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164424A (zh) * | 2011-12-13 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 一种时效性词的获取方法和装置 |
US8645390B1 (en) * | 2007-08-31 | 2014-02-04 | Google Inc. | Reordering search query results in accordance with search context specific predicted performance functions |
CN103793418A (zh) * | 2012-10-31 | 2014-05-14 | 珠海富讯网络科技有限公司 | 一种针对证券行业的实时垂直搜索引擎的搜索方法 |
CN103995865A (zh) * | 2014-05-19 | 2014-08-20 | 北京奇虎科技有限公司 | 突发时效性查询词识别方法和*** |
CN105512199A (zh) * | 2015-11-27 | 2016-04-20 | 广州神马移动信息科技有限公司 | 搜索方法、搜索装置以及搜索服务器 |
CN111241379A (zh) * | 2018-11-28 | 2020-06-05 | 阿里巴巴集团控股有限公司 | 搜索结果的处理方法、装置、电子设备及计算机可读介质 |
CN111310069A (zh) * | 2018-12-11 | 2020-06-19 | 阿里巴巴集团控股有限公司 | 一种针对时效性搜索的评估方法及装置 |
CN116150459A (zh) * | 2021-11-23 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 搜索方法、装置、电子设备和存储介质 |
-
2023
- 2023-09-08 CN CN202311157692.6A patent/CN116894118B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645390B1 (en) * | 2007-08-31 | 2014-02-04 | Google Inc. | Reordering search query results in accordance with search context specific predicted performance functions |
CN103164424A (zh) * | 2011-12-13 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 一种时效性词的获取方法和装置 |
CN103793418A (zh) * | 2012-10-31 | 2014-05-14 | 珠海富讯网络科技有限公司 | 一种针对证券行业的实时垂直搜索引擎的搜索方法 |
CN103995865A (zh) * | 2014-05-19 | 2014-08-20 | 北京奇虎科技有限公司 | 突发时效性查询词识别方法和*** |
CN105512199A (zh) * | 2015-11-27 | 2016-04-20 | 广州神马移动信息科技有限公司 | 搜索方法、搜索装置以及搜索服务器 |
CN111241379A (zh) * | 2018-11-28 | 2020-06-05 | 阿里巴巴集团控股有限公司 | 搜索结果的处理方法、装置、电子设备及计算机可读介质 |
CN111310069A (zh) * | 2018-12-11 | 2020-06-19 | 阿里巴巴集团控股有限公司 | 一种针对时效性搜索的评估方法及装置 |
CN116150459A (zh) * | 2021-11-23 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 搜索方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116894118A (zh) | 2023-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11487831B2 (en) | Compatibility scoring of users | |
AU2015401229B2 (en) | Website access method, apparatus, and website system | |
US20170185654A1 (en) | Method and server for pushing information proactively | |
US7865476B2 (en) | File sharing system in cooperation with a search engine | |
US9047298B2 (en) | File searching on mobile devices | |
US20070260609A1 (en) | System and method for high throughput with remote storage servers | |
US11003663B2 (en) | Configuration-aware micro-database caches | |
CN109766354A (zh) | 业务数据查询的优化方法、装置及设备 | |
KR102601545B1 (ko) | 지리 위치점 정렬 방법, 정렬 모델 트레이닝 방법 및 대응하는 장치 | |
CN103701929A (zh) | 实现业务数据缓存的方法及装置 | |
CN110232106A (zh) | 一种基于MongoDB和Solr的海量数据存储及快速检索方法 | |
CN109246102B (zh) | 一种支撑大规模认证数据快速存储及检索的***及方法 | |
CN107451252A (zh) | 基于api的快速查询方法及其*** | |
JP5272428B2 (ja) | アクセス頻度の高い情報を事前にキャッシュする予測型キャッシュ方法、そのシステム及びそのプログラム | |
US11636155B2 (en) | Method and apparatus for data search, system, device and computer readable storage medium | |
CN106603610A (zh) | 一种数据获取方法及装置 | |
CN116894118B (zh) | 数据搜索方法、装置、设备及存储介质 | |
KR100978693B1 (ko) | 전자사전 서비스를 제공하는 시스템 및 방법 | |
CN111611222A (zh) | 一种基于分布式存储的数据动态处理方法 | |
KR102415155B1 (ko) | 데이터 검색 장치 및 방법 | |
EP4080383A1 (en) | Method and apparatus for presenting information, electronic device, storage medium, and program product | |
CN114756509B (zh) | 文件***的操作方法、***、设备以及存储介质 | |
US20120078862A1 (en) | Hybrid off-peak and just-in-time integration | |
US11055266B2 (en) | Efficient key data store entry traversal and result generation | |
US20210165772A1 (en) | Discovering and merging entity record fragments of a same entity across multiple entity stores for improved named entity disambiguation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |