Debezium系列之:记录一次数据库某张表部分数据未同步到hive表的原因

361 篇文章 330 订阅 ¥99.90 ¥299.90

Debezium系列之:记录一次数据库某张表部分数据未同步到hive表的原因

一、背景

  • 反馈mysql数据库中某张表的数据没有同步到hive中,现在需要排查定位下原因

数据丢失一般常见需求排查的方向:

  • 数据是否采集到hdfs上
  • 采集到hdfs的话,进一步去确认数据是否是因为Spark任务资源不够导致没有加载到hive表中
  • 数据没有采集到的话,进一步定位分析没有采集到的原因,目前比较常见的是数据库原因导致、业务场景导致

二、查找数据丢失流程

  • 首先拿一条丢失数据的id,去确认这条数据是否采集到hdfs上,发现成功采集到了hdfs上
  • 观察hdfs文件生成时间,发现这张表的数据文件生成时间比较晚
    • 初步判断出现了数据库主从延迟或者采集延迟,但是spark任务会等到主从延迟或者采集延迟结束才会执行,这样应该能确保不会遗漏数据,进一步确认任务执行情况
    • 发现spark任务并没有出现延迟执行的情况,因此就出现了特殊情况
  • 再去查看数据库中其他表的采集情况,发现其他表的hdfs数据文件生成并没有延迟,这就说明只有这张数据丢失的表产生了采集延迟,进一步排查分析这张表
  • 发现丢失数据这张表近一天的hdfs文件生成时间是在同一时间点生成的,这表明近一天的数据是在同一时间采集到了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

快乐骑行^_^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值