如何迁移KSQL应用程序?

发布于 2025-01-30 05:25:58 字数 697 浏览 4 评论 0原文

我有一个复杂的应用程序流,具有多个流式流连接和流台式连接。为了简化事物,可以说我只使用流A和B。我试图通过删除每个流和桌子并重新创建它们来迁移“天真”方式。但是,问题似乎是,即将流向B的新数据与流的旧数据没有连接。它仅加入娱乐之后的新消息。

我进行了更多研究,发现了一个名为“ auto.offset.reset”的属性。第二次尝试,我再次放弃了所有内容,然后打开了一个新的KSQL会话,并将“ auto.offset.reset”设置为“最早”,然后重新执行所有创建语句。但是问题似乎仍在发生。

我已经阅读了指南: https://docs.ksqldb.io/en/latest/how-to-guides/update-a-running-persistent-peristent-query/ ,但它们似乎并不深入。

理想的迁移是使用新的模式重新创建所有内容,而不会重新触发或重新启动旧消息。另外,新消息应该能够加入以前的消息。非常感谢有关迁移运行KSQL应用程序的最佳实践的任何信息。

I have a complex application flow with multiple stream-stream joins and stream-table joins. To simplify things let's say I am only using stream A and B. I tried migrating the "naive" way by dropping every stream and table and recreating them. However the problem seems to be that new data coming to stream B doesn't get joined with old data that stream A had. It only joins on new messages that have come after the recreation.

I investigated a bit more and discovered a property called 'auto.offset.reset'. As a second attempt I dropped everything again, then opened a new KSQL session and set 'auto.offset.reset' to 'earliest' and re-executed all the create statements. However the problem still seems to occur.

I have read the guides at: https://docs.confluent.io/platform/current/ksqldb/cloud-ksql-migration-guide.html and https://docs.ksqldb.io/en/latest/how-to-guides/update-a-running-persistent-query/ but they don't seem to go very in depth.

The ideal migration would be to recreate everything with new schemas and not have old messages get re-triggered or re-consumed. Also new messages should be able to join with previous messages. Any information about the best practises to migrate running KSQL applications is much appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文