[ https://issues.apache.org/jira/browse/PHOENIX-76?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13917623#comment-13917623 ]
James Taylor commented on PHOENIX-76: ------------------------------------- Thanks, [~lhofhansl]. That'll help [~anoop.hbase] in figuring out the default rules for when to use the new filter. bq. What would really help is if we could make sure that canonical column (right now it's "_", which sorts after capital letters) would always sort first... I.e. call it "$" or "!" or something. That should double the performance of count(1) for example. FYI, we rarely project the canonical column, it's there mainly to ensure a row still gets returned when a column is selected by not filtered. For the count(1) case, we use the FirstKeyOnlyFilter(). > Fix perf regression due to PHOENIX-29 > ------------------------------------- > > Key: PHOENIX-76 > URL: https://issues.apache.org/jira/browse/PHOENIX-76 > Project: Phoenix > Issue Type: Bug > Affects Versions: 3.0.0 > Reporter: James Taylor > Assignee: Anoop Sam John > Fix For: 3.0.0 > > Attachments: PHOENIX-76.patch > > > Many queries got slower as a result of PHOENIX-29. There are a few simple > checks we can do to prevent the adding of the new filter: > - if the query is an aggregate query, as we don't return KVs in this case, so > we're only doing extra processing that we don't need. For this, you can check > statement.isAggregate(). > - if there are multiple column families referenced in the where clause, as > the seek that gets done is better in this case because we'd potentially be > seeking over an entire stores worth of data into a different store. -- This message was sent by Atlassian JIRA (v6.2#6252)