CN102479207A - 一种信息搜索的方法、***及信息搜索设备 - Google Patents
一种信息搜索的方法、***及信息搜索设备 Download PDFInfo
- Publication number
- CN102479207A CN102479207A CN2010105636636A CN201010563663A CN102479207A CN 102479207 A CN102479207 A CN 102479207A CN 2010105636636 A CN2010105636636 A CN 2010105636636A CN 201010563663 A CN201010563663 A CN 201010563663A CN 102479207 A CN102479207 A CN 102479207A
- Authority
- CN
- China
- Prior art keywords
- search
- search server
- server
- choosing
- searching request
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种信息搜索的方法、***及信息搜索设备,主要内容包括:在搜索集群***中进行二级缓存搜索时,针对搜索服务器集合的各子集合,根据运算结果与子集合内各搜索服务器的对应关系,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器,利用选取的搜索服务器来响应搜索请求,由于选取的搜索服务器除了第一次响应包含某一关键字的搜索请求外,该搜索服务器中已缓存了该关键字对应的文档列表,因此,选取的搜索服务器可以直接读取缓存的文档列表,节约了搜索时长,减少了信息搜索过程中占用的搜索集群***资源,提高了搜索集群***的性能。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种信息搜索的方法、***及信息搜索设备。
背景技术
在大型的搜索集群***中,由于用于搜索的集群文档数量巨大,因此为大量的集群文档建立索引文件,在索引文件中进行信息搜索。由于索引文件数据量也很大,为了提高信息搜索效率,可以将索引文件划分成多个部份,分别存储在多台搜索服务器(searcher)中,在多台搜索服务器中并行搜索以提高效率。例如:将一份的索引文件划分为n个部分,在每台搜索服务器中存储一部分索引文件,n台搜索服务器中存储的内容组合在一起成为一份完整的索引文件。
进一步考虑到搜索集群***需要为大量用户并行提供搜索服务,一台搜索服务器很难提供高并发的搜索服务,因此,可以设置m台搜索服务器存储相同的索引文件。将存储有相同索引文件的m台搜索服务器作为一个子集合,n个子集合组成一个搜索服务器集合。为了方便从图形上直观地看出搜索服务器集合内m×n台搜索服务器的结构,可以以矩阵形式来表示m×n台搜索服务器。将存储有相同索引文件的m台搜索服务器的一个子集合看作是一列,n个子集合依次排列形成n行,得到m行n列结构的搜索服务器集合,如图1所示。
在利用搜索集群***进行信息搜索时,为了提高搜索集群***的性能,降低信息搜索的查询时间,可以采用分级缓存(cache)搜索方式。目前常见的分级缓存搜索方式是两级缓存搜索方式,其中:
一级缓存中缓存了之前一段时间内已使用的搜索请求(query)以及为该搜索请求返回的查询结果,一级缓存可以采用高性能分布式内存对象缓存***(Memcached)来缓存搜索请求以及对应的查询结果,一级缓存对于整个搜索集群***而言是全局的;
二级缓存中缓存了之前一段时间内利用搜索请求进行查询后将查询结果进行集合运算后得到的文档列表(doclist),二级缓存的内容缓存在搜索服务器中,只对接收到搜索请求且进行集合运算的搜索服务器可见。
如图2所示,为两级缓存搜索方式下的搜索集群***结构示意图,假设用户以“电脑包”+“价格区间50元~100元”为搜索请求进行信息搜索,则通过图2所示的搜索集群***的信息搜索过程如下:
第一步:搜索集群***中的合并(merger)服务器接收来自用户(user)的搜索请求,其中,关键字为“电脑包”,搜索条件为“价格区间50元~100元”。
第二步:合并服务器搜索作为一级缓存的Memcached,如果有查询结果,则表示之前已有其他用户使用相同搜索请求进行过搜索,因此,可以直接从Memcached中读取搜索结果并返回给用户;如果没有搜索结果,则执行第三步。
第三步:合并服务器从图1所示的搜索服务器集合的每列中随机选取一台搜索服务器,选取的n台搜索服务器存储各部分索引文件组合在一起成为一份完整的索引文件。其中,由于位于同一列的搜索服务器被选取的概率是基本相同的,以实现同一列的搜索服务器负载的基本均衡。
第四步:合并服务器将搜索请求发送给选取的各台搜索服务器。
第五步:针对接收到搜索请求的每个搜索服务器,以第一列的搜索服务器_1为例,搜索服务器_1根据其中的关键字“电脑包”搜索二级缓存中是否有匹配的搜索结果,如果有,则读取二级缓存中“电脑包”对应的文档列表,并利用搜索请求中的搜索条件对读取的文档列表做集合运算,查询出符合搜索条件的内容。例如,读取的文档列表中包括多种价位电脑包的文档列表集合,则按照“价格区间50元~100元”的搜索条件对读取的文档列表做集合运算,从中查询出“价格区间50元~100元”的文档列表。
搜索服务器_1将查询出的内容进行统计、分级和排序后返回给合并服务器,并跳转至第八步;如果搜索服务器_1未搜索出与“电脑包”匹配的搜索结果,则执行第六步。
第六步:搜索服务器_1将关键字“电脑包”分词为两个子关键字“电脑”+“包”,并分别利用“电脑”和“包”这两个子关键字从搜索服务器_1中存储的索引文件中进行搜索,并将搜索结果进行集合运算,得到利用“电脑”和“包”这两个子关键字的搜索结果的交集,将得到的交集作为关键字“电脑包”的文档列表并写入搜索服务器_1的二级缓存内。
第七步:搜索服务器_1利用搜索条件对写入二级缓存的文档列表做集合运算,查询出符合搜索条件的内容,并将查询出的内容进行统计、分级和排序后返回给合并服务器。
其他的n-1台搜索服务器按照与上述第五步至第七步的方式向合并服务器返回查询出的内容。
第八步:合并服务器对接收到的n台搜索服务器返回的查询内容进行汇总,并将汇总结果作为搜索请求的搜索结果返回给用户,同时合并服务还将搜索结果写入作为一级缓存的Memcached,以便于其他用户利用相同搜索请求进行查询时可以直接从Memcached获得搜索结果。
在上述通过搜索集群***的搜索过程中,在一级缓存中没有搜索请求_1对应的搜索结果的情况下,合并服务器按照随机方式从搜索服务器集合的每列中选取一台搜索服务器,并要求每台搜索服务器根据搜索请求中的关键字进行查询;若之后再有用户以搜索请求_2发起搜索请求,且搜索请求_2中的关键字与搜索请求_1中的关键字相同时,合并服务器按照随机方式选取的搜索服务器很可能与针对搜索请求_1选取的搜索服务器不同,此时,针对搜索请求_2选取的搜索服务器需要重新查询、统计、分级和排序得到搜索请求_2中关键字的文档列表,导致在搜索服务器中的二级缓存搜索占用的查询时间过长。
例如:搜索服务器集合由2行2列的搜索服务器组成,假设依次有用户A、用户B和用户C以“电脑包”作为搜索请求中的关键字进行搜索,并且假设一级缓存中没有对应的搜索条件。由于合并服务器随机地选择同一列中的搜索服务器,因此,以第一列中的2台搜索服务器(搜索服务器_1和搜索服务器_2)为例,用户A、用户B和用户C在一列的搜索服务器中直接在二级缓存中查询出对应结果的情况有以下几种可能,如表1所示:
用户A | 用户B | 用户C | 命中率 | 出现概率 | |
情况1 | 搜索服务器_1 | 搜索服务器_1 | 搜索服务器_1 | 2/3 | 1/8 |
情况2 | 搜索服务器_1 | 搜索服务器_1 | 搜索服务器_2 | 1/3 | 1/8 |
情况3 | 搜索服务器_1 | 搜索服务器_2 | 搜索服务器_1 | 1/3 | 1/8 |
情况4 | 搜索服务器_1 | 搜索服务器_2 | 搜索服务器_2 | 0/3 | 1/8 |
情况5 | 搜索服务器_2 | 搜索服务器_1 | 搜索服务器_1 | 0/3 | 1/8 |
情况6 | 搜索服务器_2 | 搜索服务器_1 | 搜索服务器_2 | 1/3 | 1/8 |
情况7 | 搜索服务器-2 | 搜索服务器_2 | 搜索服务器_1 | 1/3 | 1/8 |
情况8 | 搜索服务器_2 | 搜索服务器_2 | 搜索服务器_2 | 2/3 | 1/8 |
表1
合并服务器为用户A、用户B和用户C选择搜索服务器_1或搜索服务器_2的概率是相同的,因此,合并服务器为依次发起搜索请求的用户A、用户B和用户C选择搜索服务器_1或搜索服务器_2的情况有表1所示的8种情况,且每种情况出现的概率都为1/8。
以情况1为例,当用户A首先发起关键字为“电脑包”的搜索请求时,搜索服务器_1按照上述第六步的方式运算出“电脑包”的文档列表并写入搜索服务器_1的二级缓存内。之后,当用户B也以“电脑包”为关键字发起搜索请求时,由于搜索服务器_1内已缓存“电脑包”对应的文档列表,因此,可以按照第五步的方式直接读取对应的文档列表,而无需再次按照第六步的方式重新运算“电脑包”的文档列表。用户C发起的关键字为“电脑包”的搜索请求操作与用户B相同。此时,三位用户的搜索请求中,只有用户A需要按照第六步的方式运算“电脑包”的文档列表,而用户B和用户C可以在二级缓存中直接命中“电脑包”的文档列表,因此,在情况1时的命中率为2/3。
类似地,在情况2中,用户A需要按照第六步的方式运算“电脑包”的文档列表,用户B在二级缓存中直接命中“电脑包”的文档列表,而用户C的搜索请求由搜索服务器_2执行,而搜索服务器_2中虽然存储了与搜索服务器_1相同的索引文件,但并没有缓存搜索服务器_1中的二级缓存(即“电脑包”的文档列表),因此,用户C的搜索请求需要由搜索服务器_2按照第六步的方式运算“电脑包”的文档列表后响应。在情况2中,只有用户B可以按照搜索服务器_1内的二级缓存直接命中“电脑包”的文档列表,因此,在情况2时的命中率为1/3。
情况3~情况8的命中率计算方式与上述方式相同。
在表1所示的8种随机选取搜索服务器的情况下,在二级缓存中的平均命中率=(0/3×2+1/3×4+2/3×2)/8=1/3,可见,在目前通过搜索集群***的信息搜索过程中,在二级缓存中针对相同关键字的搜索请求搜索的平均命中率较低,导致针对相同关键字的搜索请求的大多数搜索过程都要分别按照上述第六步的方式运算关键字的文档列表,导致搜索过程占用的查询时间过长,且运算关键字的文档列表需要占用较多的***资源,这降低搜索集群***的性能。
发明内容
本申请目的在于:提供一种信息搜索的方法、***及信息搜索设备,用以解决现有技术中存在二级缓存搜索中占用的查询时间过长、搜索集群***的性能低的问题。
一种信息搜索的方法,包括:
接收包含关键字和搜索条件的搜索请求;
在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器;
将所述搜索请求发送给选取的搜索服务器,指示选取的搜索服务器返回利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
一种信息搜索设备,包括:
请求接收模块,用于接收包含关键字和搜索条件的搜索请求;
运算模块,用于在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,按照设定算法对所述关键字进行运算得到运算结果;
选取模块,用于根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别得到的运算结果对应的搜索服务器;
发送模块,用于将所述搜索请求发送给选取的搜索服务器;
结果接收模块,用于接收选取的搜索服务器返回的利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
一种信息搜索***,包括信息搜索设备和至少一台搜索服务器,其中:
信息搜索设备,用于接收包含关键字和搜索条件的搜索请求,在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器,并将所述搜索请求发送给选取的搜索服务器;
搜索服务器,用于向信息搜索设备返回利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
本申请有益效果如下:
本申请实施例在搜索集群***中进行二级缓存搜索时,针对搜索服务器集合的各子集合,根据运算结果与子集合内各搜索服务器的对应关系,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器,利用选取的搜索服务器来响应搜索请求,由于选取的搜索服务器除了第一次响应包含某一关键字的搜索请求外,该搜索服务器中已缓存了该关键字对应的文档列表,因此,选取的搜索服务器可以直接读取缓存的文档列表,无需再重新对相同的关键字进行分词、从索引文件进行搜索以及运算得到各分词搜索结果交集的操作,节约了搜索时长,减少了信息搜索过程中占用的搜索集群***资源,提高了搜索集群***的性能。
附图说明
图1为背景技术中搜索集群***的搜索服务器集合示意图;
图2为背景技术中搜索集群***结构示意图;
图3为本申请实施例一信息搜索方法流程示意图;
图4为本申请实施例三信息搜索设备结构示意图。
具体实施方式
为了提高在二级缓存中针对相同关键字的搜索请求的搜索命中率,减少在搜索服务器中的搜索时长,本申请实施例提出一种新的信息搜索方案,在针对二级缓存的搜索过程中,合并服务器不将搜索请求随机发送给子集合内的搜索服务器,而是在每次针对相同关键字的搜索请求时,按照设定算法对该关键字进行运算,并根据运算结果与子集合内各搜索服务器的对应关系,从子集合的搜索服务器中选取运算得到的运算结果对应的搜索服务器,指示选取的搜索服务器执行相应的信息搜索操作,由于针对相同关键字采用的设定算法以及运算结果与搜索服务器的对应关系相同,因此,在多次出现相同关键字的搜索请求时,最终选取的搜索服务器相同,而选取的搜索服务器在之前执行相应的信息搜索操作时已缓存了相应的文档列表,因此,选取的搜索服务器无需再重新对关键字进行分词、从索引文件进行搜索以及运算得到各分词搜索结果交集的操作,节约了搜索时长,减少了信息搜索过程中占用的搜索集群***资源,提高了搜索集群***的性能。
本申请各实施例中涉及的搜索集群***的结构与图2所示的***示意图相同,也是由合并服务器接收用户发起的搜索请求后,从Memcached和搜索服务器集合中分别进行一级缓存搜索和二级缓存搜索,最终得到搜索结果的架构。
本申请各实施例中涉及的子集合是指包含m台搜索服务器的集合,同一子集合内各搜索服务器存储的索引文件相同,但二级缓存内缓存的内容(关键字对应的文档列表)不一定相同。n个子集合组成搜索服务器集合,从n个子集合中随机挑选的n个搜索服务器存储的索引文件组成一份完整的索引文件。
本申请各实施例中涉及的文档列表是搜索服务器的二级缓存中缓存的内容,是某一关键字在该搜索服务器缓存的索引文件进行搜索并通过集合运算后得到的内容。
下面结合说明书附图对本申请实施例进行详细描述。
实施例一
本申请实施例一提供一种信息搜索的方法,如图3所示,本实施例一的信息搜索方法包括以下步骤:
步骤101:合并服务器接收用户发送的搜索请求,所述搜索请求中包含关键字和搜索条件。
步骤102:合并服务器搜索作为一级缓存的Memcached,判断是否能够命中搜索结果,若是,则向用户返回搜索结果并结束信息搜索过程;否则,执行步骤103。
步骤103:合并服务器针对搜索服务器集合的各子集合,分别选取搜索服务器。
本步骤的具体操作如下:
首先,合并服务器按照设定算法对所述关键字进行运算,得到该关键字的运算结果;
然后,合并服务器根据预先设定的运算结果与子集合内各搜索服务器的对应关系,分别从各子集合中选取关键字的运算结果对应的搜索服务器。
如果合并服务器首次收到包括某一关键字的搜索请求时,按照本步骤的方案选取的搜索服务器内也未缓存该关键字对应的文档列表,因此,需要为该关键字执行分词、从索引文件进行搜索以及运算得到各分词搜索结果交集的操作,得到并缓存该关键字对应的文档列表;此后,当合并服务器再次收到包含该关键字的搜索请求时,按照本步骤的方案选取子集合中相同的搜索服务器,此时,该搜索服务器中已缓存该关键字对应的文档列表,选取的搜索服务器可以直接向合并服务器返回该文档列表。
步骤104:合并服务器将所述搜索请求发送给选取的搜索服务器。
步骤105:搜索服务器从二级缓存中读取搜索请求中的关键字对应的文档列表,并利用搜索请求中的搜索条件对读取的文档列表做集合运算,查询出符合搜索条件的内容。
步骤106:合并服务器对选取的各搜索服务器返回的查询内容进行汇总,将汇总得到的搜索结果返回给用户。
通过上述步骤101~步骤106的方案,合并服务器不再是从各子集合中随机地选取搜索服务器,而是根据对搜索请求中关键字的运算结果选取对应的搜索搜索服务器,由于对关键字采用相同的算法以及运算结果与搜索服务器的对应关系相同,因此,针对相同的关键字在子集合中选取的搜索服务器相同,而搜索服务器在首次响应包含该关键字的搜索请求时就缓存了对应的文档列表,因此,之后每次选取该搜索服务器后文档列表搜索服务器可以直接读取缓存的文档列表,减少二级缓存搜索占用的时长,避免为重复执行分词、从索引文件进行搜索以及运算得到各分词搜索结果交集的操作而占用的***资源,提高了搜索集群***的性能。
在上述步骤103中搜索请求涉及的设定算法包括但不限于各种运算方式,本申请实施例二以哈希算法为例,对本申请实施例一的方案进行详细描述。
实施例二
假设本申请实施例二的方案中,在T1时刻之前,一级缓存和二级缓存中都没有缓存关键字“电脑包”对应的文档列表。在T1时刻,用户A发起的搜索请求_1中关键字为“电脑包”,搜索条件为“价格区间50元~100元”,在之后的T2时刻,用户B发起的搜索请求_2中关键字为“电脑包”,搜索条件为“红色”。
本申请实施例二中信息搜索的方法包括以下步骤:
第一步:合并服务器接收用户A发送的搜索请求_1,所述搜索请求_1中包含关键字“电脑包”和搜索条件“价格区间50元~100元”。
第二步:合并服务器从搜索请求_1中提取出关键字“电脑包”。
本步骤中,由于用户在发出搜索请求_1时通常对其中包含的信息进行了URL编码,因此,本步骤中,优选进行统一资源定位符(URL)解码,在进行解码后可以方便识别搜索请求_1中的内容。
第三步:合并服务器按照哈希算法对关键字“电脑包”进行运算得到哈希值。
在本步骤中,合并服务器可以通过用于对关键字(keyword)进行调度的Dispatch(keyword)函数,调用哈希算法对内存中缓存的字符串形式的关键字“电脑包”进行运算,得到哈希值(Hash Value)。
第四步:合并服务器确定搜索服务器集合的子集合数量以及各子集合中的搜索服务器数量。
如果本实施例中将搜索服务器集合看作是m×n台搜索服务器表示的矩阵形式,则本步骤中确定的子集合数量即矩阵中n,每个子集合中的搜索服务器数量即矩阵中的m。
第五步:确定以所述哈希值为键值对子集合内搜索服务器数量取模后得到的数值。
假设第三步中运算得到的哈希值为5,一列中搜索服务器数量为3,则本步骤中得到的数值为|5/3|=2。
第六步:针对每一子集合,合并服务器根据数值与子集合内各搜索服务器的对应关系,确定第五步中数值对应的搜索服务器。
在本实施例中,可以为同一子集合中的搜索服务器分配索引号,如同一子集合中有3台搜索服务器,则可以分别为每台搜索服务器分配一个索引号,分别为索引号_1、索引号_2和索引号_3。建立数值与索引号的对应关系,如果在第五步中运算得到的数值为2,则可以确定其对应的搜索服务器是索引号为2的搜索服务器。
在本步骤中,合并服务器可以将依次运算得到的数值分别应用到每一列中,按照相同的算法确定每一列中的应该选取的搜索服务器。本实施例也不限于合并服务器针对不同列采用不同的算法进行运算,但针对不同搜索请求在同一列中采用的算法应相同。
第七步:合并服务器将搜索请求_1发送给在各子集合中选取的搜索服务器。
本申请实施例不限于按照上述第五步的方式进行运算,也可以采用其他算法计算与搜索服务器对应的数值,只要相同的关键字采用相同的算法能够得到相同的数值即可。
针对选取的每个搜索服务器,执行以下第八步~第十步。
第八步:由于没有在二级缓存中缓存“电脑包”对应的文档列表,因此,搜索服务器执行对“电脑包”进行分词、从索引文件进行搜索以及运算得到各分词搜索结果交集的操作,得到“电脑包”对应的文档列表。
第九步:搜索服务器将得到的“电脑包”对应的文档列表缓存至二级缓存内。
第十步:搜索服务器利用“价格区间50元~100元”对写入二级缓存的文档列表做集合运算,查询出符合搜索条件的内容,并将查询出的内容进行统计、分级和排序后返回给合并服务器。
第十一步:合并服务器对接收到的n台搜索服务器返回的查询内容进行汇总,并将汇总结果作为搜索请求_1的搜索结果返回给用户A,同时还将搜索请求_1对应的搜索结果写入一级缓存中。
此时,完成了针对搜索请求_1的信息搜索过程,在T2时刻到达后,用户B发起搜索请求_2。
第十二步:合并服务器接收用户B发送的搜索请求_2,所述搜索请求_2中包含关键字“电脑包”和搜索条件“红色”。
第十三步~第十八步与上述第二步~第七步相同。
由于搜索请求_1和搜索请求_2中的关键字相同、采用的算法都是哈希算法,因此,合并服务器为搜索请求_1和搜索请求_2从同一列中选取的搜索服务器相同。
较优地,为了保证同一列中的搜索服务器的负载相对均衡,可以对选取的搜索服务器在设定时长内的负载情况进行判定,并根据判定结果进行相应的操作,具体过程为:
如果选取的搜索服务器的负载不大于设定值,则向选取的搜索服务器发送搜索请求_2;
如果选取的搜索服务器的负载大于设定值,则合并服务器需要重新选择搜索服务器,包括但不限于以下两种重新选取搜索服务器的方式:
第一种重新选取搜索服务器的方式:
合并服务器中存储多种关键字的运算结果与搜索服务器的对应关系,通过更改采用的对应关系来达到重新选取搜索服务器的目的。
例如:在本实施例针对搜索请求_1的第六步中采用第一对应关系,且针对搜索请求_2时发现根据第一对应关系选取的搜索服务器负载大于设定值时,可以采用第二对应关系,为搜索请求_2内的关键字的运算结果重新选取对应的搜索服务器。
第二种重新选取搜索服务器的方式:
合并服务器中存储多种运算关键字的算法,通过更改采用的算法来达到重新选取搜索服务器的目的。
例如:在本实施例针对搜索请求_1的第三步中采用哈希算法,且针对搜索请求_2时发现根据哈希算法选取的搜索服务器负载大于设定值时,可以采用其他算法对搜索请求_2内的关键字重新进行运算,并根据新的运算结果重新选取对应的搜索服务器。
通过上述重新选取搜索服务器的方式,可以使子集合中各搜索服务器的负载相对均衡,避免某些热门关键字的经常出现导致子集合中搜索服务器的负载不均衡。
合并服务器可以对设定时长内生成的搜索日志信息的内容进行统计分析,以确定各搜索服务器的负载量。
进一步地,如果合并服务器选取的搜索服务器出现故障、机器下线等异常情况时,可以采用一致性哈希方式解决,即将本应该发送给选取的搜索服务器的搜索请求_2转发给其他正常状态下且负载最小的搜索服务器。
针对选取的每个搜索服务器,执行以下第十九步~第二十步。
第十九步:搜索服务器直接从二级缓存内读取“电脑包”对应的文档列表。
第二十步:搜索服务器利用“红色”对读取的文档列表做集合运算,查询出符合搜索条件的内容,并将查询出的内容进行统计、分级和排序后返回给合并服务器。
第二十一步:合并服务器对接收到的n台搜索服务器返回的查询内容进行汇总,并将汇总结果作为搜索请求_2的搜索结果返回给用户B,同时还将搜索请求_2对应的搜索结果写入一级缓存中。
将本实施例二的方案与背景技术中通过搜索集群***的信息搜索过程相比,可以看出:除了首次针对新的关键字进行二级缓存搜索外,针对已进行过二级缓存搜索的关键字搜索,本申请实施例二的方案不再是随机地从子集合中选取搜索服务器,而是尽量选取已缓存相同关键字对应文档列表的搜索服务器,以减少重复进行分词、从索引文件进行搜索以及运算得到各分词搜索结果交集的操作造成的搜索时延,提高搜索集群***的性能。
仍以搜索服务器集合由2行2列的搜索服务器组成的情况为例,假设依次有用户A、用户B和用户C以“电脑包”作为搜索请求中的关键字进行搜索,并且假设一级缓存中没有对应的搜索条件。由于合并服务器按照本申请实施例一伙实施例二的方式选择同一列中的搜索服务器,因此,以第一列中的2台搜索服务器(搜索服务器_1和搜索服务器_2)为例,用户A、用户B和用户C在一列的搜索服务器中直接在二级缓存中查询出对应结果的情况有以下几种可能,如表2所示:
用户A | 用户B | 用户C | 命中率 | 出现概率 | |
情况1 | 搜索服务器_1 | 搜索服务器_1 | 搜索服务器_1 | 2/3 | 1/8 |
情况2 | 搜索服务器_1 | 搜索服务器_1 | 搜索服务器_1 | 2/3 | 1/8 |
情况3 | 搜索服务器_1 | 搜索服务器_1 | 搜索服务器_1 | 2/3 | 1/8 |
情况4 | 搜索服务器_1 | 搜索服务器_1 | 搜索服务器_1 | 2/3 | 1/8 |
情况5 | 搜索服务器_2 | 搜索服务器_2 | 搜索服务器_2 | 2/3 | 1/8 |
情况6 | 搜索服务器_2 | 搜索服务器_2 | 搜索服务器_2 | 2/3 | 1/8 |
情况7 | 搜索服务器_2 | 搜索服务器_2 | 搜索服务器_2 | 2/3 | 1/8 |
情况8 | 搜索服务器_2 | 搜索服务器_2 | 搜索服务器_2 | 2/3 | 1/8 |
表2
在表2所示的8种选取搜索服务器的情况下,在二级缓存中的平均命中率=(2/3×8)/8=2/3,相对于随机选取搜索服务器的情况,利用本申请实施例的方案得到的平均命中率提高一倍,即使为保证负载均衡或选取的搜索服务器出现异常时,不能完全实现表2所示的情况,在大部分情况下命中率仍可达到2/3,平均命中率相较于随机选取搜索服务器的情况仍有大幅度提高,可以有效地减少搜索过程的占用时长,提高搜索集群***的性能。
实施例三
本申请实施例三提供一种应用于搜索集群***中的信息搜索设备,如图4所示,包括请求接收模块11、运算模块12、选取模块13、发送模块14和结果接收模块15,其中:请求接收模块11用于接收包含关键字和搜索条件的搜索请求;运算模块12用于在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,按照设定算法对所述关键字进行运算得到运算结果;选取模块13用于根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别得到的运算结果对应的搜索服务器;发送模块14用于将所述搜索请求发送给选取的搜索服务器;结果接收模块15用于接收选取的搜索服务器返回的利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
以哈希算法作为设定算法时,所述运算模块12具体用于按照哈希算法对所述关键字进行运算得到哈希值;所述选取模块13具体用于确定以所述哈希值为键值对子集合内搜索服务器数量取模后得到的数值,并将确定的所述数值对应的搜索服务器作为选取的搜索服务器。
所述选取模块13还用于判断选取的搜索服务器在设定时长内的负载是否大于设定值;
若不大于,则触发发送模块将搜索请求发送给选取的搜索服务器;
否则,更改运算结果与子集合内各搜索服务器的对应关系,根据更改后的对应关系重新选取搜索服务器,或者,更改设定算法后对关键字重新进行运算,根据得到的运算结果重新选取对应的搜索服务器,并触发发送模块将搜索请求发送给重新选取的搜索服务器。
所述选取模块13还用于判断选取的搜索服务器是否出现异常;
若未出现异常,则触发发送模块将搜索请求发送给选取的搜索服务器;
否则,将触发发送模块搜索请求发送给未出现异常且负载最小的搜索服务器。
本实施例三中涉及的信息搜索设备可以是实施例一和实施例二中涉及的合并服务器,也可以是能够实现上述功能的其他功能实体。本申请实施例一和实施例二中以合并服务器为执行主体是优选的实施例,实施例一和实施例二也不限于以其他能够实现相应功能的执行主体。
实施例四
本申请实施例四还提供一种应用于搜索集群***的信息搜索***,该搜索***的架构可以如图2所示,包括信息搜索设备和至少一台搜索服务器,其中:信息搜索设备用于接收包含关键字和搜索条件的搜索请求,在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器,并将所述搜索请求发送给选取的搜索服务器;搜索服务器用于向信息搜索设备返回利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
所述信息搜索设备具体用于按照哈希算法对所述关键字进行运算得到哈希值,并确定以所述哈希值为键值对子集合内搜索服务器数量取模后得到的数值,将确定的所述数值对应的搜索服务器作为选取的搜索服务器。
本实施例四中的信息搜索设备还具有根据负载情况重新选取搜索服务器,以及根据搜索服务器是否出现异常的情况重新选取搜索服务器的功能。
本实施例四中的信息搜索设备可以是合并服务器,或是其他能够实现实施例一至实施例四方案的网元。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种信息搜索的方法,其特征在于,包括:
接收包含关键字和搜索条件的搜索请求;
在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器;
将所述搜索请求发送给选取的搜索服务器,指示选取的搜索服务器返回利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
2.如权利要求1所述的方法,其特征在于,选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器,具体包括:
按照哈希算法对所述关键字进行运算得到哈希值;
确定以所述哈希值为键值对子集合内搜索服务器数量取模后得到的数值;
将确定的所述数值对应的搜索服务器作为选取的搜索服务器。
3.如权利要求1或2所述的方法,其特征在于,选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器之后,且将搜索请求发送给选取的搜索服务器之前,所述方法还包括:
判断选取的搜索服务器在设定时长内的负载是否大于设定值;
若不大于,则将搜索请求发送给选取的搜索服务器;
否则,更改运算结果与子集合内各搜索服务器的对应关系,根据更改后的对应关系重新选取搜索服务器,或者,更改设定算法后对关键字重新进行运算,根据得到的运算结果重新选取对应的搜索服务器,并将搜索请求发送给重新选取的搜索服务器。
4.如权利要求1或2所述的方法,其特征在于,选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器之后,且将搜索请求发送给选取的搜索服务器之前,所述方法还包括:
判断选取的搜索服务器是否出现异常;
若未出现异常,则将搜索请求发送给选取的搜索服务器;
否则,将搜索请求发送给未出现异常且负载最小的搜索服务器。
5.一种信息搜索设备,其特征在于,包括:
请求接收模块,用于接收包含关键字和搜索条件的搜索请求;
运算模块,用于在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,按照设定算法对所述关键字进行运算得到运算结果;
选取模块,用于根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别得到的运算结果对应的搜索服务器;
发送模块,用于将所述搜索请求发送给选取的搜索服务器;
结果接收模块,用于接收选取的搜索服务器返回的利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
6.如权利要求5所述的信息搜索设备,其特征在于,
所述运算模块,具体用于按照哈希算法对所述关键字进行运算得到哈希值;
所述选取模块,具体用于确定以所述哈希值为键值对子集合内搜索服务器数量取模后得到的数值,并将确定的所述数值对应的搜索服务器作为选取的搜索服务器。
7.如权利要求5或6所述的信息搜索设备,其特征在于,
所述选取模块,还用于判断选取的搜索服务器在设定时长内的负载是否大于设定值;
若不大于,则触发发送模块将搜索请求发送给选取的搜索服务器;
否则,更改运算结果与子集合内各搜索服务器的对应关系,根据更改后的对应关系重新选取搜索服务器,或者,更改设定算法后对关键字重新进行运算,根据得到的运算结果重新选取对应的搜索服务器,并触发发送模块将搜索请求发送给重新选取的搜索服务器。
8.如权利要求5或6所述的信息搜索设备,其特征在于,
所述选取模块,还用于判断选取的搜索服务器是否出现异常;
若未出现异常,则触发发送模块将搜索请求发送给选取的搜索服务器;
否则,将触发发送模块搜索请求发送给未出现异常且负载最小的搜索服务器。
9.一种信息搜索***,其特征在于,包括信息搜索设备和至少一台搜索服务器,其中:
信息搜索设备,用于接收包含关键字和搜索条件的搜索请求,在一级缓存中未搜索出与所述搜索请求对应的搜索结果时,根据运算结果与子集合内各搜索服务器的对应关系,从搜索服务器集合的各子集合中,分别选取按照设定算法对所述关键字运算得到的运算结果对应的搜索服务器,并将所述搜索请求发送给选取的搜索服务器;
搜索服务器,用于向信息搜索设备返回利用所述搜索条件对所述关键字对应的文档列表运算后得到查询内容。
10.如权利要求9所述的信息搜索***,其特征在于,
所述信息搜索设备,具体用于按照哈希算法对所述关键字进行运算得到哈希值,并确定以所述哈希值为键值对子集合内搜索服务器数量取模后得到的数值,将确定的所述数值对应的搜索服务器作为选取的搜索服务器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010563663 CN102479207B (zh) | 2010-11-29 | 2010-11-29 | 一种信息搜索的方法、***及信息搜索设备 |
HK12107733.3A HK1167030A1 (en) | 2010-11-29 | 2012-08-07 | An information searching method, system and information searching device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010563663 CN102479207B (zh) | 2010-11-29 | 2010-11-29 | 一种信息搜索的方法、***及信息搜索设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102479207A true CN102479207A (zh) | 2012-05-30 |
CN102479207B CN102479207B (zh) | 2013-07-03 |
Family
ID=46091855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010563663 Active CN102479207B (zh) | 2010-11-29 | 2010-11-29 | 一种信息搜索的方法、***及信息搜索设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102479207B (zh) |
HK (1) | HK1167030A1 (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902610A (zh) * | 2012-12-28 | 2014-07-02 | 北大方正集团有限公司 | 搜索方法和装置 |
CN104123329A (zh) * | 2013-04-25 | 2014-10-29 | 北京千橡网景科技发展有限公司 | 搜索方法和装置 |
CN104166649A (zh) * | 2013-05-16 | 2014-11-26 | 阿里巴巴集团控股有限公司 | 一种用于搜索引擎的缓存方法和设备 |
CN103092775B (zh) * | 2013-01-31 | 2015-06-10 | 武汉大学 | 一种基于键值结构的空间数据双缓存方法及机制 |
CN104794227A (zh) * | 2015-05-04 | 2015-07-22 | 郑州悉知信息技术有限公司 | 一种信息匹配方法及装置 |
CN105306588A (zh) * | 2015-11-17 | 2016-02-03 | 高新兴科技集团股份有限公司 | 一种基于哈希算法的对网络数据进行路由分派的方法 |
CN106156166A (zh) * | 2015-04-16 | 2016-11-23 | 深圳市腾讯计算机***有限公司 | 关系链查询***、文档检索方法、索引建立方法及装置 |
CN106202224A (zh) * | 2016-06-29 | 2016-12-07 | 北京百度网讯科技有限公司 | 搜索处理方法及装置 |
CN106326462A (zh) * | 2016-08-30 | 2017-01-11 | 北京奇艺世纪科技有限公司 | 一种视频索引分级方法及装置 |
WO2017173873A1 (zh) * | 2016-04-08 | 2017-10-12 | 中兴通讯股份有限公司 | 一种网络业务的检索方法、装置、主服务器及从服务器 |
CN108241657A (zh) * | 2016-12-24 | 2018-07-03 | 北京亿阳信通科技有限公司 | 一种web数据列表处理方法及装置 |
CN108520051A (zh) * | 2018-04-04 | 2018-09-11 | 湖南蚁坊软件股份有限公司 | 一种提升Apache Lucene修饰符搜索性能的方法 |
CN109710639A (zh) * | 2018-11-26 | 2019-05-03 | 厦门市美亚柏科信息股份有限公司 | 一种基于双缓存机制的检索方法、装置及存储介质 |
CN110516141A (zh) * | 2019-07-22 | 2019-11-29 | 视联动力信息技术股份有限公司 | 数据查询方法、装置、电子设备以及可读存储介质 |
CN110955665A (zh) * | 2019-12-03 | 2020-04-03 | 支付宝(杭州)信息技术有限公司 | 缓存查询方法、装置和电子设备 |
CN111209308A (zh) * | 2020-01-09 | 2020-05-29 | 中国建设银行股份有限公司 | 一种优化分布式缓存的方法和装置 |
CN113158097A (zh) * | 2020-01-07 | 2021-07-23 | 广州探途天下科技有限公司 | 一种网络访问处理方法、装置、设备及*** |
CN113225362A (zh) * | 2020-02-06 | 2021-08-06 | 北京京东振世信息技术有限公司 | 服务器集群***和服务器集群***的实现方法 |
CN113704302A (zh) * | 2021-07-30 | 2021-11-26 | 济南浪潮数据技术有限公司 | 基于hash映射的海量数据检索方法、***、终端及存储介质 |
WO2021238555A1 (zh) * | 2020-05-26 | 2021-12-02 | 北京三快在线科技有限公司 | 信息搜索 |
CN117453986A (zh) * | 2023-12-19 | 2024-01-26 | 荣耀终端有限公司 | 一种搜索方法、后台服务器及搜索*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385605B1 (en) * | 1997-09-26 | 2002-05-07 | Kabushiki Kaisha Toshiba | Information retrieval apparatus and a method |
JP2005346342A (ja) * | 2004-06-02 | 2005-12-15 | Matsushita Electric Ind Co Ltd | 部品検索システム |
CN101071442A (zh) * | 2007-06-26 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 分布式索引文件的检索方法、检索***及检索服务器 |
US20100287172A1 (en) * | 2009-05-11 | 2010-11-11 | Red Hat, Inc . | Federated Document Search by Keywords |
-
2010
- 2010-11-29 CN CN 201010563663 patent/CN102479207B/zh active Active
-
2012
- 2012-08-07 HK HK12107733.3A patent/HK1167030A1/xx unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385605B1 (en) * | 1997-09-26 | 2002-05-07 | Kabushiki Kaisha Toshiba | Information retrieval apparatus and a method |
JP2005346342A (ja) * | 2004-06-02 | 2005-12-15 | Matsushita Electric Ind Co Ltd | 部品検索システム |
CN101071442A (zh) * | 2007-06-26 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 分布式索引文件的检索方法、检索***及检索服务器 |
US20100287172A1 (en) * | 2009-05-11 | 2010-11-11 | Red Hat, Inc . | Federated Document Search by Keywords |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902610A (zh) * | 2012-12-28 | 2014-07-02 | 北大方正集团有限公司 | 搜索方法和装置 |
CN103092775B (zh) * | 2013-01-31 | 2015-06-10 | 武汉大学 | 一种基于键值结构的空间数据双缓存方法及机制 |
CN104123329B (zh) * | 2013-04-25 | 2019-06-07 | 北京千橡网景科技发展有限公司 | 搜索方法和装置 |
CN104123329A (zh) * | 2013-04-25 | 2014-10-29 | 北京千橡网景科技发展有限公司 | 搜索方法和装置 |
CN104166649A (zh) * | 2013-05-16 | 2014-11-26 | 阿里巴巴集团控股有限公司 | 一种用于搜索引擎的缓存方法和设备 |
CN104166649B (zh) * | 2013-05-16 | 2020-03-20 | 阿里巴巴集团控股有限公司 | 一种用于搜索引擎的缓存方法和设备 |
CN106156166A (zh) * | 2015-04-16 | 2016-11-23 | 深圳市腾讯计算机***有限公司 | 关系链查询***、文档检索方法、索引建立方法及装置 |
CN104794227A (zh) * | 2015-05-04 | 2015-07-22 | 郑州悉知信息技术有限公司 | 一种信息匹配方法及装置 |
CN105306588A (zh) * | 2015-11-17 | 2016-02-03 | 高新兴科技集团股份有限公司 | 一种基于哈希算法的对网络数据进行路由分派的方法 |
WO2017173873A1 (zh) * | 2016-04-08 | 2017-10-12 | 中兴通讯股份有限公司 | 一种网络业务的检索方法、装置、主服务器及从服务器 |
CN107273381A (zh) * | 2016-04-08 | 2017-10-20 | 中兴通讯股份有限公司 | 一种网络业务的检索方法、装置、主服务器及从服务器 |
CN106202224A (zh) * | 2016-06-29 | 2016-12-07 | 北京百度网讯科技有限公司 | 搜索处理方法及装置 |
CN106326462B (zh) * | 2016-08-30 | 2019-08-09 | 北京奇艺世纪科技有限公司 | 一种视频索引分级方法及装置 |
CN106326462A (zh) * | 2016-08-30 | 2017-01-11 | 北京奇艺世纪科技有限公司 | 一种视频索引分级方法及装置 |
CN108241657B (zh) * | 2016-12-24 | 2022-01-07 | 北京亿阳信通科技有限公司 | 一种web数据列表处理方法及装置 |
CN108241657A (zh) * | 2016-12-24 | 2018-07-03 | 北京亿阳信通科技有限公司 | 一种web数据列表处理方法及装置 |
CN108520051A (zh) * | 2018-04-04 | 2018-09-11 | 湖南蚁坊软件股份有限公司 | 一种提升Apache Lucene修饰符搜索性能的方法 |
CN109710639A (zh) * | 2018-11-26 | 2019-05-03 | 厦门市美亚柏科信息股份有限公司 | 一种基于双缓存机制的检索方法、装置及存储介质 |
CN110516141A (zh) * | 2019-07-22 | 2019-11-29 | 视联动力信息技术股份有限公司 | 数据查询方法、装置、电子设备以及可读存储介质 |
CN110955665A (zh) * | 2019-12-03 | 2020-04-03 | 支付宝(杭州)信息技术有限公司 | 缓存查询方法、装置和电子设备 |
CN113158097A (zh) * | 2020-01-07 | 2021-07-23 | 广州探途天下科技有限公司 | 一种网络访问处理方法、装置、设备及*** |
CN111209308A (zh) * | 2020-01-09 | 2020-05-29 | 中国建设银行股份有限公司 | 一种优化分布式缓存的方法和装置 |
CN111209308B (zh) * | 2020-01-09 | 2023-06-16 | 建信金融科技有限责任公司 | 一种优化分布式缓存的方法和装置 |
CN113225362A (zh) * | 2020-02-06 | 2021-08-06 | 北京京东振世信息技术有限公司 | 服务器集群***和服务器集群***的实现方法 |
CN113225362B (zh) * | 2020-02-06 | 2024-04-05 | 北京京东振世信息技术有限公司 | 服务器集群***和服务器集群***的实现方法 |
WO2021238555A1 (zh) * | 2020-05-26 | 2021-12-02 | 北京三快在线科技有限公司 | 信息搜索 |
CN113704302A (zh) * | 2021-07-30 | 2021-11-26 | 济南浪潮数据技术有限公司 | 基于hash映射的海量数据检索方法、***、终端及存储介质 |
CN117453986A (zh) * | 2023-12-19 | 2024-01-26 | 荣耀终端有限公司 | 一种搜索方法、后台服务器及搜索*** |
CN117453986B (zh) * | 2023-12-19 | 2024-05-24 | 荣耀终端有限公司 | 一种搜索方法、后台服务器及搜索*** |
Also Published As
Publication number | Publication date |
---|---|
CN102479207B (zh) | 2013-07-03 |
HK1167030A1 (en) | 2012-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102479207B (zh) | 一种信息搜索的方法、***及信息搜索设备 | |
CN100462979C (zh) | 分布式索引文件的检索方法、检索***及检索服务器 | |
CN104679778B (zh) | 一种搜索结果的生成方法及装置 | |
CN110909025A (zh) | 数据库的查询方法、查询装置及终端 | |
US20150127691A1 (en) | Efficient implementations for mapreduce systems | |
CN103618787B (zh) | 一种网页展现***和方法 | |
CN103218455A (zh) | Key-Value数据库用户请求的高速并发处理方法 | |
CN103678172A (zh) | 一种本地数据缓存管理方法及装置 | |
CN104065540A (zh) | 一种数据监控***和方法 | |
CN112236760B (zh) | 一种图数据的更新方法、***、计算机可读存储介质及设备 | |
CN103544261A (zh) | 一种海量结构化日志数据全局索引管理方法及装置 | |
CN105721538A (zh) | 数据访问的方法和装置 | |
CN112732756B (zh) | 数据查询方法、装置、设备及存储介质 | |
CN113392863A (zh) | 一种机器学习训练数据集的获取方法、获取装置及终端 | |
CN103412883A (zh) | 基于p2p技术的语义智能信息发布订阅方法 | |
CN112035531A (zh) | 敏感数据处理方法、装置、设备及介质 | |
Bornea et al. | Adaptive join operators for result rate optimization on streaming inputs | |
CN113190528B (zh) | 一种并行分布式大数据架构构建方法及*** | |
CN105574010B (zh) | 数据查询方法及装置 | |
CN105282045A (zh) | 一种基于一致性哈希算法的分布式计算和储存方法 | |
WO2015015727A1 (ja) | ストレージ装置、データアクセス方法およびプログラム記録媒体 | |
CN112231398A (zh) | 数据存储方法、装置、设备及存储介质 | |
CN109213972B (zh) | 确定文档相似度的方法、装置、设备和计算机存储介质 | |
CN115617859A (zh) | 基于知识图谱集群的数据查询方法和装置 | |
US10067678B1 (en) | Probabilistic eviction of partial aggregation results from constrained results storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1167030 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |