回复:【Flink的shuffle mode】

2020-07-07 文章 夏帅
补充: 1.11的shuffle-mode配置的默认值为ALL_EDGES_BLOCKING
共有
ALL_EDGES_BLOCKING(等同于batch)
FORWARD_EDGES_PIPELINEDPOINTWISE_EDGES_PIPELINED
ALL_EDGES_PIPELINED(等同于pipelined)对于pipelined多出了两种选择


--
发件人:忝忝向仧 <153488...@qq.com>
发送时间:2020年7月7日(星期二) 23:37
收件人:user-zh 
主 题:回复: 【Flink的shuffle mode】

如果是批的模式,怎么在应用程序里面指定shuffle_mode呢?
另外,下面提到如果是流的计算,一定是pipeline模式.
那为什么我使用datastream做keyby流操作后,跟踪源码它的mode是UNDEFINED呢?
谢谢.




--原始邮件--
发件人:"Jingsong Li"

回复:【Flink的shuffle mode】

2020-07-07 文章 夏帅
你好:
问题1,指定shuffle_mode
tEnv.getConfig.getConfiguration.setString(ExecutionConfigOptions.TABLE_EXEC_SHUFFLE_MODE,
 "pipeline")
问题2,mode是UNDEFINED的概念
使用UNDEFINED并不是说模式没有定义,而是由框架自己决定
The shuffle mode is undefined. It leaves it up to the framework to decide the 
shuffle mode.



--
发件人:忝忝向仧 <153488...@qq.com>
发送时间:2020年7月7日(星期二) 23:37
收件人:user-zh 
主 题:回复: 【Flink的shuffle mode】

如果是批的模式,怎么在应用程序里面指定shuffle_mode呢?
另外,下面提到如果是流的计算,一定是pipeline模式.
那为什么我使用datastream做keyby流操作后,跟踪源码它的mode是UNDEFINED呢?
谢谢.




--原始邮件--
发件人:"Jingsong Li"

回复:【Flink的shuffle mode】

2020-07-05 文章 夏帅
你好,可以参考下ExecutionConfigOptions,OptimizerConfigOptions和GlobalConfiguration,里面有比较清楚地介绍




--
发件人:忝忝向仧 <153488...@qq.com>
发送时间:2020年7月6日(星期一) 12:16
收件人:user-zh 
主 题:回复:【Flink的shuffle mode】

那就是说datasream默认模式就是pipeline,而批模式是batch,批的模式是存在shuffle情况下,需要等shuffle操作造成,才能发送到下游.那如果批应用有shuffle操作和没有shuffle的,是都要等这个shuffle操作完成了才能一起发给下游,还是说其他非shuffle操作完成了可以先发给下游,不用等shuffle操作完成一起再发送?



发自我的iPhone


-- 原始邮件 --
发件人: Jingsong Li 

回复:【Flink的shuffle mode】

2020-07-05 文章 忝忝向仧
那就是说datasream默认模式就是pipeline,而批模式是batch,批的模式是存在shuffle情况下,需要等shuffle操作造成,才能发送到下游.那如果批应用有shuffle操作和没有shuffle的,是都要等这个shuffle操作完成了才能一起发给下游,还是说其他非shuffle操作完成了可以先发给下游,不用等shuffle操作完成一起再发送?



发自我的iPhone


-- 原始邮件 --
发件人: Jingsong Li