Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extending filter condition #28

Open
wangli1426 opened this issue May 23, 2014 · 3 comments
Open

Extending filter condition #28

wangli1426 opened this issue May 23, 2014 · 3 comments

Comments

@wangli1426
Copy link
Contributor

As is known to us, Filter currently only supports "AND" logic among atomic expressions (atomic expression refers to the expressions that are supported by schema->operator).
@fzh,@egraldlo: Maybe it is the time to support "OR" logic in Filter Iterator.

In my opinion, we can make a further step rather than only supporting "OR" logic. In other words, we can leverage "ExpressItem" to support any desirable logic of the filter condition. If we do, the filter iterator based on ExpressItem will be very similar to project iterator.

Considering the currently poor performance of ExpressItem, we would better keep two versions of Filter Iterator: the current one and the one based on ExpressItem. When there is only "AND" logic and Atomic expressions in the filter condition, we use the current filter iterator for performance concern. And when there are complex expresses or "OR" logic, we use the Filter iterator based on Expression.

@egraldlo: please make sure the codes of ExpressItem and project in your latest commit are stable and up to date. If so, I will begin to implement the new filter iterator based on your latest commit.

@fzhedu
Copy link
Member

fzhedu commented May 24, 2014

4.条件下推
1)(OR_clause) AND (OR_clause) And (OR_clause)...[OR clause 为主体是or结构,或者单个表达式的]
2)OR_clause下推的限度是TB_set(OR_clause中涉及到的表集合为TB_set)中表最早出现的位置
eg: TA.a>0 or TB.a<0

。。。。。TD
。。。。。/
。。。 TA(TA.a>0 or TB.a<0)
。。。 / 。
。。 TC 。 TB

@wangli1426 wangli1426 self-assigned this May 26, 2014
@wangli1426
Copy link
Contributor Author

@fzhedu : why did you pose last comment?

@fzhedu
Copy link
Member

fzhedu commented May 26, 2014

I mean that we can design a consolidated method to support pushing down expression.but we should support or-operator first.

@wangli1426 wangli1426 removed their assignment Nov 22, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants