zhijiangW commented on a change in pull request #10492: [FLINK-15140][runtime] 
Fix shuffle data compression doesn't work with BroadcastRecordWriter.
URL: https://github.com/apache/flink/pull/10492#discussion_r355306140
 
 

 ##########
 File path: 
flink-runtime/src/main/java/org/apache/flink/runtime/io/network/buffer/BufferConsumer.java
 ##########
 @@ -44,6 +44,9 @@
 
        private int currentReaderPosition;
 
+       /** Whether this BufferConsumer is copied from another BufferConsumer 
instance. */
+       private final boolean isCopied;
 
 Review comment:
   TBH I do not like the way of introducing this property inside 
`BufferConsumer` for several concerns:
   
   1. This property is not the basic characters of buffer or orienting specific 
scenarios. And it is somehow orienting/relying on the implementation details.
   
   2. In essence this property is coupled with both broadcast improvement and 
compression limitation. In other words it is not easy to explain why one 
`BufferConsumer` would be copied by others to make others understand the 
background. Firstly we have to explain that it is caused by the specific 
broadcast improvement, and further we have to explain the current compression 
implementation has the limitation of reusing the original buffer to copy 
compressed results only for pipelined partition.
   
   Therefore I prefer to introducing the compression feature only for batch 
jobs ATM, and our initial motivation was also for reducing the disk IO cost. 
Although for streaming job the compression can also reduce the network 
bandwidth, it is meanwhile bringing the extra CPU cost and 
compression/decompression time cost. So for the streaming job without 
bottleneck of network bandwidth, it is not very suggested to enable this 
feature.
   
   Most importantly the current compression implementation for streaming job 
brings more customize changes, both for this property in `BufferConsumer` and 
also the local channel property while getting next buffer from view. I guess we 
might have better solutions for streaming compression future. WDYT @pnowojski ?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to