eldenmoon opened a new pull request, #17389:
URL: https://github.com/apache/doris/pull/17389

   …k and delta writer of writing blocks
   
   The current distribution model for Doris is as follows:
   
   OlapTableSink seperate the original Block into serveral subblocks of each 
node(BE) by tablets distribution and distributes subblocks to storage engine of 
backends, then the storage engine will seperate the subblock into multiple 
tablets channel and each delta writer will handle partial of the block.
   
   This model causes blocks to be split according to tablets, and the splitting 
process can be a relatively heavy operation. After splitting, the blocks are 
distributed to different DeltaWriters (Memtables) through RPCs to 
TabletChannels. The distribution operation on TabletChannels is also a 
relatively heavy operation. If the distribution property of the table is RANDOM 
distribution, then we have the opportunity to distribute the blocks according 
to the complete block during distribution. The advantage of doing so is to 
reduce memory copying and improve write locality, similar to appending the 
entire block to the memtable.
   
   This optimze could save 10% ~ 20% CPU cost of RANDOM distribution table load 
when enable load_to_single_tablet
   
   # Proposed changes
   
   Issue Number: close #xxx
   
   ## Problem summary
   
   Describe your changes.
   
   ## Checklist(Required)
   
   * [ ] Does it affect the original behavior
   * [ ] Has unit tests been added
   * [ ] Has document been added or modified
   * [ ] Does it need to update dependencies
   * [ ] Is this PR support rollback (If NO, please explain WHY)
   
   ## Further comments
   
   If this is a relatively large or complex change, kick off the discussion at 
[d...@doris.apache.org](mailto:d...@doris.apache.org) by explaining why you 
chose the solution you did and what alternatives you considered, etc...
   
   


-- 
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.

To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to