You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by Zili Chen <wa...@gmail.com> on 2019/09/23 03:44:39 UTC

FLINK WEEKLY 2019/38

FLINK WEEKLY 2019/38 <https://zhuanlan.zhihu.com/p/83687529>

本周的 FLINK WEELY 做了分类上的调整,分为用户问题、已知缺陷、开发讨论和社区发展四个模块。其中已知缺陷旨在提供不在 user 列表中出现的
FLINK 已知问题的参考。社区发展除了以前的 NEWS 包含的内容,还会包括 FLINK 相关的博文的链接。如果你撰写了和 FLINK
使用或者任何主题相关的博文,欢迎将链接同步发送到 wander4096@gmail.com,我会将链接附在当期的 FLINK WEEKLY
社区发展模块中。
用户问题

关于使用Flink计算TopN的问题
<https://lists.apache.org/x/thread.html/bdb0f5cc1c3a445e028b883a28da31a2780db302ae84efa33b5f8efc@%3Cuser-zh.flink.apache.org%3E>

TopN 的底层实现使用 RetractableTopNFunction,其中缺少清理空闲状态的逻辑导致状态残留。社区已有相应的 issue
<https://issues.apache.org/jira/browse/FLINK-14119> 和 pull request
<https://github.com/apache/flink/pull/9741> 处理这个问题。

Recommended approach to debug this
<https://lists.apache.org/x/thread.html/db43b68a31e94fb2a97285fcce7a6575bc61f9b73d4d4799b9e134f5@%3Cuser.flink.apache.org%3E>

关于程序中抛出
org.apache.flink.client.program.OptimizerPlanEnvironment$ProgramAbortException
的问题。目前仍在讨论中,但这个异常是 FLINK 的内部异常,在用户代码中抛出通常来说是因为错误地使用 ExecutionEnvironment
的问题。

changing flink/kafka configs for stateful flink streaming applications
<https://lists.apache.org/x/thread.html/0ba113e48d2e09bf81a00e3275750352d193b7001c477f3a56f64ad0@%3Cuser.flink.apache.org%3E>

不同于 Spark Stateful Streaming 在作业启动后就不能修改任何配置项,FLINK
可以在不同配置的集群之间迁移作业,甚至可以在运行过程中修改自己的配置。FLINK 1.9 引入的 Savepoint Processor API
可以进一步的修改 FLINK 的 savepoint 从而实现更多的重新配置作业的动作。

Window metadata removal
<https://lists.apache.org/x/thread.html/4a8244c5609b8f0ff84c850f8f2b071d06ae34e2186849676600b0ad@%3Cuser.flink.apache.org%3E>

在某些场景下 window 的用户并不需要保存 metadata,但是 FLINK 目前对所有的 window 操作都会保存
metadata,这是为了使得 window 更加通用化。对于短窗口但是支持长滞后的作业,可以采用邮件列表中 Fabian
提供的改变作业描述的方式或者简单的通过加机器来解决无用的 metadata 过多导致的问题。

Flink on yarn use jar on hdfs
<https://lists.apache.org/x/thread.html/8d04a27cb61b8f111929fc7b033c27522c1cb8dee433918d499ef409@%3Cuser.flink.apache.org%3E>

Shengnan YU 发现 FLINK 在 YARN 上启动一个新的应用的时候总是会 ship flink-uber jar,这对于部署多个
per-job 模式的任务会带来比较明显的性能负担。Yang Wang 开启了相关的 issue FLINK-13938
<https://issues.apache.org/jira/browse/FLINK-13938> 旨在启动 YARN 上的 FLINK
应用的时候可以指定 HDFS 上 lib 的位置,避免重复 ship。

Difference between data stream window function and cep within
<https://lists.apache.org/x/thread.html/3eaddf50aedc9494698fe20bab403297d63940744121ea4af4df1984@%3Cuser.flink.apache.org%3E>

Dian Fu 解释了 FLINK 中 window function 和 CEP within 实现上的区别。

Extending Flink's SQL-Parser
<https://lists.apache.org/x/thread.html/00c4ec8985f6ff8173e5b667a2d9220ec48c673d620df943fd931d22@%3Cuser.flink.apache.org%3E>

Dominik 在具体业务场景下需要扩展 FLINK SQL 的语义,Rui Li 和 Rong Rong 简要介绍了 FLINK 中 SQL
Parser 的实现方式,提供了可以参考的资料。
已知缺陷

FLINK-14010 Dispatcher & JobManagers don't give up leadership when AM is
shut down <https://issues.apache.org/jira/browse/FLINK-14010>

FLINK on YARN 的一个 BUG。在 AM 与 YARN RM 心跳超时的情况下,可能出现即使旧的 AM 随后收到 YARN RM 发出的
shutdown 请求,新起的 AM 仍然拿不到 leadership 从而无法开始工作的情况。

FLINK-14107 Kinesis consumer record emitter deadlock under event time
alignment <https://issues.apache.org/jira/browse/FLINK-14107>

FLINK Kinesis 连接器的一个 BUG。在使用 event time alignment 的情况下 Kinesis consumer
有死锁的可能。已经在即将发布的 1.8.3 和 1.9.1 上修复。
开发讨论

[DISCUSS] FLIP-68: Extend Core Table System with Modular Plugins
<http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-68-Extend-Core-Table-System-with-Modular-Plugins-td33161.html>

Bowen Li 的 FLIP-68 来源于 对 Hive built-in function 在 FLINK SQL 中的支持的讨论,旨在通过在
FLINK 的 Table 系统之上搭建模块化的插件支持来实现前面提到的功能。

[DISCUSS] FLIP-70 - Support Computed Column for Flink SQL
<http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-70-Support-Computed-Column-for-Flink-SQL-td33126.html>

Danny Chen 的 FLIP-70 旨在支持 FLINK SQL 上的 computed columns 功能。

[DISCUSS] FLIP-71 - E2E View support in Flink SQL
<http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-71-E2E-View-support-in-Flink-SQL-td33131.html>

Zhenghua Gao 的 FLIP-71 旨在支持 FLINK SQL 上的 E2E View 功能。

FLIP-72: Introduce Pulsar Connector
<https://cwiki.apache.org/confluence/display/FLINK/FLIP-72%3A+Introduce+Pulsar+Connector>

Yijie Shen 的 FLIP-72 来源于此前关于在 FLINK scope 引入 Pulsar 连接器的讨论。目前关于如何处理这个
proposal 社区还在讨论当中,但是 Pulsar 连接器的代码已经可以在 Pulsar 代码仓库中找到,主要问题集中在是否要在 FLINK
代码仓库中维护这个连接器。
社区发展

Apache Flink on YARN with Kerberos Authentication
<https://medium.com/@minyodev/apache-flink-on-yarn-with-kerberos-authentication-adeb62ef47d2>

Ana Esguerra 发表了一篇讲述如何在 YARN 上的 FLINK 应用中使用 Kerberos 鉴权的博文。