Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can Flink be used with Kotlin?

I have a project where I need to stream data in real time. I've written the instream data to a kafka topic. Now I need to read this data and process it. For this, I plan to use Flink.
My dilemma is that I do not know either Java, Scala or Kotlin. I would have to learn one of them to use Flink and since Kotlin is the latest of the lot, I thought I should learn that, but is it actually compatible with Flink?
I am completely new to any sort of data streaming so please pardon any mistakes in my question and definitely correct me if I am wrong.

like image 263
raviabhiram Avatar asked Sep 07 '17 15:09

raviabhiram


People also ask

What languages does Flink support?

Flink applications are fault-tolerant in the event of machine failure and support exactly-once semantics. Programs can be written in Java, Scala, Python, and SQL and are automatically compiled and optimized into dataflow programs that are executed in a cluster or cloud environment.

What is Flink good for?

Flink is a distributed processing engine and a scalable data analytics framework. You can use Flink to process data streams at a large scale and to deliver real-time analytical insights about your processed data with your streaming application.

Is Flink a real-time streaming system?

Flink capabilities enable real-time insights from streaming data and event-based capabilities. Flink enables real-time data analytics on streaming data and fits well for continuous Extract-transform-load (ETL) pipelines on streaming data and for event-driven applications as well.

Is Flink a framework?

Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams.


1 Answers

The short answer is that you can use any JVM language to interact with Flink: java, kotlin, scala (and probably even something like groovy).

That said, you would probably have some issues finding answers to questions. Flink officially supports scala and java so I would start with either of those two.

Lastly, kotlin being the latest has nothing to do with how good it is. People are using all three successfully. This is mostly a matter of preference (unless you have some special use case).

like image 87
Assaf Mendelson Avatar answered Oct 18 '22 03:10

Assaf Mendelson