[
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)