[发明专利]集群检索平台中的自动容灾恢复方法及系统有效
| 申请号: | 201310071239.3 | 申请日: | 2013-03-06 |
| 公开(公告)号: | CN104035836B | 公开(公告)日: | 2018-01-02 |
| 发明(设计)人: | 柳明 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F17/30 |
| 代理公司: | 北京润泽恒知识产权代理有限公司11319 | 代理人: | 苏培华 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 集群 检索 平台 中的 动容 恢复 方法 系统 | ||
技术领域
本申请涉及容灾恢复技术领域,特别是涉及集群检索平台中的自动容灾恢复方法及系统。
背景技术
对于搜索引擎而言,在索引量和搜索量大到一定程度的时候,索引更新的效率会逐渐降低,并且服务器的压力也会逐渐升高,因此,基本上整个搜索引擎的利用率可以说是越来越低了,由此,分布式检索技术便应运而生了。
基于服务器集群的检索系统便是分布式检索技术中的一种,这种系统将检索业务部署到多个节点中。Solr是一个独立的企业级搜索应用解决方案,在Solr的方案中,每个搜索应用会对应一个SolrCore的抽象,可以根据各个检索业务的业务规模合理分配承载SolrCore的机器,并实现M*N的索引模型。在这种M*N的索引模型下,承载同一检索业务的各台机器在逻辑上可以组成一个M*N(M行N列)的矩阵。当在该集群中时创建一个检索业务时,可以根据业务规模等为其选择矩阵的规模(也即,确定出M与N的取值),然后,将检索业务的索引文件按一定的规则切分成N个分片,将各个分片分别部署到矩阵中水平向的各个不同的机器中,同样在此切分规则之下,对数据的访问请求也将按此规则分发到不同的机器中;同时,矩阵中位于同一列上的各个机器可以形成一个副本集,也即同一列的各个机器中保存有相同的索引文件备份,这样可以将来自应用服务器的请求访问(request visit)得以均匀的分布在同一列的各台机器上,用以减缓单台服务器在请求负载上的压力。也就是说,对于一个检索业务而言,在M*N的索引模型下,将会存在N个分片,每个分片存在M个副本,通过这种业务的划分以及冗余机制,可以实现负载均衡,同时也可以实现容灾机制,也即,由于同一分片在不同的机器中存在多个副本,因此,如果其中一台机器宕掉,同一列中的其他机器还可以继续提供检索服务。
但是,当某个M*N存储的搜索业务中的某个节点出现异常故障,如果M=2,则可能导致该业务的某列的存活副本节点为1,此时,如果再出现该列的节点宕机,将会出现整个服务不可用情况。另外,当搜索业务接入方对搜索业务稳定性的要求持续增高,基于之前固定机器节点的M*N索引模型来支持7*24小时无故障搜索服务会变的越来越不可靠。首先,机器宕机故障后,只能通过报警通知才知道节点故障,然后人工才会参与去看什么原因导致宕机;其次,如果只是应用层的故障还好,一旦是物理层的机器坏掉,如硬盘、主板坏掉,遇到这种情况,整个服务的恢复时间完全不可控。
为了避免上述现象的发生,需要一个监控体系,当发现某个业务节点出现异常后,能及时准确的推选出一个或者多个空闲机器节点,以替换那些出现宕机的机器节点,同时快速对外提供正常的搜索服务。只有这样,整个搜索服务出现问题后能较快的重新恢复到稳定状态,而不需要等待原来宕机的机器修复后才能恢复到稳定状态。
目前,有些技术方案中是可以实现自动的容灾恢复,也即,可以自动恢复一个搜索节点替换之前出现问题的检索节点。在这种自动容灾恢复方案中,在发现一个机器宕掉之后,可以从其他的机器节点中随机地选择一台机器作为恢复节点,将该出现问题的节点上的检索工作转移到该恢复节点中,以此实现自动容灾恢复。但是,这种随机选择恢复节点的方式,会影响到系统的整体稳定性,甚至可能会对一个检索业务执行容灾恢复的过程中,对其他的检索业务造成影响。因此,需要一种更可靠的自动容灾恢复机制。
发明内容
本申请提供了集群检索平台中的自动容灾恢复方法及系统,能够在自动容灾恢复过程中,更好地保证系统的稳定性。
本申请提供了如下方案:
一种集群检索平台中的自动容灾恢复方法,所述集群检索平台包括中心节点以及用于提供检索服务的检索节点,所述方法包括:
在所述中心节点中生成各个检索节点的抽象,在所述检索节点的抽象中创建关于该检索节点的第一数据结构,并分别为该检索节点承载的各个副本创建第二数据结构;
在所述第一动态信息数据结构中保存所述检索节点上传的当前机器状态信息,在各个第二数据结构中保存所述检索节点上传的各个副本的当前状态信息;
根据所述当前机器状态信息和/或各个副本的当前状态信息,判断是否存在需要进行恢复的副本;
如果存在,则根据所述当前机器状态信息以及各个副本的当前状态信息,为所述需要进行恢复的副本选择目标检索节点;
将所述需要进行恢复的副本对应的索引文件拷贝到所述目标检索节点中,由所述目标检索节点根据所述索引文件提供检索服务。
一种集群检索平台中的自动容灾恢复系统,所述集群检索平台包括中心节点以及用于提供检索服务的检索节点,所述系统包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310071239.3/2.html,转载请声明来源钻瓜专利网。





