ApacheFlink:我们可以从窗口化的JoinApply函数中获取WindowsStartTime和windowEndTime吗?
我正在ApacheFlink中实现两个流的简单连接。我需要窗口连接应用函数中的WindowsStartTime和windowEndTime。有没有办法得到它们?我尝试了“getRuntimeContext()”,但没有成功。ApacheFlink:我们可以从窗口化的JoinApply函数中获取WindowsStartTime和windowEndTime吗?,join,apache-flink,flink-streaming,sliding-window,Join,Apache Flink,Flink Streaming,Sliding Window,我正在ApacheFlink中实现两个流的简单连接。我需要窗口连接应用函数中的WindowsStartTime和windowEndTime。有没有办法得到它们?我尝试了“getRuntimeContext()”,但没有成功。 streamA.join(streamB) .where(new KeySelector<String, String>() { @Override
streamA.join(streamB)
.where(new KeySelector<String, String>() {
@Override
public String getKey(String str) throws Exception {
return str;
}
}).equalTo(new KeySelector<String, String>() {
@Override
public String getKey(String str) throws Exception {
return str;
}
}).window(SlidingEventTimeWindows.of(Time.seconds(windowSize), Time.seconds(windowSlideStep)))
.apply(new JoinFunction<String, String, String>(){
@Override
public String join(String x, String y) throws Exception {
Long windowStartTime = ???
Long windowEndTime = ???
}});
streamA.join(streamB)
.where(新密钥选择器(){
@凌驾
公共字符串getKey(字符串str)引发异常{
返回str;
}
}).equalTo(新的键选择器(){
@凌驾
公共字符串getKey(字符串str)引发异常{
返回str;
}
}).window(SlidingEventTimeWindows.of(Time.seconds(窗口大小),Time.seconds(窗口滑动步骤)))
.apply(新函数(){
@凌驾
公共字符串联接(字符串x、字符串y)引发异常{
长窗口开始时间=???
长windowEndTime=???
}});
对不起,这是不可能的。@DavidAnderson非常感谢您,您总是非常乐于助人。在这种情况下,我们如何知道输出属于哪个窗口,特别是在使用带有小滑动步骤的滑动窗口时?