Yingyi Bu created ASTERIXDB-1500: ------------------------------------ Summary: Inject filters to eliminate null/missing join keys for equality joins Key: ASTERIXDB-1500 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1500 Project: Apache AsterixDB Issue Type: Improvement Components: Optimizer Reporter: Yingyi Bu Assignee: Yingyi Bu
For the following query, there could be many tweets that has the field in_reply_to_status_id being null/missing. Therefore, that would skewness of for the hash join. Since this is an inner join and missing/null join keys anyway could not produce qualified join results, the optimizer should inject null/missing filters before the join. {noformat} FROM Tweets t2 JOIN Tweets t1 ON t2.in_reply_to_status_id = t1.id WHERE not(`is-unknown`(t2.in_reply_to_status_id)) GROUP BY t1.id AS id, t1.user.name AS name, t1.text AS text SELECT id, name, text, COUNT(t2) AS num_retweets ORDER BY num_retweets DESC LIMIT 5; {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)