1.概述
当 Kafka Sink 遇到 Kafka 宕机或连接中断的情况时,Flink 的 Kafka Sink 会根据配置的失败处理语义来处理未发送成功的数据。Flink 提供了三种不同的失败处理语义:
-
Fail on Error(默认选项)
:如果 Kafka 发送失败,Flink 会将错误抛出给上游操作符,并触发任务失败。这意味着未发送成功的数据会被丢弃。 -
Fail on Write
:如果 Kafka 发送失败,但是上游操作符已经成功处理了数据,Flink 会将错误抛出给上游操作符,并触发任务失败。这也意味着未发送成功的数据会被丢弃。 -
Ignore
:无论 Kafka 发送是否成功,Flink 将忽略发送错误,并继续处理后续数据。这种情况下,未发送成功的数据将会被丢弃,并且任务不会失败。
你可以根据具体的需求和业务场景选择合适的失败处理语义。默认情况下,Flink 会使用 Fail on Error 失败处理语义,确