[发明专利]基于Spark平台的分布式调试方法、装置及电子设备在审
申请号: | 201810005025.9 | 申请日: | 2018-01-03 |
公开(公告)号: | CN108228459A | 公开(公告)日: | 2018-06-29 |
发明(设计)人: | 顾亮亮 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 项京;马敬 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制程序 调试 装置及电子设备 分布式程序 分布式调试 监视点 分布式数据 程序扩展 程序运行 调试效率 断点调试 断点 进程 开发 | ||
1.一种基于Spark平台的分布式调试方法,其特征在于,包括:
在所述Spark平台中设置扩展程序,通过所述扩展程序扩展所述Spark平台的弹性分布式数据集RDD类,使扩展后的RDD类支持断点操作和监视点操作;
在Spark程序的Driver进程中设置第一调试控制程序,并在所述Spark程序的Executor进程中设置第二调试控制程序;
基于所述扩展后的RDD类,通过所述第一调试控制程序和所述第二调试控制程序,对所述Spark程序进行断点调试或监视点调试。
2.根据权利要求1所述的方法,其特征在于,所述对所述Spark程序进行断点调试,包括:
当检测到所述Executor进程遇到断点时,控制所述第二调试控制程序暂停执行所述Executor进程;
和/或者,当检测到所述Driver进程接收到指示所述Executor进程继续执行的指令后,通过所述第一调试控制程序控制所述第二调试控制程序继续执行所述Executor进程。
3.根据权利要求1所述的方法,其特征在于,所述对所述Spark程序进行监视点调试,包括:
当检测到所述Executor进程遇到监视点时,控制所述第二调试控制程序按照预设规则对当前RDD类中包括的RDD分布式数据进行计算,并判断计算结果是否满足预设条件;
如果计算结果满足所述预设条件,控制所述第二调试控制程序暂停执行所述Executor进程;和/或者,当检测到所述Driver进程接收到指示所述Executor进程继续执行的指令后,通过所述第一调试控制程序控制所述第二调试控制程序继续执行所述Executor进程;
或者,如果计算结果不满足所述预设条件,控制所述第二调试控制程序继续执行所述Executor进程。
4.根据权利要求2或3所述的方法,其特征在于,在所述控制所述第二调试控制程序暂停执行所述Executor进程后,所述方法还包括:
通过所述第二调试控制程序将所述Executor进程对应的变量信息发送给所述第一调试控制程序;
控制所述第一调试控制程序展示所述变量信息。
5.根据权利要求4所述的方法,其特征在于,所述变量信息存储于所述Executor进程对应的内存中。
6.一种基于Spark平台的分布式调试装置,其特征在于,包括:
扩展模块,用于在所述Spark平台中设置扩展程序,通过所述扩展程序扩展所述Spark平台的弹性分布式数据集RDD类,使扩展后的RDD类支持断点操作和监视点操作;
设置模块,用于在Spark程序的Driver进程中设置第一调试控制程序,并在所述Spark程序的Executor进程中设置第二调试控制程序;
调试模块,用于基于所述扩展后的RDD类,通过所述第一调试控制程序和所述第二调试控制程序,对所述Spark程序进行断点调试或监视点调试。
7.根据权利要求6所述的装置,其特征在于,所述调试模块包括:
第一控制子模块,用于当检测到所述Executor进程遇到断点时,控制所述第二调试控制程序暂停执行所述Executor进程;
和/或者,第一调试子模块,用于当检测到所述Driver进程接收到指示所述Executor进程继续执行的指令后,通过所述第一调试控制程序控制所述第二调试控制程序继续执行所述Executor进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810005025.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种整机退库检验的方法及系统
- 下一篇:一种可视化测试脚本生成方法和系统