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

Till commented on ASTERIXDB-1779:
---------------------------------

I think that there are no strict reasons anywhere. However, we should be able 
to succinctly describe to a user of our system how we come up with a query 
plan. 
So far we've used (I think) the order of occurrence in a query as a hint. Now 
we could change that to ignore the order and only respect it, if the user 
provides another hint. 
Certainly doable, but yet another line in the description. I'm not sure what 
the right answer is.
If we do introduce some for of cost, I think that we should also have some 
guidelines to determine if a function is expensive (and not just a list of 
functions that seems expensive now).

> Processing the certain function predicates after a simple predicates
> --------------------------------------------------------------------
>
>                 Key: ASTERIXDB-1779
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1779
>             Project: Apache AsterixDB
>          Issue Type: Improvement
>            Reporter: Taewoo Kim
>            Assignee: Taewoo Kim
>
> For example, if we have the following AQL query,
> {code}
> for $i in dataset MyData
>    where $i.id < 5 and edit-distance($i.name, "Arnold") < 2
>    return $i;
> {code}
> It may be better to process *$i.id < 5* predicate first and then process 
> *edit-distance($i.name, "Arnold")* predicate since the processing cost of the 
> latter is higher than that of the former.  



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to