Taewoo Kim created ASTERIXDB-1762:
-------------------------------------

             Summary: AQL+ needs to be revised. 
                 Key: ASTERIXDB-1762
                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1762
             Project: Apache AsterixDB
          Issue Type: Improvement
            Reporter: Taewoo Kim
            Assignee: Taewoo Kim


AQL+ is a super set of AQL (two differences: meta-variable and meta-clause), 
and is used to transform the given plan using a rewritten AQL+ statements. 
Using AQL+ to construct AQL+ statements and translate it to expressions and a 
plan, the sub plan of the given operator as well as the operator itself can be 
transformed into a new plan. 

Currently, AQL+ is not synced with AQL grammar. Actually, it only uses a 
certain portion of AQL constructs in one rule - FuzzyJoinRule. Since AQL+ is a 
super set of AQL and the concepts (meta-variable and meta-clause) of AQL+ is 
not used by other AQL constructs, I think we can integrate AQL and AQL+. 

1) Integrate AQL and AQL+
Then, we do not need to maintain separate grammar and ExpressionToPlan 
Translator. And since normal AQL grammar doesn't interfere with AQL+ grammar 
(we never expose the AQL+ grammar to the user level). Currently, FuzzyJoin 
requires AQL+ functionality to build the transformed plan. Unless we want to 
introduce the massive number of operators in hand in the plan, I think it's 
better remove separate grammar and integrate it with AQL.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to