yfyZzz 2024-08-21 14:06 采纳率: 0%
浏览 3

debezium 问题

博主你好 我订阅了你的debezium专栏 并且有一些问题想请教 我现在有项目正在poc阶段 验证从oracle cdc 获取数据到event hub ,现在的情况是在vm中运行的connect docker容器 连接器每天白天运行正常 能实时从oracle获取数据 ,晚上oracle业务数据很少 但是从后半夜开始会出现获取延迟 最后出现找不到log file 或者没有log 包含scn的错误 连接器停止,只能重建连接器,有什么办法能清除scn 直接把连接器重启吗?获取数据延迟最后报错的原因还在和dba沟通 看是oracle端有什么操作影响,我的这种需求后续开发是不是改用debezium server比较好 还是有什么更好的建议,第一次搞这个东西,各方面掌握的比较欠缺 特来请教 万分感谢~

  • 写回答

1条回答 默认 最新

  • 吃不了席 2024-08-23 18:24
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    在处理Debezium连接Oracle CDC(Change Data Capture)时遇到的问题时,可以采取一系列的步骤来分析和解决问题。根据您的描述,问题主要集中在连接器无法保持稳定运行,出现延迟、日志文件丢失以及SCN错误导致的连接器停止。下面将详细讨论可能的解决策略:

    1. 检查并确保Oracle数据库设置正确

      • 数据库版本和补丁:确保Oracle数据库版本兼容且已应用所有必要的补丁,这可能会影响CDC的功能性。
      • 归档日志模式:验证数据库是否已切换到归档日志模式,这对于CDC来说是必须的。
      • 补充日志配置:确保涉及的表已配置补充日志,这对于CDC能正确捕获变更至关重要。
    2. 优化Debezium Connector配置

      • 调整连接参数:尝试调整Debezium连接器的连接参数,如调整心跳间隔、增加重试次数等,以提高稳定性。
      • 资源分配:确保连接器有足够的资源(如内存和CPU),以处理高负载情况。
      • 隐藏参数调整:某些隐藏参数可能有助于解决特定问题,例如调整Flink CDC的缓冲区大小和时间参数。
    3. 使用更加稳定的Debezium服务器

      • 从Connect Docker容器迁移:考虑从使用Docker容器运行的连接器迁移到Debezium Server,后者可能提供更好的稳定性和更多高级功能。
      • 监控和警报:设置监控系统来监控Debezium Server的健康状况,及时响应任何异常情况。
    4. 调整事件处理逻辑

      • 处理数据延迟:开发逻辑来处理数据延迟的情况,例如通过缓存最近的数据变更,以应对连接器停止时的数据同步。
      • 错误处理:实现错误处理逻辑,当检测到SCN错误或其他关键错误时,能够自动重启连接器或执行其他恢复操作。
    5. 网络和性能优化

      • 网络稳定性:确保VM之间的网络连接稳定,避免因网络问题导致的数据同步延迟或失败。
      • 性能优化:定期进行性能调优,包括数据库和应用程序层面的优化,减少数据处理时间,提高整体效率。

    此外,通过实施上述建议,您不仅可以解决当前的连接器稳定性问题,还可以优化整个数据同步流程,提高系统的稳定性和可靠性。确保持续监控和评估系统性能,以便及时发现并解决新的问题,是保证数据同步成功的关键。

    总的来说,采用这些策略后,您的Debezium设置应该能够更稳定地运行,减少由于连接器故障导致的数据同步问题。随着技术的不断进步和新版本的发布,保持对新技术和最佳实践的关注也非常重要,以确保您的系统能够充分利用最新的功能和改进。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月21日

悬赏问题

  • ¥60 使用 STM32f103c6 微控制器设计两位计数器
  • ¥15 节日彩灯电路设计电路图
  • ¥15 esp32cam串口图传
  • ¥15 C# 用partial定义部分类无法快速预览代码
  • ¥15 fastreport 代码无法设置最后一页横线不显示
  • ¥15 stm32u535芯片usb hid custom类接收数据有问题
  • ¥15 ue5.3 pico打包失败 求帮助
  • ¥15 请教,这是用chatgpt写的CAD LISPD脚本,需求是画一个由双直线组成的矩形
  • ¥50 微信小程序 成功包奶茶啊
  • ¥15 计算机博弈的六子棋代码