Kafka消息写入延迟

时间:2019-03-04 18:28:06

标签: apache-kafka confluent cdc ibm-infosphere

我们正在尝试测量Infosphere CDC- Confluent kafka设置中消息写入的延迟。我们有虚拟表,将执行虚拟事务。

数据流- MF DB2表-> IIDR-> Kafka主题

(对于Kafka,制片人是iidr)

在没有任何企业监视工具的情况下找出样本事务的写延迟的正确方法是什么? 我们可以检查日志中是否有写入,并考虑每个事务时间戳,并与cdc事务日志进行比较以找出写入延迟吗?

PS-我已将jconsole配置为收集kafka指标。但是,我们如何找到特定CDC流对kafka主题的写入延迟?

谢谢!

1 个答案:

答案 0 :(得分:0)

(仅供参考:我为IBM以及IDR CDC产品工作)

在创建Kafka生产者记录时,IDR复制产品中集成的KCOP(Kafka自定义操作处理器)不提供时间戳参数。如果您在不使用KCOP的情况下使用默认行为,情况也是如此。

因此,Kafka会在收到每个生产者记录时为其生成时间戳,并将其与该记录相关联。读取消息时,此时间戳值包含在客户记录中。

这可以与通过减法从源生成的时间进行比较。有一个时间戳日记控制字段,可以与行数据一起复制。在某些来源上,例如Db2 LUW,它表示事务的提交时间。在某处表示将特定行添加到日志的时间。

https://www.ibm.com/support/knowledgecenter/en/SSTRGZ_11.4.0/com.ibm.cdcdoc.mcadminguide.doc/refs/recordmodificationtime.html

一般而言,我认为从提交真正生效起最好考虑延迟,但这取决于您要了解的内容。

我相信在DB2 Z上,每个都是操作的日志条目的时间,您可以通过使用事务中最后一个操作的时间戳条目来粗略地近似。这忽略了最后一个事务的写入与实际提交之间的延迟量,但是通常这些延迟非常接近。

IDR确实提供了功能增强的请求,因此,如果您希望看到增强功能,请随时通过支持或此方法与我们联系。

此致