【问题标题】:How can be handle oracle decimal types with GoldenGate "Kafka" / "Kafka connect" handler?如何使用 GoldenGate“Kafka”/“Kafka connect”处理程序处理 Oracle 十进制类型?
【发布时间】:2017-10-19 08:46:41
【问题描述】:

我想使用 Oracle GoldenGate(它是 orcale cdc 工具)将 oracle 与 Kafka 集成。 我找到了两个处理程序:

  1. http://docs.oracle.com/goldengate/bd123110/gg-bd/GADBD/using-kafka-connect-handler.htm#GADBD-GUID-81730248-AC12-438E-AF82-48C7002178EC 带有 avro 格式化程序
  2. http://docs.oracle.com/goldengate/bd123110/gg-bd/GADBD/using-kafka-handler.htm#GADBD449

这两个处理程序都不支持十进制类型(我的意思是他们不将 avro 中的十进制视为逻辑类型,或者其他方式),这个工具只是将十进制转换为双精度类型。在这种情况下,我们会降低精度。

除了编写自己的处理程序之外,有没有人知道处理小数的好方法?

【问题讨论】:

  • 我更喜欢使用 confluent 的 kafka 连接处理程序,因为它解决了模式演变的问题。

标签: oracle apache-kafka cdc oracle-golden-gate


【解决方案1】:

您需要 12.3.1.1.4 及以下版本:

gg.handler.<name>.format.mapLargeNumbersAsStrings=false
gg.handler.<name>.format.enableDecimalLogicalType=true
gg.handler.<name>.format.enableTimestampLogicalType=true

【讨论】:

  • 是的,我看到新版本具有此功能。但是我们公司使用的是11.X oracle。并且在近两年内不会迁移到新的。所以我只是将 CDC 迁移到 XStream API。我也检查了 Debezium,但当我尝试时它处于 Alpha 阶段。
猜你喜欢
  • 1970-01-01
  • 2019-03-08
  • 1970-01-01
  • 1970-01-01
  • 2018-09-29
  • 2023-04-10
  • 2021-04-27
  • 2019-02-21
  • 2019-04-22
相关资源
最近更新 更多