英文:
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?
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论