当前位置: 首页 > news >正文

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

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

  • 一、背景
  • 二、查找数据丢失流程
  • 三、数据丢失原因
  • 四、解决方法

一、背景

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

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

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

二、查找数据丢失流程

  • 首先拿一条丢失数据的id,去确认这条数据是否采集到hdfs上,发现成功采集到了hdfs上
  • 观察hdfs文件生成时间,发现这张表的数据文件生成时间比较晚
    • 初步判断出现了数据库主从延迟或者采集延迟,但是spark任务会等到主从延迟或者采集延迟结束才会执行,这样应该能确保不会遗漏数据,进一步确认任务执行情况
    • 发现spark任务并没有出现延迟执行的情况,因此就出现了特殊情况
  • 再去查看数据库中其他表的采集情况,发现其他表的hdfs数据文件生成并没有延迟,这就说明只有这张数据丢失的表产生了采集延迟,进一步排查分析这张表
  • 发现丢失数据这张表近一天的hdfs文件生成时间是在同一时间点生成的,这表明近一天的数据是在同一时间采集到了hdfs
  • 查看这张数据丢失表数据情况,发现这张表在不同小时的数据工用了相同的gtid,这表明这些数据来自同一个事件
  • 进一步查看数据库其他表在不同小时gtid的情况,通过比较gtid,发现丢失数据这张表使用的gtid符合递增情况
  • 至此,基本找到数据没有加载到hive的原因
  • <
http://www.lryc.cn/news/396190.html

相关文章:

  • 爆破器材期刊
  • Nginx Websocket 协议配置支持
  • 【生成式对抗网络】GANs在数据生成、艺术创作,以及在增强现实和虚拟现实中的应用
  • 大模型面试(三)
  • pycharm中快捷键汇总
  • TCP/IP协议族结构和协议
  • 大模型一些概念的理解 - 线性层、前向传播、后向传播
  • AWS 云安全性:检测 SSH 暴力攻击
  • 7.9数据结构
  • Python 文件操作:打开数据处理的大门
  • 单对以太网连接器多场景应用
  • Python pip的更新问题
  • [Linux][Shell][Shell基础] -- [Shebang][特殊符号][变量][父子Shell]详细讲解
  • DS200CVMAG1AEB处理器 控制器 模块
  • 阈值分割后配合Connection算子和箭头工具快速知道区域的ID并选择指定区域
  • 【work】AI八股-神经网络相关
  • 【LeetCode】12. 小张刷题计划
  • Tomcat部署以及优化
  • ubuntu 22 安装 lua 环境 编译lua cjson 模块
  • 地下城游戏中都有哪些类型的服务器?
  • 大模型面试(二)
  • rsync远程同步--累了,明天继续再写~。
  • 每日刷题(二分查找,匈牙利算法,逆序对)
  • LLM应用构建前的非结构化数据处理(三)文档表格的提取
  • 如何从数码相机恢复已删除的照片
  • 设计模式使用场景实现示例及优缺点(创建型模式——单例模式、建造者模式、原型模式)
  • LAMP万字详解(概念、构建步骤)
  • 金南瓜科技SECS/GEM:引领智能制造新潮流
  • 昇思训练营打卡第二十一天(DCGAN生成漫画头像)
  • 东方通Tongweb发布vue前端