微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ClickHouse Kafka 表引擎和恰好一次支持

如何解决ClickHouse Kafka 表引擎和恰好一次支持

我正在寻找关于 Kafka Table 引擎是否支持恰好一次语义的一些清晰度。 我知道 clickhouse 使用 librdkafka,并且 librdafka 从 v1.4 开始支持 EOS。最新版本的 clickhouse 使用的是 librdkafka v1.5+。使用该库是否足以确认 Kafka 表引擎支持 EOS,或者表引擎功能是否需要额外更改以支持 EOS?我从 clickhouse 文档中不清楚。

解决方法

在 CH 中实施两阶段提交之前,Clickhouse 没有 EO。

https://github.com/ClickHouse/ClickHouse/issues/18668#issuecomment-752946654

顺便说一句 - 虽然 EOS 语义将保证您不会在 Kafka 端发生重复(即,即使您多次生成相同的消息,它也会被消费一次),但 ClickHouse 作为 kafka 客户端只能保证至少一次。在某些极端情况下(连接丢失等),您可以获得重复项。 我们需要在 clickhouse 端进行类似交易才能避免这种情况。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。