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

Lars Hofhansl commented on PHOENIX-6501:
----------------------------------------

Testing the attached patch. Running a query on a table with 18m rows, that 
selects (counts) 2m of them.

The query on the uncovered global index *does not finish* (I stopped it after 
10 minutes). :(

With no index it takes about 7s, with an uncovered local index it takes about 
10s (due to the merging cost and low selectivity of the query).

So there's some bug somewhere.

 

> Use batching when joining data table rows with uncovered index rows
> -------------------------------------------------------------------
>
>                 Key: PHOENIX-6501
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-6501
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 5.1.2
>            Reporter: Kadir Ozdemir
>            Assignee: Kadir OZDEMIR
>            Priority: Major
>         Attachments: PHOENIX-6501.master.001.patch
>
>
> PHOENIX-6458 extends the existing uncovered local index support for global 
> indexes. The current solution uses HBase get operations to join data table 
> rows with uncovered index rows on the server side. Doing a separate RPC call 
> for every data table row can be expensive. Instead, we can buffer lots of 
> data row keys in memory,  use a skip scan filter and even multiple threads to 
> issue a separate scan for each data table region in parallel. This will 
> reduce the cost of join and also improve the performance.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to