CN107273540A - 分布式搜索及索引更新方法、系统、服务器及计算机设备 - Google Patents
分布式搜索及索引更新方法、系统、服务器及计算机设备 Download PDFInfo
- Publication number
- CN107273540A CN107273540A CN201710540135.0A CN201710540135A CN107273540A CN 107273540 A CN107273540 A CN 107273540A CN 201710540135 A CN201710540135 A CN 201710540135A CN 107273540 A CN107273540 A CN 107273540A
- Authority
- CN
- China
- Prior art keywords
- server
- index
- main control
- information
- engine
- 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
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
-
- 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/951—Indexing; Web crawling techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
Abstract
本发明实施例公开了一种分布式搜索及索引更新方法、系统、服务器及计算机设备。所述方法包括:多个代理服务器中的至少一个代理服务器接收到查询服务器的查询请求数据,获得所述查询请求数据对应的属性信息;所述至少一个代理服务器基于所述属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,向所述机器信息对应的至少两个引擎服务器发送所述查询请求数据;所述至少一个代理服务器获得所述至少两个引擎服务器返回的第一查询结果,将至少两个第一查询结果按照预设规则合并为第二查询结果,并将所述第二查询结果发送至所述查询服务器。
Description
技术领域
本发明涉及搜索技术,具体涉及一种分布式搜索及索引更新方法、系统、服务器及计算机设备。
背景技术
近年来,随着移动互联网的发展,人们可以方便的通过移动设备访问网络,获取网络服务,由此而兴起了一批线上到线下(O2O,Online-to-Offline)本地生活化服务,极大的方便了人们的生活。但随着业务的爆发性增长,搜索引擎需要查询的数据量也越来越大,单机内存已存储不下这些数据,并且对于大请求,查询请求的延时也越来越大,系统稳定性也越来越低,用户体验也越来越差。
传统的搜索系统将搜索、索引和索引维护程序放在一台服务器上,或者将索引拆分到多台机器上,但依然是由引擎这块负责管理索引,当搜索并发量大的情况下,无法进行实时扩展,并且业务量越来越多,需要的索引数也越来越多,运维成本也越来越大,给线上稳定性带来很多问题。
现有的分布式搜索系统主要是一主(master)从(slave)结构,缺点是主服务器需要选举,而当主服务器出现异常无法工作时,需要重新选举主服务器,重新选举的时间为秒级别,这就导致在重新选取的时间内搜索服务不可用,影响了线上稳定性。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种分布式搜索及索引更新方法、系统、服务器及计算机设备。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种分布式搜索方法,所述方法包括:
多个代理服务器中的至少一个代理服务器接收到查询服务器的查询请求数据,获得所述查询请求数据对应的属性信息;
所述至少一个代理服务器基于所述属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,向所述机器信息对应的至少两个引擎服务器发送所述查询请求数据;
所述至少一个代理服务器获得所述至少两个引擎服务器返回的第一查询结果,将至少两个第一查询结果按照预设规则合并为第二查询结果,并将所述第二查询结果发送至所述查询服务器。
上述方案中,所述获得所述至少两个引擎服务器返回的第一查询结果,包括:
基于预先配置的截断参数,所述至少一个代理服务器获得满足所述截断参数的第一查询结果。
本发明实施例还提供了一种索引更新方法,其特征在于,所述方法包括:
主控服务器从配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器,以使索引创建服务器将待创建的索引数据进行拆分;
所述主控服务器获得表征拆分结果的索引配置信息;
所述主控服务器基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中。
上述方案中,所述主控服务器包括主控模块和通知模块;
所述主控服务器从配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器,包括:
所述主控模块从配置管理服务器获得拆分规则,发送所述拆分规则至所述通知模块,所述通知模块发送所述拆分规则至索引创建服务器。
上述方案中,所述主控服务器包括主控模块和通知模块;
所述主控服务器获得表征拆分结果的索引配置信息,包括:
所述通知模块获得表征拆分结果的索引配置信息,发送所述索引配置信息至所述主控模块。
上述方案中,所述主控服务器包括主控模块和多个客户端模块;所述多个客户端模块与所述多个引擎服务器一一对应;
所述主控服务器基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中,包括:
所述主控模块基于所述索引配置信息指示第一客户端模块获取索引数据;所述第一客户端模块为所述索引配置信息中包括的拆分结果对应的至少两个客户端模块中的任一客户端模块;
所述第一客户端模块将获取的所述索引数据存储至多个引擎服务器中与所述第一客户端模块相对应的引擎服务器中。
本发明实施例还提供了一种代理服务器,所述代理服务器包括通讯单元和处理单元;其中,
所述通讯单元用于:接收来自查询服务器的查询请求数据,将所述查询请求数据发送至所述处理单元;向所述处理单元确定的至少两个引擎服务器发送所述查询请求数据;获得所述至少两个引擎服务器返回的第一查询结果;以及将所述处理单元合并得到的第二查询结果发送至所述查询服务器;
所述处理单元用于:获得所述查询请求数据对应的属性信息;基于所述处理单元获得的属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,确定所述机器信息对应的所述至少两个引擎服务器;将至少两个由所述通讯单元获得的第一查询结果按照预设规则合并得到第二查询结果。
本发明实施例还提供了一种主控服务器,其特征在于,所述主控服务器包括主控模块和通知模块;其中,
所述主控模块用于:从配置管理服务器获得拆分规则,发送所述拆分规则至所述通知模块;以及基于所述通知模块发送的索引配置信息指示获取索引数据,并将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中;
所述通知模块用于:发送所述拆分规则至索引创建服务器,以使所述索引创建服务器将待创建的索引数据进行拆分;以及获得表征拆分结果的索引配置信息,并发送所述索引配置信息至所述主控模块。
上述方案中,所述主控服务器还包括多个客户端模块;所述多个客户端模块与多个引擎服务器一一对应;其中,
所述主控模块基于所述通知模块发送的索引配置信息指示第一客户端模块获取第一索引数据;所述第一客户端模块为所述索引配置信息中包括的第一拆分结果对应的客户端模块;
所述第一客户端模块,用于基于所述主控模块的指示获取索引数据,将所述索引数据存储至对应的引擎服务器中。
本发明实施例还提供了一种分布式搜索系统,其特征在于,所述系统包括:配置管理服务器、查询服务器、本发明实施例所述的多个代理服务器和多个引擎服务器;其中,
所述配置管理服务器用于管理配置信息和机器信息,所述配置信息包括拆分规则,所述机器信息表征所述多个引擎服务器的信息;
所述查询服务器用于获得终端设备的查询请求数据,将所述查询请求数据发送至所述代理服务器,并在收到所述第二查询结果时将所述第二查询结果发送至所述终端设备;
所述多个引擎服务器中的每个引擎服务器用于存储满足所述拆分规则的索引数据,并在收到所述查询请求数据时回复所述第一查询结果。
上述方案中,所述系统还包括本发明实施例所述的主控服务器和索引创建服务器;其中,
所述索引创建服务器用于基于所述主控服务器发送的拆分规则将待创建的索引数据进行拆分,将表征拆分结果的索引配置信息发送至所述主控服务器。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明实施例所述分布式搜索方法的步骤。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明实施例所述索引更新方法的步骤。
采用本发明实施例的技术方案,通过多个代理服务器联结查询服务器和引擎服务器以代替现有技术中的主服务器联结的架构,查询服务器的查询请求数据发送至至少一个代理服务器,由至少一个代理服务器从相应的至少两个引擎服务器中获得查询结果;多个代理服务器相互之间具有并行关系的,一个代理服务器无法工作还可通过其他代理服务器工作,避免了现有技术中主设备无法工作时需要重新选择主设备导致短时间内搜索服务不可用的问题。另外,相较于现有技术中的主设备不仅需要提供查询功能,还需要承担索引的更新维护,本发明实施例的代理服务器无需承担索引的更新维护,大大降低了代理服务器的负担。
附图说明
图1为本发明实施例一的索引更新方法的流程示意图;
图2为本发明实施例一中的分布式搜索方法的应用架构以及数据交互示意图;
图3为本发明实施例二的分布式搜索方法的流程示意图;
图4为本发明实施例二中的分布式搜索方法的应用架构以及数据交互示意图;
图5为本发明实施例的代理服务器的组成结构示意图;
图6为本发明实施例的主控服务器的组成结构示意图;
图7为本发明实施例的计算机设备的组成结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细的说明。
实施例一
本发明实施例提供了一种索引更新方法。图1为本发明实施例一的索引更新方法的流程示意图;如图1所示,所述方法包括:
步骤101:主控服务器从配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器,以使索引创建服务器将待创建的索引数据进行拆分。
步骤102:所述主控服务器获得表征拆分结果的索引配置信息。
步骤103:所述主控服务器基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中,以更新所述至少两个第一引擎服务器中存储的索引数据。
本实施例的索引更新方法应用于主控服务器中,所述主控服务器具体可以是服务器或服务器集群。在一实施例中,所述主控服务器包括主控模块、通知模块和多个客户端模块,具体可参照图2所示;所述主控模块主要负责统一调度;所述通知模块主要负责通知索引创建服务器;所述通知模块的数量可以是至少一个,至少一个通知模块可基于业务类型的不同进行区分,例如每个通知模块用于通知属于相应业务类型的索引创建的相关信息;所述客户端模块的数量与引擎服务器的数量相同,且每个客户端模块对应一个引擎服务器,所述客户端模块用于根据主控模块的指示拉取索引数据,将拉取的索引数据存储至对应的引擎服务器中。所述主控模块、每个通知模块可通过独立的服务器实现;所述客户端模块可位于对应的引擎服务器中、通过对应的引擎服务器实现相应功能。在实际应用中,所述主控模块可配置备用主控模块;每个通知模块也可配置对应的备用通知模块,每个客户端模块也可配置对应的备用客户端模块,以防止主模块出现异常无法工作时,可通过相应的备用模块继续执行相应的功能。
本实施例中,所述配置管理服务器用于管理配置信息和机器信息;所述机器信息表征所述多个引擎服务器的信息;其中,引擎服务器的信息可包括引擎服务器的IP地址和端口等信息;作为一种示例,所述机器信息可通过包含有上述引擎服务器的信息的机器列表表示。所述配置信息至少包括业务标识、机器配置信息以及配置的规则信息等等;其中,所述机器配置信息具体包括机器列表,也即包括引擎服务器的IP地址和端口等信息;所述规则信息包括在搜索过程中所需要的任何操作规则,至少包括索引创建时所需要的拆分规则、索引创建规则、通知模块执行哪一种或几种业务类型的索引创建的通知信息的配置规则、客户端模块执行拉取哪一种或几种业务类型对应的索引数据的配置规则等等,当然不限于上述几种规则。
基于此,本实施例中,主控服务器从配置管理服务器中获得配置信息中的拆分规则,将所述拆分规则发送至索引创建服务器;具体包括:主控模块从配置管理服务器获得拆分规则,当然也包括索引创建规则,发送所述拆分规则和所述索引创建规则至所述通知模块,所述通知模块发送所述拆分规则和所述索引创建规则至索引创建服务器。其中,所述通知模块的数量可依据业务类型的不同配置有多个,则所述主控模块可依据待创建的索引数据的业务类型从所述配置管理服务器中获得与所述业务类型相匹配的拆分规则和索引创建规则,将所述拆分规则和所述索引创建规则发送至与所述业务类型相匹配的通知模块;所述通知模块再将所述拆分规则和所述索引创建规则发送至所述索引创建服务器。另一方面,所述索引创建服务器依据所述索引创建规则创建索引,进一步依据所述拆分规则将创建的索引数据进行拆分;其中,所述拆分规则中包括拆分参数,所述拆分参数具体可包括拆分数量,所述拆分数量用于表征索引数据的拆分数量,例如所述拆分数量为N时,表征将索引数据拆分为N份索引子数据;N为大于等于2的正整数,以表示创建的索引数据会分布存储在至少两个引擎服务器中。例如,search_online_dis_1和search_online_dis_2是一份完整的索引数据,可依据拆分规则将其水平拆分为两个索引数据;所述两个索引数据可分别存储在一引擎服务器中。进一步地,所述索引创建服务器基于创建完成、且拆分后的索引数据生成索引配置信息,所述索引配置信息可包括多个,或者所述索引配置信息可包括多个索引配置子信息;多个所述索引配置信息或所述多个索引配置子信息表征索引数据的拆分结果,以及包括拆分后的每个索引子数据对应的引擎服务器,所述多个所述索引配置信息中的每个索引配置信息或者所述多个索引配置子信息中的每个索引配置子信息用于表示相应的引擎服务器对应获取并存储哪些索引数据。则所述通知模块获得索引配置信息,将所述索引配置信息发送至所述主控模块,由所述主控模块进一步指示相应的客户端模块进行索引数据的拉取。
本实施例中,所述主控服务器基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中,具体包括:所述主控模块基于所述索引配置信息指示第一客户端模块获取索引数据;所述第一客户端模块为所述索引配置信息中包括的拆分结果对应的至少两个客户端模块中的任一客户端模块;所述第一客户端模块将获取的所述索引数据存储至多个引擎服务器中、与所述第一客户端模块对应的引擎服务器中。具体的,所述主控模块依据多个索引配置信息中的任一索引配置信息或者索引配置信息中包括的多个索引配置子信息中的任一索引配置子信息所包括的索引数据对应的引擎服务器指示所述引擎服务器对应的第一客户端模块,所述第一客户端模块基于所述主控模块的指示拉取相应的索引数据并将拉取的索引数据存储至所述第一客户端模块对应的引擎服务器中。
可以理解为,本实施例的分布式搜索方法为索引数据的拉取更新过程,其具体可以作为离线的数据处理过程。参照图2所示,结合各服务器和各模块的数据处理过程可如下:
步骤21:主控模块从配置管理服务器获得拆分规则和索引创建规则。作为一种实施方式,所述主控模块可根据待创建的索引数据的业务类型获得与所述业务类型相匹配的拆分规则和索引创建规则。
步骤22和步骤23:所述主控模块将所述拆分规则和索引创建规则发送至通知模块;所述通知模块再将所述拆分规则和索引创建规则发送至索引创建服务器。所述索引创建服务器依据索引创建规则创建索引数据,以及依据拆分规则将索引数据拆分为N个索引子数据,基于创建完成、且拆分后的索引数据生成索引配置信息,所述索引配置信息可包括多个,或者所述索引配置信息可包括多个索引配置子信息;多个所述索引配置信息或所述多个索引配置子信息表征索引数据的拆分结果,以及包括拆分后的每个索引子数据对应的引擎服务器,所述多个所述索引配置信息中的每个索引配置信息或者所述多个索引配置子信息中的每个索引配置子信息用于表示相应的引擎服务器对应获取并存储哪些索引数据。
步骤24和步骤25:索引创建服务器将索引配置信息发送至所述通知模块,所述通知模块将所述索引配置信息发送至所述主控模块。其中,所述通知模块的数量可以为多个;多个通知模块可依据业务类型进行功能配置,即不同的通知模块执行相应业务类型的通知功能,也即主控模块依据业务类型获得拆分规则和索引创建规则,将获得的拆分规则和索引创建规则发送至与业务类型相匹配的通知模块;相应的,所述索引创建服务器将索引配置信息发送至与业务类型相匹配的通知模块。可以理解为,具有相应业务类型的多个通知模块可并行工作。
步骤26:主控模块依据索引配置信息指示客户端模块。作为一种实施方式,所述主控模块可依据多个索引配置信息中的任一索引配置信息或者索引配置信息中包括的多个索引配置子信息中的任一索引配置子信息所包括的索引数据对应的引擎服务器指示所述引擎服务器对应的客户端模块,所述客户端模块基于所述主控模块的指示拉取相应的索引数据并将拉取的索引数据存储至所述客户端模块对应的引擎服务器中。
采用本发明实施例的技术方案,引擎服务器只需要加载对应的索引数据即可,索引数据的更新功能通过主控服务器(具体可以是主控服务器中的客户端模块)实现,相较于现有技术中具有查询功能和索引更新维护功能的主服务器来说,大大降低了服务器的负担。索引数据分布存储在多个引擎服务器中,在搜索过程中大大降低了引擎服务器的内存使用,解决了现有技术中由于查询的数据量较大使得内存容量不足的问题,且大大提升了搜索的效率,减少了搜索的响应时间,提升了用户的操作体验。
实施例二
本发明实施例还提供了一种分布搜索方法。图3为本发明实施例二的分布式搜索方法的流程示意图;如图3所示,所述方法包括:
步骤301:多个代理服务器中的至少一个代理服务器接收到查询服务器的查询请求数据,获得所述查询请求数据对应的属性信息。
步骤302:所述至少一个代理服务器基于所述属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,向所述机器信息对应的至少两个引擎服务器发送所述查询请求数据。
步骤303:所述至少一个代理服务器获得所述至少两个引擎服务器返回的第一查询结果,将至少两个第一查询结果按照预设规则合并为第二查询结果,并将所述第二查询结果发送至所述查询服务器。
本实施例的分布式搜索方法应用于代理服务器中;所述多个代理服务器中的每个代理服务器均具有相同的功能。图4为本发明实施例二中的分布式搜索方法的应用架构以及数据交互示意图;如图4所示,在本实施例中以代理服务器的数量为两个为例进行说明。
本实施例中,多个代理服务器中的至少一个代理服务器接收到查询服务器的查询请求数据;也即查询服务器接收到终端设备的查询请求数据后,按照预设规则将所述查询请求数据发送至至少一个代理服务器;其中,所述预设规则可以是轮询规则或者随机规则等等。在实际应用中,可预先对多个代理服务器进行编号,所述轮询规则具体可以是基于所述多个代理服务器的编号顺序依次发送查询请求数据;例如,以将查询请求数据发送至一个代理服务器为例,查询服务器接收到查询请求数据1时,发送所述查询请求数据1至代理服务器1;查询服务器接收到查询请求数据2时,可发送所述查询请求数据2至代理服务器2,以此类推;所述查询请求数据1和所述查询请求数据2具体可根据数据接收时间确定。而所述随机规则具体可以是将接收到的查询请求数据按照预设随机算法发送至相对应的至少一个代理服务器。
本实施例中,所述至少一个代理服务器获得所述查询请求数据对应的属性信息,所述属性信息具体可以为所述查询请求数据对应的业务类型,基于所述业务类型向配置管理服务器请求机器信息。实际应用中,所述配置管理服务器用于管理配置信息和机器信息;所述机器信息表征所述多个引擎服务器的信息;其中,引擎服务器的信息可包括引擎服务器的IP地址和端口等信息;所述配置信息至少包括业务标识、机器配置信息以及配置的规则信息等等,可以理解为,不同的业务标识可对应不同引擎服务器,也即不同类型的索引数据存储在不同的引擎服务器中。但本发明实施例中,基于实施例一的描述可知,在对引擎服务器中的索引数据进行更新存储时,基于拆分规则对索引数据进行了拆分,因此,属于同一业务类型的索引数据存储在至少两个引擎服务器中。
基于此,本实施例中,所述至少一个代理服务器查询配置管理服务器,获得所述属性信息对应的机器信息,所述机器信息中包括至少两个引擎服务器的标识,所述至少两个引擎服务器的标识表明所述查询请求数据中对应的索引数据存储在所述至少两个引擎服务器的标识对应的至少两个引擎服务器中。在具体实现过程中,所述机器信息可通过一机器列表实现。因此,所述至少一个代理服务器根据所述机器信息向对应的至少两个引擎服务器发送所述查询请求数据,以获得所述查询请求数据中包括的关键字或关键词、关联关键字或关联关键词对应的索引数据。
作为一种实施方式,所述获得所述至少两个引擎服务器返回的第一查询结果,包括:基于预先配置的截断参数,所述至少一个代理服务器获得满足所述截断参数的第一查询结果。
具体的,所述截断参数表示任一引擎服务器返回的查询结果中的索引数据的数量。例如,若一引擎服务器获得的查询结果包括1000个索引数据,而所述截断参数为600,则该引擎服务器返回所述1000个索引数据中的前600个索引数据。这样可大大降低搜索时延以及提升每秒查询率(QPS,Query Per Second)。其中,所述截断参数可由配置管理服务器进行配置,由主控服务器中的主控模块获得该截断参数,并发送至各引擎服务器中进行配置。
本实施例中,所述至少一个代理服务器获得至少两个引擎服务器返回的第一查询结果,将获得的至少两个第一查询结果按照预设规则进行合并以及排序,合并且排序处理后生成第二查询结果,将所述第二查询结果发送至所述查询服务器,由所述查询服务器发送至终端设备以输出显示给用户。
可以理解为,本实施例的分布式搜索方法为搜索查询过程,其具体可以作为在线的数据处理过程。参照图4所示,结合各服务器的数据处理过程如下:
步骤41和步骤42:查询服务器获得终端设备的查询请求数据,将查询请求数据发送至代理服务器,所述代理服务器可以是多个代理服务器中的至少一个代理服务器;或者,所述代理服务器也可以是与查询请求数据的业务类型对应的代理服务器;或者,所述代理服务器可以是多个代理服务器中基于预设规则(例如轮询规则或者随机规则等)确定的一代理服务器。
其中,所述查询服务器对接收到的所述查询请求数据进行分析,一方面,获得所述查询请求数据中的关键字或关键词,另一方面,获得所述关键字或关键词具有关联关系的关联关键字或关联关键词,也即对所述查询请求数据进行意图识别。例如,所述查询请求数据中包括的关键字或关键词为一餐厅名字,则对所述关键词或关键词进行意图识别可获得关联关键字或关联关键词为订餐或外卖等等。再例如,所述查询请求数据中包括的关键字或关键词为字符串,则通过意图识别确定该字符串为一中文词语的拼音,则对应的关联关键字或关联关键词可以为该中文词语等等。进一步基于意图识别后获得的至少一个关键词生成至少一个查询请求数据,将所述至少一个查询请求数据分别发送至对应的至少一个代理服务器。
步骤43:代理服务器基于所述查询请求数据的属性信息(例如业务类型)向配置管理服务器请求机器列表,从而获得所述查询请求数据对应的索引数据所在的引擎服务器的信息。
步骤44和步骤45:所述代理服务器基于获得的机器列表相对应的至少两个引擎服务器发送查询请求数据,所述至少两个引擎服务器基于所述查询请求数据中的内容加载索引数据,向所述代理服务器返回查询结果。其中,所述索引服务器可基于预先配置的截断参数控制查询结果中的索引数据的数量,从而减少查询延时以及提升QPS。
步骤46和步骤47:所述代理服务器将获得的至少两个查询结果按照预设规则进行合并以及排序生成查询结果,将所述查询结果发送至所述查询服务器,所述查询服务器将所述查询结果发送至终端设备,以供终端设备输出显示给用户。
采用本发明实施例的技术方案,通过多个代理服务器联结查询服务器和引擎服务器以代替现有技术中的主服务器联结的架构,查询服务器的查询请求数据发送至至少一个代理服务器,由至少一个代理服务器从相应的至少两个引擎服务器中获得查询结果;多个代理服务器具有相同的功能,多个代理服务器相互之间具有并行关系,一个代理服务器无法工作还可通过其他代理服务器工作,避免了现有技术中主设备无法工作时需要重新选择主设备导致短时间内搜索服务不可用的问题。相较于现有技术中的主设备不仅需要提供查询功能,还需要承担索引的更新维护,本发明实施例的代理服务器无需承担索引的更新维护,大大降低了代理服务器的负担。
实施例三
本发明实施例还提供了一种分布搜索系统,所述分布搜索系统具体可参照图4和图2所示,所述系统包括:配置管理服务器、查询服务器、多个代理服务器和多个引擎服务器;其中,
所述配置管理服务器用于管理配置信息和机器信息;所述配置信息包括拆分规则;所述机器信息表征所述多个引擎服务器的信息;
所述代理服务器,用于接收到所述查询服务器的查询请求数据,获得所述查询请求数据对应的属性信息;基于所述属性信息查询所述配置管理服务器,获得所述属性信息对应的机器信息,向所述机器信息对应的至少两个引擎服务器发送所述查询请求数据;获得所述至少两个引擎服务器返回的第一查询结果,将至少两个第一查询结果按照预设规则合并为第二查询结果,将所述第二查询结果发送至所述查询服务器;
所述查询服务器用于获得终端设备的查询请求数据,将所述查询请求数据发送至所述代理服务器,并在收到所述第二查询结果时将所述第二查询结果发送至所述终端设备;
所述多个引擎服务器中的每个引擎服务器用于存储满足所述拆分规则的索引数据,并在收到所述查询请求数据时回复所述第一查询结果。
本实施例中,所述系统还包括主控服务器和索引创建服务器;其中,
所述主控服务器用于从所述配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器;以及获得所述索引创建服务器发送的表征拆分结果的索引配置信息;基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个第一引擎服务器中;
所述索引创建服务器用于基于所述拆分规则将待创建的索引数据进行拆分,将表征拆分结果的索引配置信息发送至所述主控服务器。
作为一种实施方式,所述代理服务器用于基于预先配置的截断参数,获得满足所述截断参数的查询结果。
本发明实施例的分布搜索系统,通过多个代理服务器联结查询服务器和引擎服务器以代替现有技术中的主服务器联结的架构,将现有技术中的主服务器的查询功能以及索引更新维护功能分别通过代理服务器以及主控服务器实现,通过这种分布搜索架构将搜索的各功能分布到各个执行实体上,例如多个代理服务器,多个引擎服务器、主控服务器(主控服务器中包括主控模块、多个客户端模块和多个通知模块)等等,大大提升了分布式搜索系统的可扩展性以及系统的稳定性。在实际应用中,通过线上以单个索引统计,前50%时间查询延时减少50%,前90%时间查询延时减少54.5%,前99%时间查询延时减少46%,提高了用户体验。
实施例四
本发明实施例还提供了一种代理服务器。如图5为本发明实施例的代理服务器的组成结构示意图,如图5所示,所述代理服务器包括通讯单元51和处理单元52;其中,
所述通讯单元51用于:接收来自查询服务器的查询请求数据,将所述查询请求数据发送至所述处理单元52;向所述处理单元52确定的至少两个引擎服务器发送所述查询请求数据;获得所述至少两个引擎服务器返回的第一查询结果;以及将所述处理单元52合并的第二查询结果发送至所述查询服务器;
所述处理单元52用于:获得所述查询请求数据对应的属性信息;基于获得的属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,确定所述机器信息对应的所述至少两个引擎服务器;将至少两个由所述通讯单元51获得的所述第一查询结果按照预设规则合并得到第二查询结果。
作为一种实施方式,所述通讯单元51,用于基于预先配置的截断参数,获得满足所述截断参数的查询结果。
本发明实施例中,所述代理服务器中的处理单元52,在实际应用中可由所述代理服务器中的中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,DigitalSignal Processor)、微控制单元(MCU,MicrocontrollerUnit)或可编程门阵列(FPGA,Field-Programmable GateArray)实现;所述代理服务器中的通讯单元51,在实际应用中可通过通信模组(包含:基础通信套件、操作系统、通信模块、标准化接口和协议等)及收发天线实现。
实施例五
本发明实施例还提供了一种主控服务器。图6为本发明实施例的主控服务器的组成结构示意图,如图6所示,所述主控服务器包括主控模块61和通知模块62;其中,
所述主控模块61用于:从配置管理服务器获得拆分规则,发送所述拆分规则至所述通知模块62;以及基于所述通知模块62发送的索引配置信息指示获取索引数据,并将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中;
所述通知模块62用于:发送所述拆分规则至索引创建服务器,以使所述索引创建服务器将待创建的索引数据进行拆分;以及获得表征拆分结果的索引配置信息,并发送所述索引配置信息至所述主控模块61。
本实施例中,所述主控服务器还包括多个客户端模块63;所述多个客户端模块63与多个引擎服务器一一对应;其中,
所述主控模块61用于从配置管理服务器获得拆分规则,发送所述拆分规则至所述通知模块62;以及基于所述通知模块62发送的索引配置信息指示第一客户端模块获取第一索引数据;所述第一客户端模块为所述索引配置信息中包括的第一拆分结果对应的客户端模块;
所述通知模块62用于:发送所述拆分规则至索引创建服务器;以及获得表征拆分结果的索引配置信息,发送所述索引配置信息至所述主控模块61;
所述第一客户端模块基于所述主控模块61的指示获取索引数据,将所述索引数据存储至对应的引擎服务器中。
本实施例中,所述主控服务器具体可以是服务器集群。所述主控模块61主要负责统一调度;所述通知模块62主要负责通知索引创建服务器;所述通知模块62的数量可以是至少一个,至少一个通知模块62可基于业务类型的不同进行区分,例如每个通知模块62用于通知属于相应业务类型的索引创建的相关信息;所述客户端模块63的数量与引擎服务器的数量相同,且每个客户端模块63对应一个引擎服务器,所述客户端模块63用于根据主控模块61的指示拉取索引数据,将拉取的索引数据存储至对应的引擎服务器中。所述主控模块61、每个通知模块62可通过独立的服务器实现;所述客户端模块63可位于对应的引擎服务器中、通过对应的引擎服务器实现相应功能。在实际应用中,所述主控模块61可配置备用主控模块61;每个通知模块62也可配置对应的备用通知模块62,每个客户端模块63也可配置对应的备用客户端模块63,以防止主模块出现异常无法工作时,可通过相应的备用模块继续执行相应的功能。
实施例六
本发明实施例还提供了一种计算机设备,图7为本发明实施例的计算机设备的组成结构示意图,如图7所示。所述计算机设备包括处理器71、存储器72以及至少一个外部通信接口73;所述处理器71、存储器72以及外部通信接口73均通过总线74连接;所述存储器72中存储有可在处理器71上运行的计算机程序;其中,在所述计算机设备作为代理服务器时,所述处理器71执行所述程序时实现以下步骤:
接收来自查询服务器的查询请求数据,获得所述查询请求数据对应的属性信息;
基于所述属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,向所述机器信息对应的至少两个引擎服务器发送所述查询请求数据;
获得所述至少两个引擎服务器返回的第一查询结果,将至少两个第一查询结果按照预设规则合并为第二查询结果,并将所述第二查询结果发送至所述查询服务器。
作为一种实施方式,所述处理器71执行所述程序时实现以下步骤:基于预先配置的截断参数,所述代理服务器获得满足所述截断参数的查询结果。
在计算机设备作为主控服务器时,所述处理器71执行所述程序时实现以下步骤:从配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器,以使索引创建服务器将待创建的索引数据进行拆分;获得表征拆分结果的索引配置信息;基于所述索引配置信息获取索引数据,并将所述索引数据存储至多个引擎服务器中相对应的至少两个引擎服务器中。
这里需要指出的是:以上涉及计算机设备的描述,与上述方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明计算机设备实施例中未披露的技术细节,请参照本发明方法实施例的描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。例如前面所述的各种服务器,可以是物理上的一台硬件机器,也可以是运行于服务器集群中的一个软件模块。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (13)
1.一种分布式搜索方法,其特征在于,所述方法包括:
多个代理服务器中的至少一个代理服务器接收到查询服务器的查询请求数据,获得所述查询请求数据对应的属性信息;
所述至少一个代理服务器基于所述属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,向所述机器信息对应的至少两个引擎服务器发送所述查询请求数据;
所述至少一个代理服务器获得所述至少两个引擎服务器返回的第一查询结果,将至少两个第一查询结果按照预设规则合并为第二查询结果,并将所述第二查询结果发送至所述查询服务器。
2.根据权利要求1所述的方法,其特征在于,所述获得所述至少两个引擎服务器返回的第一查询结果,包括:
基于预先配置的截断参数,所述至少一个代理服务器获得满足所述截断参数的第一查询结果。
3.一种索引更新方法,其特征在于,所述方法包括:
主控服务器从配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器,以使索引创建服务器将待创建的索引数据进行拆分;
所述主控服务器获得表征拆分结果的索引配置信息;
所述主控服务器基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中。
4.根据权利要求3所述的方法,其特征在于,所述主控服务器包括主控模块和通知模块;
所述主控服务器从配置管理服务器获得拆分规则,发送所述拆分规则至索引创建服务器,包括:
所述主控模块从配置管理服务器获得拆分规则,发送所述拆分规则至所述通知模块,所述通知模块发送所述拆分规则至索引创建服务器。
5.根据权利要求3所述的方法,其特征在于,所述主控服务器包括主控模块和通知模块;
所述主控服务器获得表征拆分结果的索引配置信息,包括:
所述通知模块获得表征拆分结果的索引配置信息,发送所述索引配置信息至所述主控模块。
6.根据权利要求3所述的方法,其特征在于,所述主控服务器包括主控模块和多个客户端模块;所述多个客户端模块与所述多个引擎服务器一一对应;
所述主控服务器基于所述索引配置信息获取索引数据,将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中,包括:
所述主控模块基于所述索引配置信息指示第一客户端模块获取索引数据;所述第一客户端模块为所述索引配置信息中包括的拆分结果对应的至少两个客户端模块中的任一客户端模块;
所述第一客户端模块将获取的所述索引数据存储至多个引擎服务器中与所述第一客户端模块相对应的引擎服务器中。
7.一种代理服务器,其特征在于,所述代理服务器包括通讯单元和处理单元;其中,
所述通讯单元用于:接收来自查询服务器的查询请求数据,将所述查询请求数据发送至所述处理单元;向所述处理单元确定的至少两个引擎服务器发送所述查询请求数据;获得所述至少两个引擎服务器返回的第一查询结果;以及将所述处理单元合并得到的第二查询结果发送至所述查询服务器;
所述处理单元用于:获得所述查询请求数据对应的属性信息;基于所述处理单元获得的属性信息查询配置管理服务器,获得所述属性信息对应的机器信息,确定所述机器信息对应的所述至少两个引擎服务器;将至少两个由所述通讯单元获得的第一查询结果按照预设规则合并得到第二查询结果。
8.一种主控服务器,其特征在于,所述主控服务器包括主控模块和通知模块;其中,
所述主控模块用于:从配置管理服务器获得拆分规则,发送所述拆分规则至所述通知模块;以及基于所述通知模块发送的索引配置信息指示获取索引数据,并将所述索引数据存储至多个引擎服务器中对应的至少两个引擎服务器中;
所述通知模块用于:发送所述拆分规则至索引创建服务器,以使所述索引创建服务器将待创建的索引数据进行拆分;以及获得表征拆分结果的索引配置信息,并发送所述索引配置信息至所述主控模块。
9.根据权利要求8所述的主控服务器,其特征在于,所述主控服务器还包括多个客户端模块;所述多个客户端模块与多个引擎服务器一一对应;其中,
所述主控模块基于所述通知模块发送的索引配置信息指示第一客户端模块获取第一索引数据;所述第一客户端模块为所述索引配置信息中包括的第一拆分结果对应的客户端模块;
所述第一客户端模块基于所述主控模块的指示获取索引数据,将所述索引数据存储至对应的引擎服务器中。
10.一种分布式搜索系统,其特征在于,所述系统包括:配置管理服务器、查询服务器、如权利要求7所述的多个代理服务器和多个引擎服务器;其中,
所述配置管理服务器用于管理配置信息和机器信息,所述配置信息包括拆分规则,所述机器信息表征所述多个引擎服务器的信息;
所述查询服务器用于获得终端设备的查询请求数据,将所述查询请求数据发送至所述代理服务器,并在收到所述第二查询结果时将所述第二查询结果发送至所述终端设备;
所述多个引擎服务器中的每个引擎服务器用于存储满足所述拆分规则的索引数据,并在收到所述查询请求数据时回复所述第一查询结果。
11.根据权利要求10所述的系统,其特征在于,所述系统还包括如权利要求8或9所述的主控服务器和索引创建服务器;其中,
所述索引创建服务器用于基于所述主控服务器发送的拆分规则将待创建的索引数据进行拆分,将表征拆分结果的索引配置信息发送至所述主控服务器。
12.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1或2所述的步骤。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求3至5任一项所述的步骤。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710540135.0A CN107273540B (zh) | 2017-07-05 | 2017-07-05 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
CA3184577A CA3184577A1 (en) | 2017-07-05 | 2017-12-29 | Distributed searching and index updating method and system, servers, and computer devices |
CA3065118A CA3065118C (en) | 2017-07-05 | 2017-12-29 | Distributed searching and index updating method and system, servers, and computer devices |
PCT/CN2017/120018 WO2019007010A1 (zh) | 2017-07-05 | 2017-12-29 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
JP2019568703A JP6967615B2 (ja) | 2017-07-05 | 2017-12-29 | 分散型検索及びインデックスの更新方法、システム、サーバー並びにコンピューター機器 |
US16/622,298 US20200210496A1 (en) | 2017-07-05 | 2017-12-29 | Distributed search method, index update method, system, server, and computer device |
TW107111376A TWI740029B (zh) | 2017-07-05 | 2018-03-30 | 分散式搜索及索引更新方法、系統、伺服器及電腦設備 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710540135.0A CN107273540B (zh) | 2017-07-05 | 2017-07-05 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107273540A true CN107273540A (zh) | 2017-10-20 |
CN107273540B CN107273540B (zh) | 2021-09-24 |
Family
ID=60071122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710540135.0A Active CN107273540B (zh) | 2017-07-05 | 2017-07-05 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20200210496A1 (zh) |
JP (1) | JP6967615B2 (zh) |
CN (1) | CN107273540B (zh) |
CA (2) | CA3065118C (zh) |
TW (1) | TWI740029B (zh) |
WO (1) | WO2019007010A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019007010A1 (zh) * | 2017-07-05 | 2019-01-10 | 北京三快在线科技有限公司 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
CN109255072A (zh) * | 2018-08-15 | 2019-01-22 | 腾讯科技(深圳)有限公司 | 信息召回方法及装置、计算机存储介质、电子设备 |
CN109409924A (zh) * | 2018-09-03 | 2019-03-01 | 平安科技(深圳)有限公司 | 账户评分系统、方法、服务器和计算机可读存储介质 |
CN111405039A (zh) * | 2020-03-16 | 2020-07-10 | 深圳市网心科技有限公司 | 一种数据透传方法、装置、系统和客户端及服务器 |
CN111417119A (zh) * | 2020-03-16 | 2020-07-14 | 纳瓦电子(上海)有限公司 | 无线级联的方法 |
CN111858585A (zh) * | 2020-06-30 | 2020-10-30 | 深圳幂度信息科技有限公司 | 区块链策略处理装置、计算机可读存储介质及终端设备 |
CN111931033A (zh) * | 2020-08-11 | 2020-11-13 | 深圳市欢太科技有限公司 | 一种检索方法、检索装置及服务器 |
CN113438304A (zh) * | 2021-06-23 | 2021-09-24 | 平安消费金融有限公司 | 基于数据库集群的数据查询方法、装置、服务器及介质 |
CN113535730A (zh) * | 2021-07-21 | 2021-10-22 | 挂号网(杭州)科技有限公司 | 搜索引擎的索引更新方法及系统、电子设备、存储介质 |
WO2022156542A1 (zh) * | 2021-01-21 | 2022-07-28 | 北京沃东天骏信息技术有限公司 | 数据访问方法、系统和存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918472A (zh) * | 2019-02-27 | 2019-06-21 | 北京百度网讯科技有限公司 | 存储和查询数据的方法、装置、设备和介质 |
CN113641796A (zh) * | 2021-08-30 | 2021-11-12 | 平安医疗健康管理股份有限公司 | 数据搜索方法、系统及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070033167A1 (en) * | 2005-08-04 | 2007-02-08 | Sujoy Basu | Discovery across multiple registries |
CN101950300A (zh) * | 2010-09-20 | 2011-01-19 | 华南理工大学 | 一种分层结构、分布式搜索引擎系统及其实现方法 |
CN102033912A (zh) * | 2010-11-25 | 2011-04-27 | 北京北纬点易信息技术有限公司 | 一种分布式数据库访问方法及系统 |
CN102375853A (zh) * | 2010-08-24 | 2012-03-14 | 中国移动通信集团公司 | 分布式数据库系统、在其中建立索引的方法和查询方法 |
US20130346540A1 (en) * | 2012-05-21 | 2013-12-26 | Google Inc. | Storing and Moving Data in a Distributed Storage System |
CN104978337A (zh) * | 2014-04-08 | 2015-10-14 | 张军 | 一种基于软件定义网络的分布式视频搜索引擎框架 |
CN105187551A (zh) * | 2015-09-29 | 2015-12-23 | 成都四象联创科技有限公司 | 基于云平台的分布式计算方法 |
CN105320527A (zh) * | 2014-06-12 | 2016-02-10 | 中兴通讯股份有限公司 | 基于zookeeper分布式搜索引擎的配置文件更新方法、装置及系统 |
US20160335317A1 (en) * | 2015-05-14 | 2016-11-17 | Walleye Software, LLC | Computer data distribution architecture |
CN106776694A (zh) * | 2016-11-11 | 2017-05-31 | 张军 | 一种基于软件定义的网络分布式图片搜索引擎框架 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1305271C (zh) * | 2004-04-29 | 2007-03-14 | 上海交通大学 | 基于代理映射的网络安全隔离与信息交换系统及方法 |
US10956667B2 (en) * | 2013-01-07 | 2021-03-23 | Google Llc | Operational transformations proxy for thin clients |
CN105978948B (zh) * | 2016-04-27 | 2019-05-24 | 努比亚技术有限公司 | 一种云服务的方法和系统 |
CN107273540B (zh) * | 2017-07-05 | 2021-09-24 | 北京三快在线科技有限公司 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
-
2017
- 2017-07-05 CN CN201710540135.0A patent/CN107273540B/zh active Active
- 2017-12-29 CA CA3065118A patent/CA3065118C/en active Active
- 2017-12-29 CA CA3184577A patent/CA3184577A1/en active Pending
- 2017-12-29 US US16/622,298 patent/US20200210496A1/en not_active Abandoned
- 2017-12-29 WO PCT/CN2017/120018 patent/WO2019007010A1/zh active Application Filing
- 2017-12-29 JP JP2019568703A patent/JP6967615B2/ja active Active
-
2018
- 2018-03-30 TW TW107111376A patent/TWI740029B/zh active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070033167A1 (en) * | 2005-08-04 | 2007-02-08 | Sujoy Basu | Discovery across multiple registries |
CN102375853A (zh) * | 2010-08-24 | 2012-03-14 | 中国移动通信集团公司 | 分布式数据库系统、在其中建立索引的方法和查询方法 |
CN101950300A (zh) * | 2010-09-20 | 2011-01-19 | 华南理工大学 | 一种分层结构、分布式搜索引擎系统及其实现方法 |
CN102033912A (zh) * | 2010-11-25 | 2011-04-27 | 北京北纬点易信息技术有限公司 | 一种分布式数据库访问方法及系统 |
US20130346540A1 (en) * | 2012-05-21 | 2013-12-26 | Google Inc. | Storing and Moving Data in a Distributed Storage System |
CN104978337A (zh) * | 2014-04-08 | 2015-10-14 | 张军 | 一种基于软件定义网络的分布式视频搜索引擎框架 |
CN105320527A (zh) * | 2014-06-12 | 2016-02-10 | 中兴通讯股份有限公司 | 基于zookeeper分布式搜索引擎的配置文件更新方法、装置及系统 |
US20160335317A1 (en) * | 2015-05-14 | 2016-11-17 | Walleye Software, LLC | Computer data distribution architecture |
CN105187551A (zh) * | 2015-09-29 | 2015-12-23 | 成都四象联创科技有限公司 | 基于云平台的分布式计算方法 |
CN106776694A (zh) * | 2016-11-11 | 2017-05-31 | 张军 | 一种基于软件定义的网络分布式图片搜索引擎框架 |
Non-Patent Citations (2)
Title |
---|
吴广印: ""分布式检索系统架构及核心技术研究"", 《情报学报》 * |
钱立兵: ""分布式搜索引擎的模型综述"", 《智能计算机与应用》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019007010A1 (zh) * | 2017-07-05 | 2019-01-10 | 北京三快在线科技有限公司 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
CN109255072B (zh) * | 2018-08-15 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 信息召回方法及装置、计算机存储介质、电子设备 |
CN109255072A (zh) * | 2018-08-15 | 2019-01-22 | 腾讯科技(深圳)有限公司 | 信息召回方法及装置、计算机存储介质、电子设备 |
CN109409924A (zh) * | 2018-09-03 | 2019-03-01 | 平安科技(深圳)有限公司 | 账户评分系统、方法、服务器和计算机可读存储介质 |
CN109409924B (zh) * | 2018-09-03 | 2023-04-18 | 平安科技(深圳)有限公司 | 账户评分系统、方法、服务器和计算机可读存储介质 |
CN111405039A (zh) * | 2020-03-16 | 2020-07-10 | 深圳市网心科技有限公司 | 一种数据透传方法、装置、系统和客户端及服务器 |
CN111417119A (zh) * | 2020-03-16 | 2020-07-14 | 纳瓦电子(上海)有限公司 | 无线级联的方法 |
CN111858585A (zh) * | 2020-06-30 | 2020-10-30 | 深圳幂度信息科技有限公司 | 区块链策略处理装置、计算机可读存储介质及终端设备 |
CN111931033A (zh) * | 2020-08-11 | 2020-11-13 | 深圳市欢太科技有限公司 | 一种检索方法、检索装置及服务器 |
WO2022156542A1 (zh) * | 2021-01-21 | 2022-07-28 | 北京沃东天骏信息技术有限公司 | 数据访问方法、系统和存储介质 |
CN113438304B (zh) * | 2021-06-23 | 2023-04-07 | 平安消费金融有限公司 | 基于数据库集群的数据查询方法、装置、服务器及介质 |
CN113438304A (zh) * | 2021-06-23 | 2021-09-24 | 平安消费金融有限公司 | 基于数据库集群的数据查询方法、装置、服务器及介质 |
CN113535730A (zh) * | 2021-07-21 | 2021-10-22 | 挂号网(杭州)科技有限公司 | 搜索引擎的索引更新方法及系统、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CA3065118A1 (en) | 2019-01-10 |
JP6967615B2 (ja) | 2021-11-17 |
JP2020523700A (ja) | 2020-08-06 |
WO2019007010A1 (zh) | 2019-01-10 |
US20200210496A1 (en) | 2020-07-02 |
CN107273540B (zh) | 2021-09-24 |
CA3065118C (en) | 2024-03-26 |
CA3184577A1 (en) | 2019-01-10 |
TWI740029B (zh) | 2021-09-21 |
TW201907324A (zh) | 2019-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107273540A (zh) | 分布式搜索及索引更新方法、系统、服务器及计算机设备 | |
CN108460136A (zh) | 电力运维信息知识图谱构建方法 | |
WO2017165018A1 (en) | Automated event id field analysis on heterogeneous logs | |
CN108491378A (zh) | 电力信息运维智能应答系统 | |
CN102270225A (zh) | 数据变更日志监控方法和数据变更日志监控装置 | |
CN105812175B (zh) | 一种资源管理方法及资源管理设备 | |
CN112311571B (zh) | 网络拓扑生成方法及装置、电子设备和非暂态存储介质 | |
CN114979074B (zh) | 一种企业IPv6地址分级管理方法、系统及存储介质 | |
CN112559631A (zh) | 分布式图数据库的数据处理方法、装置以及电子设备 | |
CN105677745A (zh) | 一种通用高效自助数据查询系统及实现方法 | |
CN110995489B (zh) | 大数据平台服务器管理方法、装置、服务器及存储介质 | |
CN113505265A (zh) | 数据的查询方法、装置及电子设备、存储介质、程序产品 | |
CN111897643A (zh) | 线程池配置系统、方法、装置和存储介质 | |
CN108089968A (zh) | 一种宿主机监控虚拟机数据库状态的方法 | |
WO2023143595A1 (zh) | 处理器之间的通信方法、系统、存储介质以及处理器 | |
CN114756301B (zh) | 日志处理方法、装置和系统 | |
CN110347654A (zh) | 一种上线集群特性的方法和装置 | |
CN108874415A (zh) | 企业云系统迁移中的升级推荐系统 | |
CN108197179A (zh) | 设备信息查询方法及终端设备 | |
CN110019456A (zh) | 数据导入方法、装置和系统 | |
CN113297516A (zh) | 客户交互界面生成方法、装置和电子设备 | |
CN109739884A (zh) | 一种电力监控系统图形提示信息服务设计方法 | |
CN116561106B (zh) | 一种配置项数据管理方法及系统 | |
CN104750709A (zh) | 一种语义检索方法及系统 | |
CN114710404B (zh) | 基于配置管理系统的虚拟服务器配置信息管理方法及装置 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1240664 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |