Flink相对于使用Go语言编写的循环消费Kafka消息的程序的优势是什么?

huangapple go评论64阅读模式
英文:

what are the advantages of flink vs a golang program using for loop consuming kafka messages

问题

Flink相对于简单的Golang/Java程序使用for循环消费Kafka消息的优势是什么?谢谢提前!


我明白Flink在确保仅一次处理方面有更好的支持,但还有其他优势吗?

英文:

when consuming kafka messages, what are the advantages of flink over a simple golang/java program using for loops to consume kafka messages?
thanks in advance~


I understand that flink has better support for exactly once assurance, but are there any other advantages?

答案1

得分: 2

Flink是一个ETL工具,它不提供处理保证。它需要一个调度器来部署任何作业,并内置了用于SQL和外部系统连接的库。

如果你只关心一个仅适用于Kafka的轻量级二进制进程,那么绝对可以使用Go、Rust等。但你仍然需要自己带调度器(也许是Kubernetes?)。这个应用程序不能单独在Flink/YARN中运行...

顺便说一句,Apache Beam有一个Go和Java的SDK,还有一个针对Flink的运行时层,所以两者兼顾了?

英文:

Forget processing guarantees. Flink is an ETL tool. It requires a scheduler to actually deploy any job, and has builtin libraries for SQL and connectors to external systems.

If all you care about is a lightweight binary for a Kafka-only process, then absolutely use Go, Rust, whatever. But you still need to bring-your-own scheduler (Kubernetes, perhaps?). That app won't run in Flink/YARN on its own...

BTW, Apache Beam has a Go and Java SDK, and a Flink runtime layer, so best of both?

huangapple
  • 本文由 发表于 2023年2月18日 11:13:32
  • 转载请务必保留本文链接:https://go.coder-hub.com/75490953.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定