Flink 在 keyBy、window 和 window 应用后没有结果

Flink no results after keyBy, window and window apply

我尝试对我的数据流进行一些 Flink 操作。但我没有得到任何结果。有谁知道为什么不呢。感谢您的帮助。

KeyedStream<Tuple2<String, Long>, Tuple> stream1 = stream.keyBy(0);

stream1.print(); //Here I have results

DataStream<Tuple3<Integer, String, Date>> stream2 = stream1.window(TumblingEventTimeWindows.of(Time.seconds(15))).apply(new WindowFunction<Tuple2<String, Long>, Tuple3<Integer, String, Date>, Tuple, TimeWindow>() {
                    @Override
                    public void apply(Tuple tuple, TimeWindow window, Iterable<Tuple2<String, Long>> input, Collector<Tuple3<Integer, String, Date>> out) {
                        int counter = 0;
                        for (Tuple2<String, Long> ignored : input) {
                            counter++;
                        }
                        out.collect(new Tuple3<>(
                                counter,
                                tuple.get(0), //I also manually extracted the key from the Tuple, but that did also not work
                                new Date(window.getEnd())));
                    }

        });

stream2.print(); //here I do not have any resulat

弗林克版本:1.10 没有错误

感谢 Dominik Wosiński,我找到了解决方案。

我提取了时间戳但忘记设置 TimeCharacteristic。我忘记了以下行:

env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime);