我想知道Flink是如何处理一个操作符的结果到多个下游操作符的分支的。如果我有一个操作符A,它与另外3个操作符B,C和D并行连接,Flink是否只保留结果的一个副本,并将其发送到所有3个操作符?假设是这样的话,结果是否在发送到所有3个操作符后被删除,或者是否有一个垃圾收集过程?我在Flink文档中没有找到任何关于这个主题的具体内容。任何关于这个主题的相关资源都是非常感谢的。
bfnvny8b1#
在将记录A发送给操作员B、C、D之前,FLINK将记录A序列化为字节,然后这些字节将被复制到缓冲池中,用于不同操作员的子分区,因此记录A将有多个副本。记录A稍后将被GC。
1条答案
按热度按时间bfnvny8b1#
在将记录A发送给操作员B、C、D之前,FLINK将记录A序列化为字节,然后这些字节将被复制到缓冲池中,用于不同操作员的子分区,因此记录A将有多个副本。
记录A稍后将被GC。