CN102622414A - 基于对等结构的分布式高维索引并行查询框架 - Google Patents
基于对等结构的分布式高维索引并行查询框架 Download PDFInfo
- Publication number
- CN102622414A CN102622414A CN2012100381150A CN201210038115A CN102622414A CN 102622414 A CN102622414 A CN 102622414A CN 2012100381150 A CN2012100381150 A CN 2012100381150A CN 201210038115 A CN201210038115 A CN 201210038115A CN 102622414 A CN102622414 A CN 102622414A
- Authority
- CN
- China
- Prior art keywords
- index
- website
- module
- working terminal
- index block
- 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
技术领域
本发明涉及计算机信息检索技术领域,特别涉及一种基于对等结构的分布式高维索引并行查询框架。
背景技术
基于内容的图像检索、视频检索等技术的迅速发展,使得高维索引技术得到越来越广泛的发展和应用。高维索引技术的应用,主要是为了加快检索速度,进而提升用户的查询体验。在目前已有的绝大部分应用中,高维索引的查询实际上就是在语义层面上检索查询对象的前k个最近邻(k Nearest Neighbors,简称kNN)。
一般而言,基于内容的检索技术首先需要将海量的候选对象(图像、视频等)转化为高维特征向量,以量化的形式尽可能保存对象本身的特征。然后,需要对提取出来的海量高维向量进行索引。当用户提交查询对象时,经过量化转化为同等维度的高维特征向量,并利用高维索引结构,快速检索出其kNN,并将结果返回。在大部分应用场景下,高维索引的创建是允许离线的,对于实时性没有过高的要求,但对稳定性、可靠性和完整性要求较高。而对于高维索引的查询,实际应用中的需求十分明确和严格,必须是尽可能精确、快速、可靠,并且支持动态增减的海量候选对象的检索。这也正是本发明着重思考和解决的问题。
随着各类应用的推广,高维索引技术在学术界和工业界都引起了广泛的关注,并涌现了大量提升高维索引创建和查询效率的算法与方案。高维索引的效率提升策略,目前总体上可以划分为三大类。第一类是以降低kNN精确度的代价来提高效率的,亦即只查询近似kNN。第二类则是通过改变索引结构提升索引的创建和查询速度,但是经过几十年的研究,目前尚未发现十分高效的支持上百维甚至更高维度的索引结构。第三类则是从索引***的架构上进行改进,通过引入并行索引***提升创建和查询的速度,然而,目前在实时可靠并行***的研究方面,由于技术壁垒的存在,相关技术很难被广泛应用。另外,传统的主从式索引查询架构缺乏自组织性,并且容易出现性能瓶颈。
发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的一个目的在于提出一种基于对等结构的分布式高维索引并行查询框架,该分布式高维索引并行查询框架基于对等结构,具有实时的、可靠的、支持动态增减的海量候选对象检索的优点,且查询速度快。
为了实现上述目的,本发明的实施例提出了一种基于对等结构的分布式高维索引并行查询框架,包括:索引创建模块、监视器模块、对等站点集群以及负载软均衡模块,其中,所述索引创建模块用于对海量候选对象进行分割并为每个分割部分创建索引以得到多个索引块文件,并对所述索引块文件进行存储,其中,所述索引块文件包括索引块信息,所述监视器模块用于检测所述对等站点集群中的工作站点的可用内存信息以及每个工作站点对应的索引块信息以根据检测结果对每个工作站点所加载的索引块进行协调以及向每个工作站点发送对等站点列表更新指令,所述对等站点集群中的工作站点根据自身的索引块信息对相应的索引块文件进行加载或卸载,且根据用户发送的查询请求在相应的索引块文件中进行查询并将查询结果进行整合和输出,所述负载软均衡模块用于获取所述监视器模块中的当前工作站点列表以根据所述工作站点列表对当前工作站点进行负载均衡控制,且所述负载软均衡模块定时由所述监视器模块进行同步以便所述负载软均衡模块对当前可用的工作站点列表进行调整和更新。
根据本发明实施例的基于对等结构的分布式高维索引并行查询框架采用效率高的索引结构,具体地,采用Hybrid Spill Tree作为基本的索引结构(高维索引结构),且采用对等站点的架构方式,在实时性、可靠性、稳定性、可扩展性、自组织性等方面都做了较为全面的保障。可以高效进行查询,并且具有较强的可扩展性,可以方便地迁移到各种基于内容的搜索***中,且具有查询速度快的优点。另外,该基于对等结构的分布式高维索引并行查询框架结构清晰,易于实现。
另外,根据本发明上述实施例的基于对等结构的分布式高维索引并行查询框架还可以具有如下附加的技术特征:
在本发明的一个实施例中,所述索引创建模块进一步包括:索引创建子模块,所述索引创建子模块采用Map Reduce框架对多个数据分割部分并行创建索引以得到所述多个索引块文件;分布式存储***,所述分布式存储***用于保存所述多个索引块文件。
在本发明的一个实施例中,所述监视器模块还用于在检测到索引块文件更新后对非工作站点集群发送索引加载指令以使所述非工作站点集群进入工作状态,所述索引块文件加载完毕后所述监视器模块将进行集群切换,并使用已加载最新索引的工作站点集群,将原有工作站点集群置于非工作状态。
在本发明的一个实施例中,所述监视器模块根据所述检测结果判断当前的工作站点中是否存在失效站点,并在检测到存在失效站点时向当前可用的工作站点发送对等站点列表更新指令。
在本发明的一个实施例中,当有非工作站点加入所述工作站点集群时向所述监视器模块进行注册,以便所述监视器模块对所述工作站点列表进行更新,并将所述更新后的工作站点列表发送给所述负载软均衡模块,同时将更新后的对等站点列表发送到所有所述工作站点。
在本发明的一个实施例中,当所述对等站点集群中的每个工作站点接收到查询请求时,创建主进程并根据自身的索引块信息创建多个相应的子进程,以使每个子进程从对应的已加载索引块中进行查询,并将查询结果发送给主进程并通过主进程进行整合发送。
在本发明的一个实施例中,所述主进程还用于响应其它工作站点中分发的查询请求。
在本发明的一个实施例中,所述子进程对主进程进行监测,以便在所述主进程意外退出时自动关闭。
在本发明的一个实施例中,所述负载软均衡模块包括多个负载软均衡站点,且所述负载软均衡模块维护所述当前可用的工作站点列表。
在本发明的一个实施例中,所述索引块文件采用Hybird Spill Tree数据结构。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例的基于对等结构的分布式高维索引并行查询框架的示意图;以及
图2为本发明实施例的基于对等结构的分布式高维索引并行查询框架的架构图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
以下结合附图描述本发明实施例的基于对等结构的分布式高维索引并行查询框架。
参见图1和图2,根据本发明实施例的基于对等结构的分布式高维索引并行查询框架100包括索引创建模块Builder、监视器模块Monitor、对等站点集群以及负载软均衡模块Balancer。其中:
索引创建模块Builder用于对海量候选对象进行分割并为每个分割部分创建索引以得到多个索引块文件,并对所述索引块文件进行存储,其中,索引块文件包括索引块信息。
监视器模块Monitor用于检测所述对等站点集群中的工作站点的可用内存信息以及每个工作站点对应的索引块信息以根据检测结果对每个工作站点所加载的索引块进行协调以及向每个工作站点发送对等站点列表更新指令。具体而言,监视器模块Monitor监测、协调和管理各个工作站点之间的工作。一方面,例如监视器模块Monitor通过类似于心跳包检测的方式定时获取各个工作站点上的可用内存信息及索引块信息,并根据得到的结果,分析出是否存在重复索引或者缺失索引,并根据可用内存信息进行智能协调,要求某些工作站点卸载索引块或加载缺失的索引块,以确保索引块的最低冗余以及完整性。另一方面,监视器模块Monitor将提供对等站点集群的管理功能,心跳包检测可以发现失效的站点,并通知其他站点进行对等站点列表的调整,而当新的站点添加之后,也会自动向监视器模块Monitor进行注册,并由Monitor通知其他工作站点调整对等站点列表,以最大程度上保证每个站点能近乎实时地知道同一索引集群中的站点信息。此外,监视器模块Monitor负责与负载均衡模块Balancer之间的同步工作。监视器模块Monitor将自己检测到的当前索引集群中的有效站点列表同步给负载均衡模块Balancer中的每个负载软均衡站点,以保证负载均衡设备Balancer能为所有查询选择出有效的可用工作站点。
对等站点集群中的工作站点根据自身的索引块信息对相应的索引块文件进行加载或卸载,且根据用户发送的查询请求在相应的索引块文件中进行查询并将查询结果进行整合和输出。
负载软均衡模块Balancer用于获取监视器模块Monitor中的当前工作站点列表以根据所述工作站点列表对当前工作站点进行负载均衡控制,且负载软均衡模块Balancer将定时由监视器模块Monitor进行同步以便负载软均衡模块Balancer对当前可用的工作站点列表进行调整和更新。
根据本发明实施例的基于对等结构的分布式高维索引并行查询框架100采用效率高的索引结构,具体地,采用Hybrid Spill Tree作为基本的索引结构(高维索引结构),且采用对等站点的架构方式,在实时性、可靠性、稳定性、可扩展性、自组织性等方面都做了较为全面的保障。可以高效进行查询,并且具有较强的可扩展性,可以方便地迁移到各种基于内容的搜索***中,且具有查询速度快的优点。另外,该基于对等结构的分布式高维索引并行查询框架结构清晰,易于实现。
在本发明的一个实施例中,索引创建模块Builder进一步包括索引创建子模块以及分布式存储***。其中:
索引创建子模块采用Map Reduce框架对多个数据分割部分并行创建索引以得到所述多个索引块文件。分布式存储***用于保存所述多个索引块文件。
具体而言,考虑到索引创建允许离线进行,对于实时性要求不高,而对于可靠性和稳定性要求较为严格,所以直接采用成熟的Map Reduce框架,用于并行创建索引,并借助于分布式存储***,将底层的存储结构透明化,用于存放索引块文件。
需要理解的是,在索引创建模块Builder中,将海量候选对象分割成多个部分,并为每一部分创建相应的索引块,可以为后续的分布式并行查询奠定基础。采用Map Reduce框架,定时高效地并行创建索引,并在新索引创建成功之后,覆盖旧索引文件,以适应候选对象的变动。
在本发明的一个实施例中,所述监视器模块Monitor还用于在检测到索引块文件更新后对非工作站点集群发送索引加载指令以使所述非工作站点集群进入工作状态,并在索引块文件加载完毕后所述监视器模块将进行集群切换,并使用已加载最新索引的工作站点集群,将原有工作站点集群置于非工作状态,同时向负载软均衡模块发送最新工作站点列表。也就是说,监视索引文件的变动情况,并且在索引文件变化稳定之后,要求非工作站点进行索引加载,加载完成之后进行集群切换,使之成为工作站点,替换之前的工作站点。
在本发明的一个实施例中,所述监视器模块根据所述检测结果判断当前的工作站点中是否存在失效站点,并在检测到存在失效站点时向当前可用的工作站点发送对等站点列表更新指令。即监视器模块Monitor通过上述实施例的心跳包检测可以发现失效的站点,并通知其他站点进行对等站点列表的调整。
进一步地,当有非工作站点加入工作站点集群时将向监视器模块Monitor进行注册,以便监视器模块Monitor对工作站点列表进行更新,并将所述更新后的工作站点列表发送给所述负载软均衡模块,同时发送指令要求其他工作站点进行对等站点列表的更新。
作为一个具体的示例,当对等站点集群中的每个工作站点接收到查询请求时,创建主进程并根据自身的索引块信息创建多个相应的子进程,以使每个子进程从对应的已加载的索引块中进行查询,并将查询结果发送给主进程并通过主进程进行整合发送。进一步地,主进程还用于响应其它工作站点中分发的查询请求,亦即当某个工作站点接收到用户查询请求之后将进一步分发查询请求,要求其他站点协助查询的完成。在该示例中,子进程对主进程进行监测,以便在所述主进程意外退出时自动关闭。
具体而言,工作站点的主进程主要负责三部分的工作。
1、响应监视器模块Monitor的心跳检测,提供当前工作站点可用的内存信息,以及负责的索引块信息等。因此,当工作站点在启动服务时,应该主动向监视器模块Monitor进行注册。并且,主进程需要维护索引块信息,当需要加载指定索引块时,创建相应的子进程对索引块进行管理,而当需要卸载指定索引块时,则是将负责该索引块的子进程进行关闭。此外,主进程需要对子进程的状态进行监测,当发现子进程失效时,能及时向监视器模块Monitor反馈索引块缺失情况。
2、响应其他工作站点分发的查询请求,并根据查询请求将请求提交给子进程进行处理,然后在指定的时间阈值内对子进程返回的结果进行整合,最终返回给分发查询请求的工作站点。
3、接受用户的查询请求,并行分发给其他的工作站点,最后在指定的时间阈值内对各个工作站点(包括本身)的返回结果进行二次整合,并返回给用户。
工作站点的子进程负责的工作如下:
1、加载索引块文件,并对索引块文件进行内存展开,映射好特征向量与候选对象之间的一一对应关系。
2、响应主进程的查询请求,在索引结构中查询指定对象的预定数量的最为相似的查询结果,并将结果返回给主进程。
3、监测主进程的活动,以保证当主进程意外退出时,能自行关闭,以免占用过多资源。
需要理解的是,本发明实施例中的索引块管理采用的是子进程模式,而非线程模式,主要是为了保证在内存不足以加载新的索引块的情况下,采用子进程的方式可以避免因为加载新索引块失败而导致主进程完全崩溃的情况,最终不至于导致所有已经加载完毕的索引块全部失效。这样也是为了能最大程度上保证***的稳定性和可靠性。
在本发明的一个实施例中,所述负载软均衡模块包括多个负载软均衡站点。每个负载软均衡站点的作用为适当调度查询请求,使得各个工作站点的负载总体上达到平衡,以避免出现某些站点负载过重而另一些站点负载过轻的现象。负载软均衡模块Balancer通过监视器模块Monitor的同步作用,获取当前索引集群中有效的工作站点列表,并接收查询接口的请求,选择适当的工作站点返回供查询接口进行查询调用。
需要说明的是,为了保证同步的顺畅,和工作站点类似,负载软均衡站点启动服务时会主动向Monitor站点进行注册。一般而言,如果各个工作站点的硬件设施情况相近,负载软均衡站点则可以采取随机选取的方式进行工作站点的选择,并返回给查询接口进行进一步的查询调用。
本发明的实施例中,还可以具有查询接口模块Searcher,查询接口模块Searcher主要负责两方面的功能。
1、将查询对象进行量化,转化为具有同等维度的向量,并提交该向量进行查询,然后将查询结果转化为外部接口所需的形式。
2、将底层的调度关系进行封装,向上屏蔽,以降低架构的耦合性,并提升***的可扩展性。实际上,该部分的查询操作可以分为两个步骤:从负载软均衡模块Balancer中获取有效的工作站点,将查询提交给工作站点并获取相应的结果。
在本发明的一个示例中,为了保证实时性要求,查询部分不适合采用Map Reduce框架,而是结合MPI等更为高效的信息传递方式来负责站点问的通信与协调。
本发明的实施例具有如下优点:
1、高度并行化,查询高效,实时性较好,并且精确度较高。
采用的是分布式的索引查询架构,并且采用了较为高效的高维索引结构Hybrid SpillTree,同时结合MPI等高效通信机制,从各个方面都尽可能保证查询的快速响应。此外,相比于单机环境下的Hybrid Spill Tree,本发明实施例的分布式索引结构能有效提高精确度,主要原因是每次进行预定数量的近似近邻查询时,采用了冗余策略,并且最终对结果进行了两阶段的整合与过滤,从而能保证最终返回的结果能覆盖绝大部分的预定数量的精确近邻。其中第一阶段的整合过滤是工作站点对本地子进程返回的结果进行整合时,滤除了一部分冗余结果,而第二阶段则是发出全局查询请求的工作站点对其他工作站点返回的结果进行整合时,进一步滤除冗余结果。另外需要说明的是,Hybrid Spill Tree本身具备参数可调的特点,可以在实际应用中选择合适的参数,以便在效率与精确度之间获得良好的折中。
2、***可靠性和稳定性较高。
从架构的模块分析可以看出,本发明引入了监视器模块Monitor用于监测和管理索引块的加载情况,并对工作站点进行相应的管理,根据站点的内存情况进行智能协调,以尽可能地保证全局索引的最低冗余和完整性,从而保证查询的可靠性。此外,考虑了多种可能出现的异常情况,包括宕机、子进程异常退出、主进程异常退出等等,并且针对以上问题,引入了较为复杂的监测机制和协调机制,从而保证在多种异常发生,甚至并行发生的情况下,***依然能较为鲁棒地运转,并保证外部查询的接收和反馈。需要提及的一点是,从表面上看,本发明引入的监视器模块Monitor与传统主从架构方案中的主站点比较类似,可能成为整个架构的瓶颈。但实际上,通过分析可以知道,本发明中的监视器模块Monitor,其负载明显比主从结构中的主站点更低。并且,通过采用传统的热备份或集群等技术,可以更大程度上保证同一时间都有Monitor站点和Balancer站点能正常运转,从而为***的稳定性提供强大的保障。另外,本发明实施例采用的是基于对等结构的架构方案,对于瓶颈点的依赖更小,即便在Monitor完全失效的情况下,只要有一个Balancer站点和若干个工作站点能正常工作,***依然能响应查询。
3、可扩展性、可伸缩性较好。
本发明实施例所提出的高维索引并行查询框架并不针对于某种特定的应用,而是直接处理特征向量,这使得该框架具有更强的可扩展性,既可以应用于基于内容的图像检索,还可以应用于视频检索、音频检索等领域中。另外,在本发明中,对于工作站点和负载软均衡站点,当它们启动服务后,都会主动向Monitor进行注册,而在退出时也都会向Monitor提交注销申请,并由Monitor进行后续的通知或者同步,这种机制使得动态增加或删除站点更加方便,无需干预其他站点或者重启***,只需配置好被增删的站点即可。这些都反映出本发明所提出的框架在***的动态伸缩方面具备较强的适应能力。另外,本发明实施例提出的基于对等结构的高维索引并行查询框架中,任一工作站点都可以作为全局查询的负责站点,同时也可以作为全局查询的协助站点,操作更加灵活。
4、自组织性、智能管理能力较强
本发明所提出的基于对等结构的分布式高维索引并行查询框架在站点的管理和协调上做了双向的保障。一方面,工作站点或者负载软均衡站点的启动或退出都会向Monitor站点进行注册或注销,并由Monitor站点进行通知和同步等后续工作;另一方面,Monitor站点本身维护着全部负载软均衡站点列表,同时维护着所有对等站点集群信息以及当前使用的对等站点集群(索引集群)中的全部工作站点信息,并对这些站点进行协调和管理(包括索引块的去重、补缺等等)。另外,本发明实施例提出的查询框架支持异构站点的组合,并且能根据各个站点的可用内存情况,智能地进行索引块的分配及其他调度、协调工作,使得***的资源能得到充分、恰当的利用。并且,负载软均衡站点的引入也从软均衡的层面上对各个工作站点的负载进行调整。上述均反映了本发明所提出的框架具备较强的自组织性和智能管理能力。
5、支持动态增减的海量数据
本发明结合较为成熟的Map Reduce框架和相应的分布式存储***,将高维索引的创建与查询连接了起来。在引入Map Reduce框架对索引创建进行并行化之后,一定程度上解决了高维索引结构增删代价大的局限性,而是通过快速重建索引的方式进行高维索引的更新。此外,引入分布式存储***,可将底层的存储***透明化,更方便于工作站点中的子进程进行索引块的读取,而无需进行繁复的配置。以上两方面的结合,为提供海量数据的高维索引结构创建奠定了基础,并为可行性提供保障。本发明将高维索引的创建与查询通过分布式存储***进行连接,高维索引创建模块只负责定时重建索引,以反映数据的变动情况,而Monitor站点则定时进行索引文件的更新检测,并在检测到稳定更新后,进行索引的加载和索引集群的切换,使得***能及时响应海量数据的动态变化情况。
【实施例】
在实际应用中,通过100万张图像的120维特征向量的实际测试,验证了其有效性和可行性。如下表所示,为基于对等结构的分布式高维索引并行查询框架实验结果。列出了本发明在实际测试中若干次查询的响应速度情况。需要提及的是,在此次实验过程中,将所有查询的时间阈值设置为1秒,全部图像被切分为5部分并创建了等同数量的索引块文件,对等站点集群包含5台异构的普通PC机(其中四台PC的配置为2G内存,奔腾E5300双核CPU,另外一台配置为4G内存,奔腾E5200双核CPU)。另外,在实验过程中,并没有对Hybrid Spill Tree的参数进行调优,而采用经验值进行测试,以更全面真实地反映***的响应能力。
查询次数 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 均值 |
查询耗时(毫秒) | 139 | 121 | 77 | 64 | 88 | 57 | 90 | 66 | 65 | 85 | 85.2 |
表1
从表1可以看出,查询时间存在一定的波动现象,但总体响应时间都还是非常短的,平均响应时间为85.2毫秒,基本能满足实际应用中的检索需求。而且,可以展望的是,在对Hybrid Spill Tree进行参数调优,引入更强劲的服务器,设定更小的查询时限等条件下,查询时间将会有更进一步的缩减,从而使***更加高效实用。
基于对等结构的分布式高维索引并行查询框架的更为具体实现方式,如下:
索引创建模块的实现(高维索引创建模块Builder)的实现:
高维索引创建模块主要负责的工作是定时对海量的候选对象进行索引的重建,以保证及时反映候选对象的变动情况。该模块由于对实时性要求不高,而对稳定性和可靠性要求较为严格,在该实施例中,借助于相对成熟稳定的Map Reduce框架实现,并且结合分布式存储***对索引创建的过程进行高度并行化,以保证重建索引的高效和可靠。
因此,Builder模块的实现一方面集中于较为成熟的开源框架的搭建以及分布式存储***的搭建,另一方面则是集中于设置定时任务,对指定的海量候选对象定时进行恰当的数据分块,并通过Map Reduce任务进行索引的并行化创建,最终将各个索引块文件存储在透明的分布式存储***中。
此外,Builder模块还需要负责索引块文件的维护,具体而言,就是在新索引全部创建成功后,移除旧的索引块文件,并将新索引块文件全部移动到分布式存储***中指定的路径下,以便被Monitor模块监测到。需要说明的一点是,这里覆盖索引块文件的时间差不会导致出现监测出错的情况,因为Monitor模块中的监测功能并非第一次发现变动后立即开始新索引的加载和切换,而是会继续对新索引文件进行若干次的跟踪,并且只有在判断出索引文件基本稳定的情况下才执行索引的切换。而且,即便出现了异常的过早加载的情况,随着后续索引文件的改动,***将会重新加载,最终保证索引切换的准确性。
监视器模块(Monitor)的实现:
Monitor模块所负责的工作主要包括三部分:索引文件的更新监测,工作站点(Peer站点)的监测、协调与管理,以及同步负载软均衡站点(Balancer站点)。而Monitor模块与其他模块、站点之间的通信,以及其他模块之间、站点之间的通信,在该实施例中,都主要依赖于Java语言的高效通信接口RMI(Remote Method Invocation,MPI的Java实现,广泛应用于并行环境的开发中)。根据RMI的实现特点,Monitor模块在执行上述三部分工作的过程中,既是RMI服务的被调用方,同时又是RMI服务的调用方(Peer站点、子进程等也类似)。
作为RMI服务的被调用方,Monitor需要提供的服务接口包括如下这些:registerClusterPeer,registerBalancer,unregisterClusterPeer,unregisterBalancer。其中registerClusterPeer和registerBalancer服务接口主要用于Peer站点和Balancer站点的注册,其中Peer站点的注册需要指明所属的对等站点集群,而unregisterClusterPeer和unregisterBalancer服务接口则主要用于Peer站点和Balancer站点的注销请求。通过以上四个服务接口,Monitor站点自身维护着所有对等站点集群的Peer站点信息和所有Balancer站点信息。
作为RMI服务的调用方,Monitor执行其所负责的工作时主要依赖于调用其他模块或站点的服务接口,从而实现相应的功能。
在索引文件的更新监测方面,Monitor站点需要启动定时线程用于每隔一段时间对索引文件进行检测,并通过比对确认索引文件的变动情况。并且,在首次发现变动之后,Monitor站点将进行进一步的跟踪,直到最终确认索引文件变动稳定之后才启动索引切换任务。索引的切换实际上是Monitor站点通知闲置对等站点集群进行新索引块的加载,并按照预定的策略判断是否加载成功。在加载成功的情况下,直接将当前索引集群切换到新的集群上,并同步Balancer站点。
在工作站点的检测、协调与管理方面,Monitor站点同样需要维护定时线程,用于监测当前索引集群中所有Peer站点的可用内存、索引块情况等,并根据指定的策略将多次没响应的站点认定为失效站点,报告给管理人员。此外,当Monitor站点提供的四个服务接口被调用时,Monitor站点本身也需要在内存中维护相应的Peer站点列表和Balancer站点列表,并通知给其他站点。特别是,当某个Peer站点注册或者注销时,Monitor站点响应请求后,会通知同一对等站点集群中的其他站点更新其对等站点列表信息。另外,Monitor会根据各个Peer站点反馈回来的可用内存信息和索引块信息,从中发现重复的索引块或者是缺失的索引块,并根据Peer站点的可用内存信息,智能地选择合适的站点进行索引块的卸载或加载,以保证整个索引的最低冗余和完整性。
在同步负载软均衡方面,实际上是Monitor站点启动定时线程,并通过直接调用Balancer站点提供的服务,将其所维护的当前索引集群的可用站点列表信息同步给所有的Balancer站点,使之能及时反映索引变动的情况,并与Monitor站点保持一致,从而能为查询接口模块提供合适的Peer站点作为查询主站点。
需要说明的一点是,Monitor模块的实现需要有相应的外部配置文件,以对Monitor模块进行初始化。其中最为重要的配置内容包括:索引监测时间间隔,Peer站点监测时间间隔,索引文件在分布式存储***中的存放路径,可用的对等站点集群及其内部的Peer站点信息(包括IP地址、RMI服务端口等),全部Balancer站点信息,以及跟RMI或者协调策略相关的一些配置项等。
对等站点中主进程的实现:
对等站点主进程是查询服务的主要提供方,该进程主要负责三方面的功能:响应Monitor站点的监测请求并维护对等站点列表信息和本地索引块信息,响应其他站点的全局检索请求并整合子进程的查询结果,向其他对等站点分发全局检索请求并整合各个对等站点返回的查询结果。
在响应Monitor站点的监测请求和维护本地索引块方面,Peer站点需要在启动的时候向Monitor进行注册,以告知Monitor,进而告知同一对等站点集群下的其他对等站点,这是Peer站点作为RMI服务调用方的地方之一。启动之后,Peer站点需要针对Monitor至少提供如下服务:Ping,addFederal,removeFederal,loadIndex,unloadIndex。其中Ping服务接口用于返回Peer站点本身的可用内存信息和正在管理的索引块信息;addFederal和removeFederal服务接口用于添加和删除Peer站点内存中维护的对等站点列表中的某个对等站点信息,以保证全局检索请求的准确分发;loadIndex和unloadIndex服务接口用于加载和卸载指定的索引块,实际实现中,loadIndex是由主进程启动一个负责管理该索引块的子进程,而unloadIndex则是直接将相应的子进程强行进行关闭,以从内存中卸载相应的索引。与此同时,主进程会始终保持对子进程的监测,当发现某个子进程符合指定的失效策略(诸如连续若干次响应超时等)时,直接认定其为失效子进程,并反馈给Monitor站点。相对应地,主进程需要为子进程启动PingForChildProcess服务,以响应子进程的监测请求,从而维持子进程的运行状态。
在响应其他站点的全局检索请求并整合子进程的查询结果方面,每一个Peer站点需要为其他对等站点开启search服务,以接收其他对等站点的全局检索请求。当接收到其他站点的全局检索请求后,Peer站点将调用子进程的服务接口,并把检索请求进一步提交给自己维护的所有子进程。在获取到各个子进程返回的查询结果后,Peer站点将负责对结果按照精确度从高到低进行整合,并去除冗余部分,然后返回给分发全局查询请求的对等站点。
在向其他对等站点分发全局检索请求并整合各个对等站点返回的查询结果方面,Peer站点需要提供globalSearch服务供查询接口模块调用。当接收到查询接口模块的查询请求时,Peer站点将通过多个线程,进一步派发检索请求给同一对等站点集群中的其他Peer站点,同时自己也启动本地的检索,提交检索请求给本地维护的所有子进程。Peer站点在发出全局检索请求后,既需要整合本地子进程的检索结果,又需要整合其他对等站点返回的检索结果。整合的过程需要按照精确度从高到低的顺序,并且需要去除冗余,最终将结果返回给查询接口模块。
Peer站点同样需要外部配置文件进行初始化的设置,其中主要的配置项包括:子进程可用的RMI服务端口范围,查询时间限制,本地RMI服务相关配置项(IP地址和服务端口号等),启动子进程相关的参数(运行参数、子进程的监测时间间隔等),同一索引集群的Peer站点信息(IP地址、RMI服务端口号等),以及Monitor站点信息(IP地址、RMI服务端口号等)等。
对等站点子进程(Child Process)的实现:
对等站点子进程所涉及的实际上是由对等站点主进程启动的子进程,每个此类子进程单独负责一个索引块的管理与查询。因此,单个Peer站点可能有多个子进程,同时对多个索引块进行管理和查询。
对等站点子进程被主进程创建并启动时,由主进程指定RMI服务的端口、索引块文件在分布式存储***中的路径,以及主进程的服务端口号等。在子进程启动后,将通过分布式存储***的接口获取相应的索引块文件,并将其在内存中展开,映射好查询对象与特征向量之间的关系,为后续的查询做准备。
作为RMI服务的调用方,子进程主要是通过调用主进程的RMI服务,对主进程进行心跳检测,以保证当主进程异常退出时能自行关闭,避免占用过多的资源。
而作为RMI服务的被调用方,子进程主要提供的是search服务接口,实际上就是接受主进程赋予的查询向量及相关请求,在内存中的Hybrid Spill Tree索引结构中进行查询,并将最终的结果返回给主进程,由主进程进行结果整合和发送。
子进程的配置部分实际上是由主进程通过进程参数传进来的,无需外部配置文件。
负载软均衡模块(Balancer)的实现:
负载软局衡模块在***中所承担的工作主要包括两部分,分别是接受Monitor站点的同步要求,和为查询接口模块提供合适的可用的Peer站点,作为查询的主站点。
作为RMI服务的调用方,Balancer站点主要是在启动服务之后,通过调用Monitor站点的服务进行注册,以告知Monitor站点开始接受Peer站点列表同步。
而作为RMI服务的被调用方,Balancer站点提供的服务接口主要包括:SynchronizeCluster和getAProperPeer。其中SynchronizeCluster服务接口主要被Monitor站点调用,从而实现当前索引集群中有效Peer站点列表的同步功能;而getAProperPeer服务接口则由查询接口调用,返回当前索引集群中可用的Peer站点。
Balancer站点的配置信息主要包括:Monitor站点信息(包括IP地址和RMI服务端口等),以及Balancer站点本身启动RMI服务相关的一些参数等。
查询接口模块(Searcher)的实现:
查询接口所负责的工作是接受外部查询请求,并将查询对象量化为特征向量,从Balancer站点获取可用的Peer站点,作为搜索的入口,并将最终的搜索结果转化为外部接口所需的形式。查询接口模块是上层应用与底层调度之间的连接部分,通过封装底层的通信与调用关系,为上层应用的开发提供便捷的接口。因此,该部分模块实际上可以作为链接库或者第三方包,提供给上层开发人员进行进一步的开发。
具体而言,查询接口模块需要实现四部分的功能:接受并量化查询对象,调用Balancer站点获取可用的Peer站点,调用Peer站点执行搜索,以及搜索结果的处理。
查询接口的配置主要涉及Balancer站点的信息(包括Balancer站点的IP地址和服务端口等)。
***的连接与整体运作:
本发明所提出的基于对等结构的分布式高维索引并行查询框架具有较强的自组织性和智能管理能力,对于***各个模块的启动顺序并没有严格的顺序要求。但一般而言,建议先运作索引创建模块,然后启动Monitor模块、Balancer模块和对等站点集群,最后启动查询接口模块开始接受外部查询请求。另外,在***连接方面,建议先进行集群的规划,并且对各个模块的配置文件进行正确的配置,以保证***能在启动后以较快的速度稳定下来,并完成索引的加载等工作,以响应外部查询请求。
***全部模块启动之后,需要对***的整体运行情况进行较为全面的测试,特别是对各种可能存在的异常情况的测试,以衡量***的可靠性和稳定性。经过实际测试分析,本发明提供的框架在可靠性和稳定性方面做得比较完善,能较好地抵抗多种宕机、主进程异常退出、子进程异常退出等异常,整体运作情况良好。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。
Claims (10)
1.一种基于对等结构的分布式高维索引并行查询框架,其特征在于,包括:索引创建模块、监视器模块、对等站点集群以及负载软均衡模块,其中,
所述索引创建模块用于对候选对象进行分割并为每个分割部分创建索引以得到多个索引块文件,并对所述索引块文件进行存储,其中,所述索引块文件包括索引块信息,
所述监视器模块用于检测所述对等站点集群中的工作站点的可用内存信息以及每个工作站点对应的索引块信息以根据检测结果对每个工作站点所加载的索引块进行协调以及向每个工作站点发送对等站点列表更新指令,
所述对等站点集群中的工作站点根据自身的索引块信息对相应的索引块文件进行加载或卸载,且根据用户发送的查询请求在相应的索引块文件中进行查询并将查询结果进行整合和输出,
所述负载软均衡模块用于获取所述监视器模块中的当前工作站点列表以根据所述工作站点列表对当前工作站点进行负载均衡控制,且所述负载软均衡模块将定时由所述监视器模块进行同步以便所述负载软均衡模块对当前可用的工作站点列表进行调整和更新。
2.根据权利要求1所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,所述索引创建模块进一步包括:
索引创建子模块,所述索引创建子模块采用Map Reduce框架对多个数据分割部分并行创建索引以得到所述多个索引块文件;
分布式存储***,所述分布式存储***用于保存所述多个索引块文件。
3.根据权利要求1所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,
所述监视器模块还用于在检测到索引块文件更新后对非工作站点集群发送索引加载指令以使所述非工作站点集群进入工作状态,所述索引块文件加载完毕后所述监视器模块将进行集群切换,并使用已加载最新索引的工作站点集群,将原有工作站点集群置于非工作状态。
4.根据权利要求1所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,所述监视器模块根据所述检测结果判断当前的工作站点中是否存在失效站点,并在检测到存在失效站点时向当前可用的工作站点发送对等站点列表更新指令。
5.根据权利要求1所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,当有非工作站点加入所述工作站点集群时将向所述监视器模块进行注册,以便所述监视器模块对所述工作站点列表进行更新,并将所述更新后的工作站点列表发送给所述负载软均衡模块,同时将更新后的对等站点列表发送到所有所述工作站点。
6.根据权利要求1所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,当所述对等站点集群中的每个工作站点接收到查询请求时,将创建主进程并根据自身的索引块信息创建多个相应的子进程,以使每个子进程从对应的已加载索引块中进行查询,并将查询结果发送给主进程并通过主进程进行整合发送。
7.根据权利要求6所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,所述主进程还用于响应其它工作站点分发的查询请求。
8.根据权利要求6所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,所述子进程对主进程进行监测,以便在所述主进程意外退出时自动关闭。
9.根据权利要求1所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,所述负载软均衡模块包括多个负载软均衡站点,且所述负载软均衡模块维护所述当前可用的工作站点列表。
10.根据权利要求1-9任一项所述的基于对等结构的分布式高维索引并行查询框架,其特征在于,所述索引块文件采用Hybird Spill Tree数据结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201210038115 CN102622414B (zh) | 2012-02-17 | 2012-02-17 | 基于对等结构的分布式高维索引并行查询框架 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201210038115 CN102622414B (zh) | 2012-02-17 | 2012-02-17 | 基于对等结构的分布式高维索引并行查询框架 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102622414A true CN102622414A (zh) | 2012-08-01 |
CN102622414B CN102622414B (zh) | 2013-11-06 |
Family
ID=46562333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201210038115 Active CN102622414B (zh) | 2012-02-17 | 2012-02-17 | 基于对等结构的分布式高维索引并行查询框架 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102622414B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455531A (zh) * | 2013-02-01 | 2013-12-18 | 深圳信息职业技术学院 | 一种支持高维数据实时有偏查询的并行索引方法 |
CN104572785A (zh) * | 2013-10-29 | 2015-04-29 | 阿里巴巴集团控股有限公司 | 一种分布式创建索引的方法和装置 |
CN106681794A (zh) * | 2016-12-07 | 2017-05-17 | 同济大学 | 基于兴趣行为的分布式虚拟环境缓存管理方法 |
CN106686117A (zh) * | 2017-01-20 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种分布式计算集群的数据存储处理***及方法 |
CN106844752A (zh) * | 2017-02-16 | 2017-06-13 | 中电海康集团有限公司 | 一种基于数据关联网络模型的实体关系搜索方法及装置 |
CN108279943A (zh) * | 2017-01-05 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 索引加载方法和装置 |
CN108681592A (zh) * | 2018-05-15 | 2018-10-19 | 北京三快在线科技有限公司 | 索引切换方法、装置、***以及索引切换中控装置 |
CN108920552A (zh) * | 2018-06-19 | 2018-11-30 | 浙江工业大学 | 一种面向多源大数据流的分布式索引方法 |
CN109154937A (zh) * | 2016-04-29 | 2019-01-04 | 思科技术公司 | 查询响应的动态流式传输 |
CN109710642A (zh) * | 2018-12-18 | 2019-05-03 | 中科曙光国际信息产业有限公司 | 基于大数据架构的索引聚合的并行处理*** |
CN109788068A (zh) * | 2019-02-14 | 2019-05-21 | 腾讯科技(深圳)有限公司 | 心跳状态信息上报方法、装置和设备及计算机存储介质 |
CN110221910A (zh) * | 2019-06-19 | 2019-09-10 | 北京百度网讯科技有限公司 | 用于执行mpi作业的方法和装置 |
CN111338560A (zh) * | 2018-12-19 | 2020-06-26 | 北京奇虎科技有限公司 | 一种缓存重建方法和装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106970837B (zh) * | 2017-03-29 | 2020-05-26 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101853283A (zh) * | 2010-05-21 | 2010-10-06 | 南京邮电大学 | 面向多维数据的语义索引对等网络的构建方法 |
US20100281166A1 (en) * | 2007-11-09 | 2010-11-04 | Manjrasoft Pty Ltd | Software Platform and System for Grid Computing |
-
2012
- 2012-02-17 CN CN 201210038115 patent/CN102622414B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100281166A1 (en) * | 2007-11-09 | 2010-11-04 | Manjrasoft Pty Ltd | Software Platform and System for Grid Computing |
CN101853283A (zh) * | 2010-05-21 | 2010-10-06 | 南京邮电大学 | 面向多维数据的语义索引对等网络的构建方法 |
Non-Patent Citations (6)
Title |
---|
《IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING》 20040730 Heng Tao Shen et al. "Efficient Semantic-Based Content Search in P2P Network" 813-826 第16卷, 第7期 * |
《Proceedings of the First Symposium》 20040331 Chunqiang Tang et al. "Hybrid Global-Local Indexing for Efficient Peer-to-Peer Information Retrieval" 1-28 , * |
《计算机集成制造***》 20110831 陈f凤娟等 "面向云环境的图像高维特征索引框架" 1827-1833 1-10 第17卷, 第8期 * |
CHUNQIANG TANG ET AL.: ""Hybrid Global-Local Indexing for Efficient Peer-to-Peer Information Retrieval"", 《PROCEEDINGS OF THE FIRST SYMPOSIUM》 * |
HENG TAO SHEN ET AL.: ""Efficient Semantic-Based Content Search in P2P Network"", 《IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING》 * |
陈F凤娟等: ""面向云环境的图像高维特征索引框架"", 《计算机集成制造***》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455531B (zh) * | 2013-02-01 | 2016-12-28 | 深圳信息职业技术学院 | 一种支持高维数据实时有偏查询的并行索引方法 |
CN103455531A (zh) * | 2013-02-01 | 2013-12-18 | 深圳信息职业技术学院 | 一种支持高维数据实时有偏查询的并行索引方法 |
CN104572785B (zh) * | 2013-10-29 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 一种分布式创建索引的方法和装置 |
CN104572785A (zh) * | 2013-10-29 | 2015-04-29 | 阿里巴巴集团控股有限公司 | 一种分布式创建索引的方法和装置 |
CN109154937A (zh) * | 2016-04-29 | 2019-01-04 | 思科技术公司 | 查询响应的动态流式传输 |
CN106681794B (zh) * | 2016-12-07 | 2020-04-10 | 长春市三昧动漫设计有限公司 | 基于兴趣行为的分布式虚拟环境缓存管理方法 |
CN106681794A (zh) * | 2016-12-07 | 2017-05-17 | 同济大学 | 基于兴趣行为的分布式虚拟环境缓存管理方法 |
CN108279943A (zh) * | 2017-01-05 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 索引加载方法和装置 |
CN108279943B (zh) * | 2017-01-05 | 2020-09-11 | 腾讯科技(深圳)有限公司 | 索引加载方法和装置 |
CN106686117B (zh) * | 2017-01-20 | 2020-04-03 | 郑州云海信息技术有限公司 | 一种分布式计算集群的数据存储处理***及方法 |
CN106686117A (zh) * | 2017-01-20 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种分布式计算集群的数据存储处理***及方法 |
CN106844752A (zh) * | 2017-02-16 | 2017-06-13 | 中电海康集团有限公司 | 一种基于数据关联网络模型的实体关系搜索方法及装置 |
CN108681592A (zh) * | 2018-05-15 | 2018-10-19 | 北京三快在线科技有限公司 | 索引切换方法、装置、***以及索引切换中控装置 |
CN108681592B (zh) * | 2018-05-15 | 2021-05-25 | 北京三快在线科技有限公司 | 索引切换方法、装置、***以及索引切换中控装置 |
CN108920552A (zh) * | 2018-06-19 | 2018-11-30 | 浙江工业大学 | 一种面向多源大数据流的分布式索引方法 |
CN108920552B (zh) * | 2018-06-19 | 2022-04-29 | 浙江工业大学 | 一种面向多源大数据流的分布式索引方法 |
CN109710642A (zh) * | 2018-12-18 | 2019-05-03 | 中科曙光国际信息产业有限公司 | 基于大数据架构的索引聚合的并行处理*** |
CN111338560A (zh) * | 2018-12-19 | 2020-06-26 | 北京奇虎科技有限公司 | 一种缓存重建方法和装置 |
CN109788068A (zh) * | 2019-02-14 | 2019-05-21 | 腾讯科技(深圳)有限公司 | 心跳状态信息上报方法、装置和设备及计算机存储介质 |
CN109788068B (zh) * | 2019-02-14 | 2020-11-03 | 腾讯科技(深圳)有限公司 | 心跳状态信息上报方法、装置和设备及计算机存储介质 |
CN110221910A (zh) * | 2019-06-19 | 2019-09-10 | 北京百度网讯科技有限公司 | 用于执行mpi作业的方法和装置 |
CN110221910B (zh) * | 2019-06-19 | 2022-08-02 | 北京百度网讯科技有限公司 | 用于执行mpi作业的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102622414B (zh) | 2013-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102622414B (zh) | 基于对等结构的分布式高维索引并行查询框架 | |
CN112000448B (zh) | 基于微服务架构的应用管理方法 | |
US7860968B2 (en) | Hierarchical, multi-tiered mapping and monitoring architecture for smart items | |
CN102855284B (zh) | 一种集群存储***的数据管理方法及*** | |
US8156208B2 (en) | Hierarchical, multi-tiered mapping and monitoring architecture for service-to-device re-mapping for smart items | |
CN101930472A (zh) | 一种支持分布式数据库基于并行查询的方法 | |
US8484510B2 (en) | Enhanced cluster failover management | |
CN114443435B (zh) | 一种面向容器微服务的性能监控告警方法及告警*** | |
US20070118560A1 (en) | Service-to-device re-mapping for smart items | |
CN110399535A (zh) | 一种数据查询方法、装置及设备 | |
CN103324582A (zh) | 一种内存迁移方法、装置及设备 | |
CN101662495A (zh) | 备份方法、主服务器、备份服务器以及备份*** | |
CN103491155A (zh) | 一种实现移动计算和获取移动数据的云计算方法及*** | |
CN111966482B (zh) | 边缘计算*** | |
CN102891894A (zh) | 应用于服务器集群的缓存方法、缓存服务器及缓存*** | |
CN111736809B (zh) | 分布式机器人集群网络管理框架及其实现方法 | |
US10481800B1 (en) | Network data management protocol redirector | |
CN116777182A (zh) | 半导体晶圆制造执行任务派工方法 | |
US8892567B2 (en) | Distributed system | |
CN111984393A (zh) | 分布式大规模实时数据调度引擎***及其数据调度方法 | |
US20180184368A1 (en) | Coordinator and control method thereof, wireless sensing network communication system and method | |
US20230376391A1 (en) | Data ingestion replication and disaster recovery | |
US11775563B2 (en) | Low latency ingestion into a data system | |
CN101207518B (zh) | 一种面向分布式资源节点的异步维护*** | |
CN112468310A (zh) | 流媒体集群节点管理方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |