Hi all,
我在生产环境使用Flink一段时间后,随着集群不断变大,有些问题愈发明显 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 |
Hi, 1. 在jobGraphGenerator:: createSingleInputVertex 中可以看到chain的判断逻辑。 2. 这个概念类似于Spark的Stage,多个operator对应一个vertex,具体相信你看过上面的代码会明白 3. 不同的parallel会涉及到chain的打断和数据的partitioning,调优和具体的情况有关,钉上二中的视频了解下。 石权 Sent from Mail<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10 ________________________________ From: runtime <[hidden email]> Sent: Wednesday, July 10, 2019 11:35:30 AM To: user-zh Subject: 关于Flink Chain的一些问题 Hi all, 我在生产环境使用Flink一段时间后,随着集群不断变大,有些问题愈发明显 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 |
In reply to this post by runtime
你好,
> 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? Chain 的 operator 合并到一个 task 中,可以避免潜在的网络传输,见 [1] > 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain 文档参考:[1], [2] Chain 的条件有很多种,最常见就是上下游并发要一致,有兴趣可以读一下相关代码 [3] 关于 isChainable 的部分 > 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel > 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 Parallel 不相同的情况一定不会 chain,这是一个可能的问题 Parallel 调优没有什么具体的模式,适合你的就好,可以参考 back pressure 的情况,尽量在少占用资源和少 back pressure 之间平衡 1. https://ci.apache.org/projects/flink/flink-docs-master/concepts/runtime.html#tasks-and-operator-chains 2. https://ci.apache.org/projects/flink/flink-docs-master/dev/stream/operators/#task-chaining-and-resource-groups 3. https://github.com/apache/flink/blob/master/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/graph/StreamingJobGraphGenerator.java runtime <[hidden email]> 于2019年7月10日周三 上午11:35写道: > Hi all, > 我在生产环境使用Flink一段时间后,随着集群不断变大,有些问题愈发明显 > 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? > 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain > 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel > 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 > |
感谢!
我去研究研究诸位指引的资料 Biao Liu <[hidden email]> 于2019年7月10日周三 下午12:38写道: > 你好, > > > 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? > > Chain 的 operator 合并到一个 task 中,可以避免潜在的网络传输,见 [1] > > > 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain > > 文档参考:[1], [2] > Chain 的条件有很多种,最常见就是上下游并发要一致,有兴趣可以读一下相关代码 [3] 关于 isChainable 的部分 > > > 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel > > 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 > > Parallel 不相同的情况一定不会 chain,这是一个可能的问题 > Parallel 调优没有什么具体的模式,适合你的就好,可以参考 back pressure 的情况,尽量在少占用资源和少 back pressure > 之间平衡 > > > 1. > > https://ci.apache.org/projects/flink/flink-docs-master/concepts/runtime.html#tasks-and-operator-chains > 2. > > https://ci.apache.org/projects/flink/flink-docs-master/dev/stream/operators/#task-chaining-and-resource-groups > 3. > > https://github.com/apache/flink/blob/master/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/graph/StreamingJobGraphGenerator.java > > runtime <[hidden email]> 于2019年7月10日周三 上午11:35写道: > > > Hi all, > > 我在生产环境使用Flink一段时间后,随着集群不断变大,有些问题愈发明显 > > 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? > > 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain > > 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel > > 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 > > > |
Hi 我觉得这篇博客能够帮助到你:
https://wuchong.me/blog/2016/05/09/flink-internals-understanding-execution-resources/ , 你可以参考一下 沈磊 runtime <[hidden email]> 于2019年7月10日周三 下午2:35写道: > 感谢! > 我去研究研究诸位指引的资料 > > Biao Liu <[hidden email]> 于2019年7月10日周三 下午12:38写道: > > > 你好, > > > > > 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? > > > > Chain 的 operator 合并到一个 task 中,可以避免潜在的网络传输,见 [1] > > > > > 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain > > > > 文档参考:[1], [2] > > Chain 的条件有很多种,最常见就是上下游并发要一致,有兴趣可以读一下相关代码 [3] 关于 isChainable 的部分 > > > > > 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel > > > 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 > > > > Parallel 不相同的情况一定不会 chain,这是一个可能的问题 > > Parallel 调优没有什么具体的模式,适合你的就好,可以参考 back pressure 的情况,尽量在少占用资源和少 back > pressure > > 之间平衡 > > > > > > 1. > > > > > https://ci.apache.org/projects/flink/flink-docs-master/concepts/runtime.html#tasks-and-operator-chains > > 2. > > > > > https://ci.apache.org/projects/flink/flink-docs-master/dev/stream/operators/#task-chaining-and-resource-groups > > 3. > > > > > https://github.com/apache/flink/blob/master/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/graph/StreamingJobGraphGenerator.java > > > > runtime <[hidden email]> 于2019年7月10日周三 上午11:35写道: > > > > > Hi all, > > > 我在生产环境使用Flink一段时间后,随着集群不断变大,有些问题愈发明显 > > > 1. 在文档中提到的 Chain 的概念我理解为 Source -> ,,,, -> Sink 单管道输送数据? > > > 2. 对于 Chain 的概念是否有更多的资料可以参考,以及什么时候会破坏这个 Chain > > > 3. 调优中,如果 Sink 的 Parallel 小于前一个 Operatior 的 Parallel 对比 相同的 Parallel > > > 会有什么区别,如何进行 Parallel 方面的调优,是否有资料可以供观摩参照的 > > > > > > |
Free forum by Nabble | Edit this page |