• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

记dolphinScheduler1.3.3由于zookeeper引起的bug

武飞扬头像
jingze1
帮助1

1.背景

通过ds的调度中的datax节点将mysql的数据导入到hdfs形成ods层数据,每次导入的是当天新增与变化的数据,然后dwd层是以数据的创建时间划分的日期分区(当然这些不是重点)。

2.问题复现

集群是通过cdh进行部署的,然后在周六的时候因为zookeeper的某些延迟原因导致挂掉了,集群重启也没能很好的解决这个问题,但是呢好歹运行起来了,接着尝试重跑失败的工作流,虽然跑的速度比平时慢了点但是好歹也跑完了。

周一来上班之后,业务人员反馈数据不准确的问题,然后开始排查问题所在。

3.分析问题

然后发现dwd层的数据会有重复的情况,查看ods层表的数据发现也没有重复(这里实际是重复了,只是每小时覆盖一次将重复情况覆盖了),仔细排查ods到dwd的sql也不可能存在数据重复的情况 ,思来想去想去只有可能是datax导数的节点重复运行了,之后去ds任务实例查找发现某个重跑的任务在同一时刻被调度了两次,导致datax导入了两次。

3.解决问题

知道问题之后开始查找出现这个问题的原因,然后在github下的issue 发现有人也遇到了节点多次运行的情况是由于zookeeper不稳定的原因造成的。回想我周六集群挂的时候的确是由于zookeeper的原因挂掉的,所以这个问题终于是明白了,ds在1.3.3以下版本都会遇到这个问题,说是在新版本已经解决了,最后将ds升级到1.3.9解决了这个的问题。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhhheekh
系列文章
更多 icon
同类精品
更多 icon
继续加载