[发明专利]一种分布式系统中响应操作指令的方法和装置有效
申请号: | 201510016066.4 | 申请日: | 2015-01-13 |
公开(公告)号: | CN104601693B | 公开(公告)日: | 2019-03-01 |
发明(设计)人: | 郭李明;吕信 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 姜劲;金洁 |
地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 系统 响应 操作 指令 方法 装置 | ||
本发明提供一种分布式系统中响应操作指令的方法和装置,能够在Hadoop集群在进行用户权限更新和节点扩容等操作时,具有比较高的操作效率,并有助于保证集群的可靠性。该方法包括:确定Hadoop系统中所有的NameNode;在接收到操作指令后,对确定出的NameNode进行轮询,并且对轮询到的NameNode执行所述操作指令。
技术领域
本发明涉及计算机技术领域,特别地涉及一种分布式系统中响应操作指令的方法和装置。
背景技术
Hadoop(海杜普)是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(largedata set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streamingaccess)文件系统中的数据。
Hadoop 2.x版本以后,针对原有NameNode单点故障提出了解决方案并加以实现,也就是NameNode高可用(High Availability),实现NameNode热切和自动故障转换,解决方案大体为:Hadoop集群配置两个NameNode,一个为主一个为备用,主NameNode向外提供服务,备NameNode为备用状态,当主NameNode出现故障,备NameNode便会接替原先主NameNode的工作。
目前Hadoop NameNode高可用提供了两种技术方案:
1、共享操作日志目录:Hadoop将文件块的操作日志存储到一个指定的网络文件系统的共享目录中,主NameNode负责把操作日志信息写入到共享目录中,备NameNode负责从共享目录中读取,这样就可达成主备NameNode之间数据一致性。
2、日志同步管理:Hadoop将文件块的操作日志通过一组日志节点进程来进行同步的,这组日志节点进程负责同步主备NameNode之间的日志信息,要求这组日志节点进程的个数不能小于3个。这种模式可以允许一部分日志节点进程同步成功即认为整个同步操作就算成功,允许日志节点进程成功的个数为:(n-1)/2,其中n为这组日志节点进程的总个数,这种策略也能最大限度的保证集群的稳定性和提高集群容错率。
在以上两种NameNode高可用状态下,Hadoop集群用户权限更新和集群节点扩容操作存在缺陷,给集群稳定和高效带来极大风险。图1是根据现有技术中的Hadoop执行用户权限更新和节点扩容操作工作流程的示意图,按图1的流程,当在其中一个NameNode上执行成功后便直接返回,导致另一个NameNode无法接收到最新的用户权限和节点信息,此时如果这个无法接收到最新的用户权限和节点操作指令的NameNode恰好为主NameNode,那么就会导致整个集群都无法获取到最新的用户权限和节点信息,也就无法进行用户权限更新和节点扩容操作,导致信息丢失。
如果未执行操作的NameNode此时并不是主NameNode,当主NameNode服务出现故障,备用NameNode接替服务时,由于之前执行用户权限更新和节点扩容操作时备用NameNode没有获取到最新信息,也会导致用户权限和节点信息丢失。
目前一般采用的人工干预的方式能够在一定程度上解决这个问题,其具体步骤为:在进行用户权限更新或者节点扩容操作时,查看当前主NameNode是否已经获取了最新的用户权限和节点信息,如果未更新,说明执行操作的NameNode不是主NameNode,此时解决办法有两个:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510016066.4/2.html,转载请声明来源钻瓜专利网。