Apache kafka Kafka源连接器端是否可能有死信队列主题?

Apache kafka Kafka源连接器端是否可能有死信队列主题?,apache-kafka,apache-kafka-connect,dead-letter,Apache Kafka,Apache Kafka Connect,Dead Letter,Kafka源连接器端是否可能有死信队列主题? IBM MQ Source connector处理的事件面临挑战,它处理N条消息,但发送N-100条消息,其中100条消息是有害消息。 但从下面罗宾·莫法特的博客中,我可以看出在源连接器端使用DLQ是不可行的 上述条款中提到的以下注释: 请注意,源连接器没有死信队列。 1Q)请确认是否有人使用IBM MQ源连接器的死信队列(以下是文档) 2Q)是否有人在任何其他源连接器侧使用DLQ? 3Q)为什么在源连接器侧没有DLQ是一个限制 谢谢。错误。源连

Kafka源连接器端是否可能有死信队列主题? IBM MQ Source connector处理的事件面临挑战,它处理N条消息,但发送N-100条消息,其中100条消息是有害消息。 但从下面罗宾·莫法特的博客中,我可以看出在源连接器端使用DLQ是不可行的

上述条款中提到的以下注释: 请注意,源连接器没有死信队列。

1Q)请确认是否有人使用IBM MQ源连接器的死信队列(以下是文档)

2Q)是否有人在任何其他源连接器侧使用DLQ? 3Q)为什么在源连接器侧没有DLQ是一个限制


谢谢。

错误。源连接器也提供公差
-

但是,如果将其与接收器进行比较,则不提供DLQ选项。相反,您需要解析带有事件详细信息的连接器日志,然后通过管道将其传输到您自己的主题


总的来说,源连接器如何决定哪些事件是坏的?网络连接异常意味着根本不会读取任何消息,因此无法生成任何内容。如果消息未能序列化为卡夫卡事件,那么它们也将无法生成。。。您可以选择快速失败或跳过并记录


如果您只是想按原样发送二进制数据,那么没有什么是“有害的”,可以使用ByteArrayConverter类来完成,但这并不是Kafka Connect的一个很好的用例,因为它主要是围绕具有可解析模式的结构化类型设计的,但至少使用该选项,数据进入Kafka,您可以使用Kstreams从坏消息中分支/过滤好消息

我们通过Source connector从两个不同的源将数据导入Kafka。例如:假设两个团队拥有两个源(源1和源2),向卡夫卡发送数据。Source-1发送了100条消息,Source-2发送了100条消息。卡夫卡主题中应该有200条信息。但是只有150条信息到达了这个主题。Source-1团队声称他们的消息格式未更改且有毒。同样的声明也来自Source-2团队。因此,在Kafka源连接器端,需要一种机制来确定丢失的50条消息是否真的是杀手级消息。为了符合数据格式,我们在IBM MQ源连接器端使用StringConverter(用于键和值)。如果您将数据发送到每个源的一个主题,应该很容易确定问题出在哪里。您还可以尝试启用跟踪日志记录,以获得连接API操作的完整视图。实际上,我们已经停止了两个源,并执行了相同的操作(通过发送一个源数据)。但我们仍然看到遗漏的事件。您能详细介绍一下您在之前的回复中提到的ByteArrayConverter吗?您需要了解的关于该转换器的所有信息都已写入该项目的自述文件中