hadoop - 无法远程调试 mapreduce 作业的原因
问题描述
Map reduce 作业无法在分布式集群中远程调试,因为每个 map 和 reduce 都会产生自己的 JVM。它到底是什么意思?我们不能为涉及 map reduce 作业的集群中每个节点中的每个进程附加调试器吗?
我一直在阅读很多文章和解决方案,但无法理解在分布式集群中调试 map reduce 作业背后的问题。任何帮助,将不胜感激。
谢谢
解决方案
您在任何给定时间只能调试一个任务。据我所知,没有调试器可以一次创建多个会话;具体来说,每个 mapreduce 任务都不能单独配置 JVM 调试端口,所以如果可能的话,您必须知道作业在哪个节点管理器上启动,并确保同一主机上没有端口重叠
如果您真的需要远程调试,那么您的单元测试覆盖率似乎一开始就很差,您可能不应该将所述代码部署到生产中。
推荐阅读
- c++ - 计算着色器管道创建崩溃
- superset - 隐藏图表标题
- android - 如何从 android 获取照片并将其放入 Xamarin 表单中的 Image 控件中?
- google-apps-script - 使用 Google Apps 脚本在 Blogger 中创建帖子
- c++ - 忽略字符串流中的空格不适用于 skipws 标志
- google-apps-script - 如何设置数据范围
- google-apps-script - 谷歌表格:保持单元格值不变如果 importhtml 返回 #N/A 错误
- bash - 重试失败的 xcodebuild 测试
- ruby-on-rails - Selenium Chrome 看不到在 Rails Rspec Docker 环境中启用事务装置的数据库更改
- jquery - 从引导 daterangepicker 计算天数