[发明专利]用于在分布式环境中执行任务的方法、装置及系统有效
申请号: | 201410690593.9 | 申请日: | 2014-11-25 |
公开(公告)号: | CN105701099B | 公开(公告)日: | 2019-01-22 |
发明(设计)人: | 刘帅 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 分布式 环境 执行 任务 方法 装置 系统 | ||
1.一种用于在分布式环境中执行任务的方法,所述方法在执行数据处理任务的设备上实施,其特征在于,包括:
接收根据当前系统配置执行数据处理任务的通知消息;
当所述接收根据当前系统配置执行数据处理任务的通知消息是指接收当前系统配置发生变更的通知消息时,向负责监听数据处理设备相关信息变更的管理设备定期上报本数据处理设备的运行状况,或者,针对接收到的来自所述管理设备的请求上报本数据处理设备的运行状况;相应的,所述接收当前系统配置发生变更的通知消息是指,接收所述管理设备发送的所述通知消息;
获取当前系统配置信息,所述系统配置信息包括:数据处理设备和待处理数据单元的相关信息、以及任务分配算法;
根据所述数据处理设备和待处理数据单元的相关信息,采用所述任务分配算法确定本数据处理设备负责处理的待处理数据单元;
针对所述待处理数据单元,按照预先设定的方式执行数据处理任务。
2.根据权利要求1所述的用于在分布式环境中执行任务的方法,其特征在于,所述待处理数据单元是指,存储待处理数据的数据库;相应的,所述待处理数据单元的相关信息包括:存储待处理数据的数据库的数目、和存储待处理数据的数据库标识;
所述数据处理设备的相关信息包括:所述数据处理设备的数目、和数据处理设备的标识。
3.根据权利要求1所述的用于在分布式环境中执行任务的方法,其特征在于,当接收所述当前系统配置发生变更的通知消息后,在执行所述获取当前系统配置信息的步骤前,执行下述操作:
判断当前是否正在执行数据处理任务,若是,结束当前正在执行的数据处理任务。
4.根据权利要求1所述的用于在分布式环境中执行任务的方法,其特征在于,所述任务分配算法是负载均衡算法。
5.根据权利要求4所述的用于在分布式环境中执行任务的方法,其特征在于,所述根据所述数据处理设备和待处理数据单元的相关信息,采用所述任务分配算法确定本数据处理设备负责处理的待处理数据单元,包括:
用存储待处理数据的每个数据库的标识与所述数据处理设备的数目执行取模操作,将得到的结果作为负责处理相应数据库的数据处理设备编号,得到数据库标识与数据处理设备编号之间的对应关系;
根据每个数据处理设备的标识进行排序,并将本数据处理设备对应的排序号作为本数据处理设备的编号;
根据本数据处理设备的编号以及所述数据库标识与数据处理设备编号之间的对应关系,获取本数据处理设备负责处理的数据库标识。
6.根据权利要求5所述的用于在分布式环境中执行任务的方法,其特征在于,所述数据库标识是指,数据库的IP地址;所述数据处理设备标识是指,所述数据处理设备的IP地址。
7.根据权利要求6所述的用于在分布式环境中执行任务的方法,其特征在于,所述按照预先设定的方式执行数据处理任务是指,采用定时启动的方式执行数据处理任务。
8.根据权利要求6所述的用于在分布式环境中执行任务的方法,其特征在于,所述针对所述待处理数据单元,按照预先设定的方式执行数据处理任务包括:
根据本数据处理设备负责处理的数据库的IP地址,与所述数据库建立连接;
通过已建立的连接,访问所述数据库中的待处理数据并进行处理。
9.根据权利要求1所述的用于在分布式环境中执行任务的方法,其特征在于,所述管理设备是Zookeeper服务器;或者,
Zookeeper服务器或配置中心服务器,其中Zookeeper服务器负责监听数据处理设备的相关信息的变更,配置中心服务器负责监听存储待处理数据的数据库的相关信息的变更以及任务分配算法的变更。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410690593.9/1.html,转载请声明来源钻瓜专利网。