[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15999656#comment-15999656 ] Hao Tan commented on CALCITE-1389: -- Thank you, Michael. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15999632#comment-15999632 ] Michael Mior commented on CALCITE-1389: --- This rule implemented a *very* limited set of techniques from that paper and would only perform matching in a very restricted set of circumstances. No caching was implemented. In any case, this rule was made obsolete by CALCITE-1731. I'd suggest you look there instead. It's still not a complete implementation of the approach in the paper, but it's more solid than this. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15999254#comment-15999254 ] Hao Tan commented on CALCITE-1389: -- Hi Michael Mior, I tried out this new rule and it seems that I am not able to match A join B join C to a view created by another permutation (e.g. B join C join A). View query uses the same set of table and contains all columns required by the query. Have you tested similar cases for this rule? In MaterializationTest.java, I can only find case that only binary join is used. BTW, Does calcite has a complete implementation of the techniques covered in ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf for materialized view matching? > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15626883#comment-15626883 ] Michael Mior commented on CALCITE-1389: --- Fixed in [435b6d4|https://github.com/apache/calcite/commit/435b6d47b195f55e4a926da3ba27f3bb0e5699cc]. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15626881#comment-15626881 ] Michael Mior commented on CALCITE-1389: --- Thanks! That did the trick. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15626203#comment-15626203 ] Julian Hyde commented on CALCITE-1389: -- Maybe something involving {{CalciteAssert.AssertQuery.withHook(Hook.PROGRAM, ...)}}? > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15626156#comment-15626156 ] Michael Mior commented on CALCITE-1389: --- Any suggestions on how I can selectively enable the rule during tests? I'd like to keep the test case in MaterializationTest, but it will fail with the MaterializedViewJoinRule not enabled. I don't see an obvious to have it enabled just for the tests. (Ideally, just for that single test). > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15623045#comment-15623045 ] Julian Hyde commented on CALCITE-1389: -- I'm fine with that. In fact, the documentation will help people decide which rules to enable to achieve a particular materialization strategy. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15623037#comment-15623037 ] Michael Mior commented on CALCITE-1389: --- I think it might be good to disable this rule by default. That is, avoid adding it to the default planner constructed in {{CalcitePrepareImpl}}. Thoughts? The documentation would mention that it is necessary to manually add this rule and the goal would still be to eventually have this enabled by default. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15623016#comment-15623016 ] Julian Hyde commented on CALCITE-1389: -- Yes, please open a separate issue for the doc, and go ahead and commit your PR. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15585567#comment-15585567 ] Michael Mior commented on CALCITE-1389: --- Sounds like a great idea. I will admit that I don't have a great handle on some of the aspects you mentioned, but I think all of those should be included in the documentation. I think this is worth opening up a separate issue for which I'll do if there are no objections. Maybe we can get some stable documentation on existing use of MVs before pushing this further. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15582936#comment-15582936 ] Julian Hyde commented on CALCITE-1389: -- I'm happy for these changes to go in. But I'd like to have a sense for where the effort is going - and where it fits with related efforts. How would you feel about creating a page in our documentation about materialized views? It would cover regular materializations (with their general-purpose matching algorithm), lattices (specialized for SPJA), planning secondary indexes (as [~maryannxue] has done in Phoenix), view recommendations, and life cycle issues (how do we invalidate materialized views? how to add the necessary hooks so that they appear in the schema). We could discuss which query patterns each kind of MV can handle; and compare with MVs in other systems such as Cassandra and Druid; and list some of the possible future directions. It would help our users figure out which are the best pieces of our (complicated) framework to use. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15565650#comment-15565650 ] Michael Mior commented on CALCITE-1389: --- Definitely far from production quality IMO, but I think interesting enough to be included. I'll have to think over what would happen in each of the scenarios you presented above, but it's definitely not very robust at this point. Some more test cases clarifying the current behaviour are definitely in order. That said, I've tried to make the rule fairly restrictive so it won't try to rewrite cases that aren't correctly handled. For example, I check that all the joins are inner joins. My target for this is conjunctive queries with equality predicates and simple field references in the SELECT clause. bq. Or if the the MV doesn't use any table twice, but the MV does? I assume one of the references to MV above should be query? I haven't thought specifically about the complexity of this approach, but I would expect poor performance with a large number of MVs. The paper gives some ideas on how to build index structures to optimize this. On a related note, if you have any suggestions on where an appropriate place in the code would be to construct such indexes and what object should own the index data, that would be helpful. As for where this fits into planning, I think this could still work as part of Volcano. Using MVs when possible is not always the best choice. It also enables cost-based selection of multiple MVs when that's an option. Thanks for the style suggestions. I fixed those issues. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15563739#comment-15563739 ] Julian Hyde commented on CALCITE-1389: -- I reviewed your change. It looks fine, but a few comments: * I don't get a sense that this is very robust. It may be robust, but to be convinced, I'd need to see a lot more tests covering more of the potential patterns. * I can't figure out how it would fit into multi-phase planning. It seems to be a Hep step. So, would it happen early in the planning process, before Volcano? * Can it handle multiple MVs? What if more than one matches? * If you have an MV on {{A join B}}, can it match a query {{A join B join C}}; can it match a query {{B join C}}? * What if there are intervening GROUP BYs between the items in the join tree (or SELECT DISTINCTs or semi-joins). * What if the MV uses the same table twice, by different join paths? Or if the the MV doesn't use any table twice, but the MV does? * What are the performance characteristics if the number of MVs grows large? In short, I can't tell how far this is along the road to production quality. It doesn't need to be production quality (we can flag it as 'experimental') but we do need to know what cases it can handle, what the deficiencies are, and which of those deficiencies could be addressed by future work. Code style: * If you need to wrap arguments, e.g. https://github.com/apache/calcite/pull/284/files#diff-937b1dde0b0e60b098796a4a10d4a2e6R115, don't align with the '(', instead indent 4. * In method javadoc, use active "Produces ..." rather than imperative "Produce ..." > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > Fix For: 1.11.0 > > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15548597#comment-15548597 ] Michael Mior commented on CALCITE-1389: --- Sorry, somehow I didn't see your earlier comment. Not sure how I missed this, but I added it now. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15547794#comment-15547794 ] Jesus Camacho Rodriguez commented on CALCITE-1389: -- {quote} [~michaelmior], I think you are missing some files in the PR (at least the rule itself)? {quote} [~michaelmior], have you checked this? I could review and try to include it in 1.10.0. Thanks > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15527228#comment-15527228 ] Julian Hyde commented on CALCITE-1389: -- I haven't looked at your code yet but I am familiar with the paper. Did you consider implementing that paper by building on top of Calcite's lattice construct? The problem with "free form" materialized views is that there tend to be a lot of them. The paper aims to solve that problem, and so do lattices. But lattices are better: they can gather statistics and recommend creating views that don't exist but would likely be useful. Lattices are essentially the same as the SPJ views described in the paper, but of course today they need to be created by hand. (I would argue that for DW-style workloads, creating lattices by hand is a lot more practical than creating MVs by hand. This is not just about making the optimizer's life easier, but also about making the DBA's life easier. MVs are not easy to manage operationally.) By anyway, if people have created a lot of MVs by hand, my idea was to have an algorithm that created lattices automatically, and thereby reduce the cost of examining all of those MVs. The main missing piece, as I see it, is an algorithm that, given a collection of MVs, creates an optimal set of lattices such that each MV belongs to a lattice. > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15527152#comment-15527152 ] Jesus Camacho Rodriguez commented on CALCITE-1389: -- [~michaelmior], I think you are missing some files in the PR (at least the rule itself)? > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1389) Add rule to perform rewriting of queries using materialized views with joins
[ https://issues.apache.org/jira/browse/CALCITE-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15527032#comment-15527032 ] Michael Mior commented on CALCITE-1389: --- Pull request available on GitHub. https://github.com/apache/calcite/pull/284 > Add rule to perform rewriting of queries using materialized views with joins > > > Key: CALCITE-1389 > URL: https://issues.apache.org/jira/browse/CALCITE-1389 > Project: Calcite > Issue Type: Improvement > Components: core >Reporter: Michael Mior >Assignee: Michael Mior > > I've been looking into implementing the approach from the following paper. > It's very nicely written and easy to follow. It also doesn't require trying > different join permutations. I'm starting with several additional > restrictions (only equijoins, no aggregations, etc.) > ftp://ftp.cse.buffalo.edu/users/azhang/disc/SIGMOD/pdf-files/331/202-optimizing.pdf > Thanks to [~jcamachorodriguez] for his help in sorting out some issues with > the rule so far. -- This message was sent by Atlassian JIRA (v6.3.4#6332)