What is Flinks primary API language?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

What is Flinks primary API language?

idkfaon
Hello,
our dev-team is choosing a language for developing Flink jobs. Most likely that we will use flink-streaming api (at least in the very beginning). Because of Spark jobs developing experience we had before the choice for now is scala-api. However recently I’ve found a ticket(https://issues.apache.org/jira/browse/FLINK-11063) with discussion(https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals) where java-api can become the first class citizen to overcome shortcomings java/scala interoperability, and another one(https://issues.apache.org/jira/browse/FLINK-6756) about absence of api methods in scala-api. That makes me think that java-api becomes a prior. We are both comfortable with java and scala, but we want to implement Flink jobs and support utilities dependent on api that progresses faster. Is java-api such a one? Is java the main implementation language of Flink internals and api, and scala is a (or gravitates to be) java-api wrapper?
Reply | Threaded
Open this post in threaded view
|

Re: What is Flinks primary API language?

Yun Tang
Hi Llya

I believe Java is the main implementation language of Flink internals, flink-core is the kernel module and implemented in Java.

What's more:
FILP6: Replace Scala implemented JobManager.scala and TaskManager.scala to new JobMaster.java and TaskExecutor.java
FILP32: Make flink-table Scala free.

But for API level, from my point of view, I have never heard any plan to stop supporting Scala.

Best
Yun Tang




From: Ilya Karpov <[hidden email]>
Sent: Tuesday, March 26, 2019 15:21
To: [hidden email]
Subject: What is Flinks primary API language?
 
Hello,
our dev-team is choosing a language for developing Flink jobs. Most likely that we will use flink-streaming api (at least in the very beginning). Because of Spark jobs developing experience we had before the choice for now is scala-api. However recently I’ve found a ticket(https://issues.apache.org/jira/browse/FLINK-11063) with discussion(<a href="https://cwiki.apache.org/confluence/display/FLINK/Flink&#43;Improvement&#43;Proposals" class="">https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals) where java-api can become the first class citizen to overcome shortcomings java/scala interoperability, and another one(https://issues.apache.org/jira/browse/FLINK-6756) about absence of api methods in scala-api. That makes me think that java-api becomes a prior. We are both comfortable with java and scala, but we want to implement Flink jobs and support utilities dependent on api that progresses faster. Is java-api such a one? Is java the main implementation language of Flink internals and api, and scala is a (or gravitates to be) java-api wrapper?
Reply | Threaded
Open this post in threaded view
|

Re: What is Flinks primary API language?

idkfaon
Thanks Yun Tang, we will keep that in mind!

26 марта 2019 г., в 11:27, Yun Tang <[hidden email]> написал(а):

Hi Llya

I believe Java is the main implementation language of Flink internals, flink-core is the kernel module and implemented in Java.

What's more:
FILP6: Replace Scala implemented JobManager.scala and TaskManager.scala to new JobMaster.java and TaskExecutor.java
FILP32: Make flink-table Scala free.

But for API level, from my point of view, I have never heard any plan to stop supporting Scala.

Best
Yun Tang




From: Ilya Karpov <[hidden email]>
Sent: Tuesday, March 26, 2019 15:21
To: [hidden email]
Subject: What is Flinks primary API language?
 
Hello,
our dev-team is choosing a language for developing Flink jobs. Most likely that we will use flink-streaming api (at least in the very beginning). Because of Spark jobs developing experience we had before the choice for now is scala-api. However recently I’ve found a ticket(https://issues.apache.org/jira/browse/FLINK-11063) with discussion(https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals) where java-api can become the first class citizen to overcome shortcomings java/scala interoperability, and another one(https://issues.apache.org/jira/browse/FLINK-6756) about absence of api methods in scala-api. That makes me think that java-api becomes a prior. We are both comfortable with java and scala, but we want to implement Flink jobs and support utilities dependent on api that progresses faster. Is java-api such a one? Is java the main implementation language of Flink internals and api, and scala is a (or gravitates to be) java-api wrapper?