【问题标题】:Can Flink be used with Kotlin?Flink 可以与 Kotlin 一起使用吗?
【发布时间】:2018-02-16 10:33:12
【问题描述】:

我有一个项目需要实时传输数据。我已将流内数据写入 kafka 主题。现在我需要读取这些数据并进行处理。为此,我打算使用 Flink。
我的困境是我既不了解 Java、Scala 也不了解 Kotlin。我必须学习其中的一个才能使用 Flink,由于 Kotlin 是最新的,我想我应该学习它,但它实际上与 Flink 兼容吗?
我对任何类型的数据流都是全新的,所以请原谅我的问题中的任何错误,如果我错了,一定要纠正我。

【问题讨论】:

  • 如果 Flink 是用 Java(或 Scala 或 Kotlin)编写的,您可以使用这三种语言中的任何一种,因为它们在 JVM 上运行(使用 Java 字节码)。
  • Flink 是用 Java 和 Scala 编写的,但不是 Kotlin。我了解他们都使用相同的JVM进行编译。
  • 如果某个东西正在使用 JVM,则意味着所有 JVM 语言都与之兼容(即,如果代码是用 JVM 语言编写的,您可以使用任何语言)
  • 目前唯一的问题是由于 Kotlin 编译器问题,lambda 不能与 Kotlin 一起使用。错误跟踪器:issues.apache.org/jira/browse/FLINK-23979

标签: scala kotlin apache-flink flink-streaming bigdata


【解决方案1】:

简短的回答是,您可以使用任何 JVM 语言与 Flink 交互:java、kotlin、scala(甚至可能是 groovy)。

也就是说,您在寻找问题的答案时可能会遇到一些问题。 Flink 官方支持 scala 和 java,所以我会从这两者中的任何一个开始。

最后,kotlin 是最新的与它的好坏无关。人们成功地使用了这三个。这主要是一个偏好问题(除非您有一些特殊用例)。

【讨论】:

    猜你喜欢
    • 2019-06-17
    • 2023-01-18
    • 2021-06-22
    • 2017-07-08
    • 2016-07-26
    • 1970-01-01
    • 2018-09-05
    • 1970-01-01
    • 2019-06-19
    相关资源
    最近更新 更多