You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "zhangyang (Jira)" <ji...@apache.org> on 2022/09/01 10:08:00 UTC

[jira] [Created] (FLINK-29166) 多流合并成一个的方案优化

zhangyang created FLINK-29166:
---------------------------------

             Summary: 多流合并成一个的方案优化
                 Key: FLINK-29166
                 URL: https://issues.apache.org/jira/browse/FLINK-29166
             Project: Flink
          Issue Type: Improvement
          Components: API / DataStream
    Affects Versions: 1.14.2
            Reporter: zhangyang
             Fix For: 1.14.2


问题描述:

   我有很多需求场景,需要进行3个以上的数据流(DataStream)进行合并成一条处理后面的业务,后面的业务对数据是有事件时间顺序要求,用flink的union的合完流之后就没有保证其原始的事件时间顺序
{code:java}
//dataStreamArray是有多个的
ataStream0 = dataStream0.union(dataStreamArray); {code}
设计建议:可以按照可以源码中按照dataStreamArray中数组的顺序进行顺序合入流中,而不是随机顺序。

解决方案:目前使用windowAll对合流之后的数据进行了时间顺序排序,完成了整体场景实现,但是windowAll并行度只能是1,影响了整个有向无环图的性能。另外还有个排序场景还没有想到好的弥补方案,只能想union的合流是顺序就能给事件时间的流合并省去很多不必要的麻烦



--
This message was sent by Atlassian Jira
(v8.20.10#820010)