原来如此,我觉得是一个不错的想法,但是其实对用户来说,最好除了写SQL之外,其他事情都不要做是最好
你好:
这个原因最开始已经说明了,main jar就是将传入的sql参数进行解析封装,而sql里用到的udf、connector之类的类型希望可以做到动态指定
一方面可以做到灵活的依赖控制,减少main jar的大小
另一方吧可以减少不同connector和udf,或不同版本connector和udf的依赖冲突的可能性
ps:假如平台有数十种connector和数百个udf都打到一个fast jar里想想都觉得不太优雅吧
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Hi silence,
想问下为什么一定要submit参数呢?我理解如果是做平台的话,用户如果有多个jar依赖,为什么不把这些jar统一打包到任务主jar里呢?,平台可以提供一些公共依赖,比如flink,hadoop等
silence 于2020年11月30日周一 下午5:20写道:
> 看了很多同学回复yarn的解决方案
>
> 我这再补充一下:
> 还是希望可以提供更通用的submit参数来解决此问题,
> 包括提交到standalone集群时可以额外指定本地依赖jar
>
> 有没有cli相关的同学可以跟进下建议
> 谢谢
>
>
>
> --
> Sent from: htt
看了很多同学回复yarn的解决方案
我这再补充一下:
还是希望可以提供更通用的submit参数来解决此问题,
包括提交到standalone集群时可以额外指定本地依赖jar
有没有cli相关的同学可以跟进下建议
谢谢
--
Sent from: http://apache-flink.147419.n8.nabble.com/
是提交到 yarn 集群么?
不知道 -yt [1] 是否是你想要的添加依赖的效果?
1:
https://github.com/apache/flink/blob/master/flink-yarn/src/main/java/org/apache/flink/yarn/cli/FlinkYarnSessionCli.java#L183
在 2020-11-06 11:12:33,"silence" 写道:
>感谢回复,还是希望可以从submit上解决这个问题,不能添加依赖限制了很多应用场景,特别是针对平台来说
>
>
>
>--
>Sent from: http
不能在 Submit 模式指定的原因是 Flink 提交模式和 Spark 不同。Flink 是在客户端需要编译
JobGgraph,这样导致在客户端运行时候就需要你所加载的 Jar,
而 Submit 模式的话,只是说把 Jar 包加载到运行的 Classpath 下;但是 Spark 程序的编译是在 服务端做的。
PS:目前 Flink-1.11 的话支持 Application 模式,有点类似 Spark 的提交模式,在这个模式下可以尝试看下是否 可以在 Submit
模式下指定。
|
|
|
|
|
在2020年11月06日 11:12,silence 写道:
感谢回复,
感谢回复,还是希望可以从submit上解决这个问题,不能添加依赖限制了很多应用场景,特别是针对平台来说
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Hi silence,
目前有个 issue [1]在跟进创建 UDF 时候添加 jar 包。
PS:目前在我的内部版本,是扩展了 类似 ADD Dependency 语法,在 job 提交运行时候会把 jar 包等加载到所运行的 classpath 下,
这样就可以让用户在 SQL 中注册 UDF,自己定义 Connector等,但是是非标准 SQL。
[1] https://issues.apache.org/jira/browse/FLINK-14055
Best,
Hailong Wang
在 2020-11-06 09:34:27,"silence" 写道:
>大
大家好
由于目前用了flink SQL封装了jar包,sql是作为参数动态传入的,
因此需要动态的引入一下依赖jar,比如udf jar,connector的jar等,
由于不同任务的依赖jar是不同的,不适合都放在flink lib目录下(可能会冲突)
因此想请教一下有没有办法在submit时才指定任务依赖的jar包,类似spark submit的--jars
没有的话有没有相关的issue可以跟进这个问题
谢谢
--
Sent from: http://apache-flink.147419.n8.nabble.com/