Hi Vadim, Yes, it does serialize objects between operators even if they run within the same Task Manager unless object-reuse configuration is on: https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/config/#pipeline-object-reuse Using immutable data (which is one of the principal of functional programming by the way) with object-reuse works flawlessly.
Best regards, Alexey On Tue, Mar 11, 2025 at 12:46 PM Vararu, Vadim via user < user@flink.apache.org> wrote: > Hello, > > > > Does Flink serialize all the data when moving from one operator to another > (even when there is no shuffling/hashing between them)? > > > > If yes, then, does it worth to have less operators doing more stuff > instead of more granular operators? For instance, one flat map + one filter > could be substituted with one flat map containing the filtering logic > inside. That would minimize the serialization/deserialization between those > two operators. > > > > It that so? Is that a recommended approach? Will that decrease GC? > > > > Thanks, > > Vadim. >