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

Alex Deparvu commented on OAK-6867:
-----------------------------------

bq. So with 10 property indexes, the differences seems to be still there, but 
not as much.
[~tmueller] could you clarify this bit for me? it sounds like you are not going 
to accept the patch even though there are some clear improvements.
Following your reasoning, let's only extract the 10 index numbers:
{noformat}
# UUIDLookupTest                   C     min     10%     50%     90%     max    
   N 
(no hint)
Oak-Segment-Tar                    1       2       3       3       4      14   
17887
(with hint)
Oak-Segment-Tar                    1       2       2       3       3      13   
22280
{noformat}

So the 90% line dropped from {{4 ms}} to {{3 ms}} and the overall throughput 
over 1 minute (benchmark defaults) increased from {{17887}} to {{22280}}. how 
is this insufficient as improvement in an area that is already down to 
milliseconds?

> Enable index hints on UUID lookup query
> ---------------------------------------
>
>                 Key: OAK-6867
>                 URL: https://issues.apache.org/jira/browse/OAK-6867
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: query
>            Reporter: Alex Deparvu
>            Assignee: Thomas Mueller
>             Fix For: 1.8
>
>
> For the UUID lookup query I enabled the (recently added) query hints support 
> where you can specify the index you want to be used and I got an interesting 
> speedup in the benchmarks:
> {noformat}
> Hint disabled, lookup by query
> # UUIDLookupTest                   C     min     10%     50%     90%     max  
>      N 
> No of indexes (60) 60, Lookup by (lookupByQuery)[query] 
> Oak-Segment-Tar                    1       5       5       6       7      27  
>   9837
> Hint enabled, lookup by query
> # UUIDLookupTest                   C     min     10%     50%     90%     max  
>      N 
> No of indexes (60) 60, Lookup by (lookupByQuery)[query] 
> Oak-Segment-Tar                    1       5       5       6       7      13  
>  10128
> Hint enabled, lookup by getNode
> # UUIDLookupTest                   C     min     10%     50%     90%     max  
>      N 
> No of indexes (60) 60, Lookup by (lookupByQuery)[Session#getNodeByIdentifier] 
> Oak-Segment-Tar                    1       5       6       6       7      13  
>   9447
> Hint disabled, lookup by getNode
> # UUIDLookupTest                   C     min     10%     50%     90%     max  
>      N 
> No of indexes (60) 60, Lookup by (lookupByQuery)[Session#getNodeByIdentifier] 
> Oak-Segment-Tar                    1       3       3       3       4       8  
>  17504
> {noformat}
> It seems the cost shortcut is reducing the overall time, but cannot say for 
> sure where this change comes from.
> The only change I did was to add {{option(index name uuid)}} to this query [0]
> [~tmueller], [~chetanm] what do you think?
> [0] 
> https://github.com/apache/jackrabbit-oak/blob/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/identifier/IdentifierManager.java#L356



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to