大家好,本文为 Flink Weekly 的第十期,由张成(Ace)整理,主要内容包括:近期社区开发进展,邮件问题答疑以及 Flink 最新社区动态及技术文章推荐。
社区开发进展
■ [release] 关于发布 Flink 1.10.1 的讨论正在火热进行,最新消息请参考 Yu Li 发起的讨论。
[1]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Releasing-Flink-1-10-1-td38689.html
■ [Checkpoint] Arvid Heise 发起 FLIP-76 的投票已经通过。FLIP-76 提出了一种基于检查点屏障的非阻塞对齐执行检查点的方法。相关好处有:
- 即使某些 Operator 仍在等待正在输入通道上的检查点屏障,上游仍可以继续产生数据。
- 即使对于具有单个输入通道的 Operator,在整个执行图中的检查点次数也大大减少。
- 即使在不稳定的环境中,最终用户也将看到更多的进展,因为更及时的检查点将避免过多的重复计算。
- 促进更快地 rescaling。
更多信息参考:
[2]https://cwiki.apache.org/confluence/display/FLINK/FLIP-76%3A+Unaligned+Checkpoints
[3]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-76-Unaligned-checkpoints-td33651.html
■ [Connectors/Filesystem] 删除 BucketingSink。BucketingSink 已经在 Flink 1.9 版本标记为过期。Flink 有一个新的 StreamingFileSink 替代 BucketingSink。目前 StreamingFileSink 的 scala 版本存在 bug。
[4]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/jira-Created-FLINK-16616-Drop-BucketingSink-td38950.html
[5]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Drop-Bucketing-Sink-td38830.html#a38831
[6]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/jira-Created-FLINK-16684-StreamingFileSink-builder-does-not-work-with-Scala-td39109.html
■ [Table API & SQL] Jingsong Li 发起了引入 StatefulSequenceSource 的讨论。这个能够方便用户更好的进行测试 SQL。最终讨论决定在 Table 支持 DataGenerator 的 source、Print 的 sink 和blackhole 的 sink。
■ [sql] Timo 分享了一个关于新的 TableSource 和 TableSink 接口的提案(FLIP-95)。Jark、Dawid、Aljoscha、Kurt、Jingsong 等参考了讨论。其目标是简化当前的接口架构,以支持变更日志源(FLIP-105)和删除对 DataStream API 和 planner 的依赖。
■ [hadoop]跟进 Stephan 和 Till 的讨论。Sivaprasanna 分享了 Hadoop 相关实用程序组件的概述,以开始讨论将其移动到单独的模块中 “flink-hadoop-utils”。
[9]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/SerializableHadoopConfiguration-td38371.html
[10]http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Introduce-a-new-module-flink-hadoop-utils-td39107.html
用户问题
■ 叶贤勋在使用 Hive Source 的时候遇到了 Kerberos 认证的问题,社区同学进行了相关的讨论和建议,感兴趣的同学可以参考如下链接:
[11]http://apache-flink.147419.n8.nabble.com/Hive-Source-With-Kerberos-td1688.html
■ hiliuxg 在社区提问 Flink SQL 如何支持每隔 5 分钟触发当日零点到当前 5 分钟的聚合计算。Jark Wu 和 Tianwang Li 进行了相关解答。
[12]http://apache-flink.147419.n8.nabble.com/flink-sql-5-5-td2011.html
■ hiliuxg 在社区提问 Flink SQL COUNT DISTINCT 性能优化。Benchao Li、田志声、Lucas Wu、Lake Shen 展开了一些讨论,有兴趣的同学可以参考如下链接:
[13]http://apache-flink.147419.n8.nabble.com/flink-sql-td2012.html
■ 王志华 在社区提问 Flink DDL 如何支持自定义 Source/Sink 表。社区同学在邮件中进行了详细的回答。
[14]http://apache-flink.147419.n8.nabble.com/ddl-td1959.html
■ 111 在社区提问 Flink SQL1.10 大表 join 如何优化?Jark Wu、Kurt Young 和 Jingsong Lee 进行了详细的解答。目前 Flink SQL 的并行度(非 Source )并不是自动推断出来的,需要通过设置table.exec.resource.default-parallelism,详细的内容参考:
[15]http://apache-flink.147419.n8.nabble.com/Flink-SQL1-10-join-td2044.html
[16]http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/Flink-SQL-How-can-i-set-parallelism-in-clause-of-group-by-td33736.html
■ Aaron Levin 在社区提问 如何能够做到修改任务的并发,然后从 checkpoint 启动任务。Piotr Nowojski、Till Rohrmann 参与了相关讨论。内容涉及到 unaligned checkpoints (FLIP-76) 对savepoint 和 checkpoint 的影响。同时 Lake Shen 也提出了类似的问题。有兴趣的同学可以参考:
[17]http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/Expected-behaviour-when-changing-operator-parallelism-but-starting-from-an-incremental-checkpoint-td33608.html
[18]http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/Cancel-the-flink-task-and-restore-from-checkpoint-can-I-change-the-flink-operator-s-parallelism-td33613.html
■ Jiawei Wu 在社区提问“如何使用 Flink SQL 计算 按照供应商分组同时入库时间大于 15 天的库存数据?”,有兴趣的同学可以参考:
[19]http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/Use-flink-to-calculate-sum-of-the-inventory-under-certain-conditions-td33323.html
■ Vinod Mehra 在社区提出了一个关于 Join 相关的问题。这个问题比较复杂,Timo Walther 进行了相关解答。里面涉及到了一些如何进行 Flink SQL 问题的排查。有兴趣的同学可以参考:
活动博客文章及其他
■ SQL 开发任务超 50% !滴滴实时计算的演进与优化
[21]https://ververica.cn/corporate_practice/evolution-and-optimization-of-didi-real-time-computing/
■ Flink 生态:一个案例快速上手 PyFlink
[22]https://ververica.cn/developers/pyflink-a-case-in-hand/
■ 一套 SQL 搞定数据仓库?Flink有了新尝试[23]https://ververica.cn/developers/a-set-of-sql-to-handle-data-warehouse/
■ 如何在 Flink 中规划 RocksDB 内存容量?
[24]https://ververica.cn/developers/how-to-plan-the-memory-capacity-of-rocksdb-in-flink/
2 分钟快速订阅 Flink 中文邮件列表
Apache Flink 中文邮件列表订阅流程:
- 发送任意邮件到 user-zh-subscribe@flink.apache.org
- 收到官方确认邮件
- 回复该邮件 confirm 即可订阅
订阅成功后将收到 Flink 官方的中文邮件列表的消息,您可以向 user-zh@flink.apache.org 发邮件提问也可以帮助别人解答问题,动动手测试一下!
Flink Weekly 作者征集
Flink Weekly 是由社区同学发起的并持续更新的 Flink 社区每周动态汇总,内容涵盖邮件列表中用户问题的解答、社区开发和提议的进展、社区新闻以及其他活动、博客文章等,发布于 Apache Flink 中文邮件列表、Flink 中文社区官方微信公众号及各大社区专栏。
- 如果你也想积极参与社区,掌握社区最新动态
- 获得 Apache Flink PMC 及 Committer 对技术文章写作的指导
- 与社区深度参与者们交流
- 拥有更多曝光的平台与机会
欢迎报名 Flink Weekly 作者!众所周知,Flink 学的好,女朋友容易找,Flink 学成,头发茂!点击“阅读原文”填写信息即可加入小松鼠大家庭~
作者介绍:
张成,小红书技术部基础平台开发工程师,目前主要在做基于 Flink 的实时计算平台开发。