[ 
https://issues.apache.org/jira/browse/KUDU-2381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16861340#comment-16861340
 ] 

Todd Lipcon commented on KUDU-2381:
-----------------------------------

Looking again at a similar workload and still see behavior like this. An easy 
fix is likely to have a new bool like 'DeltaPreparer::_may_have_deltas' which 
can be set to true in all of the spots where deleted_, reinserted_, and 
updates_by_col_ are modified. We can use that to implement MayHaveDeltas easily 
and to short-circuit the clearing of updates_by_col_ for the common case of no 
deltas.

> Optimize DeltaMemStore for case of no matching deltas
> -----------------------------------------------------
>
>                 Key: KUDU-2381
>                 URL: https://issues.apache.org/jira/browse/KUDU-2381
>             Project: Kudu
>          Issue Type: Improvement
>          Components: perf, tablet
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>            Priority: Major
>
> Currently in a scan workload which scans 280 columns I see DeltaMemStore 
> iteration taking up a significant amount of CPU in the scan, despite the fact 
> that the dataset has no updates. Of 1.6sec in 
> MaterializingIterator::NextBlock, we spent 0.61s in DMSIterator::PrepareBatch 
> and 0.14s in DMSIterator::MayHaveDeltas. So, about 46% of our time here is on 
> wasted work.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to