Hi Maryann, I am wondering if you could help me understand how the Phoenix calcite branch is using Calcite to do query optimizations
i.e. - some pointers to the code where the joins can detect whether a hash join or a sort merge join should be used for a given case - pointers to how the cost is calculated in the code - pointers to how the filter predicate push down is implemented in the code Examples would be greatly appreciated. Thanks, Li On Mon, Oct 5, 2015 at 5:49 PM, Maryann Xue <maryann....@gmail.com> wrote: > Hi Li, > > Sorry, I forgot to mention that this calcite branch is now depending on > Apache Calcite's master branch instead of any of its releases. So you need > to checkout Calcite (git://github.com/apache/incubator-calcite.git) first > and run `mvn install` for that project before going back to the Phoenix > project and run mvn commands. > > On Mon, Oct 5, 2015 at 6:43 PM, Li Gao <g...@marinsoftware.com> wrote: > >> Hi Maryann, >> >> This looks great. Thanks for pointing me to the right branch! For some >> reason I am getting the following errors when I do mvn package >> >> [WARNING] The POM for >> org.apache.calcite:calcite-avatica:jar:1.5.0-incubating-SNAPSHOT is >> missing, no dependency information available >> >> [WARNING] The POM for >> org.apache.calcite:calcite-core:jar:1.5.0-incubating-SNAPSHOT is missing, >> no dependency information available >> >> [WARNING] The POM for >> org.apache.calcite:calcite-core:jar:tests:1.5.0-incubating-SNAPSHOT is >> missing, no dependency information available >> >> [WARNING] The POM for >> org.apache.calcite:calcite-linq4j:jar:1.5.0-incubating-SNAPSHOT is missing, >> no dependency information available >> >> Where can I find these dependencies? >> >> Thanks, >> >> Li >> >> >> >> On Mon, Oct 5, 2015 at 12:19 PM, Maryann Xue <maryann....@gmail.com> >> wrote: >> >>> Hi Li, >>> >>> We are moving towards integrating with Calcite as our stats based >>> optimization now. You can checkout our calcite >>> <https://git1-us-west.apache.org/repos/asf?p=phoenix.git;a=shortlog;h=refs/heads/calcite> >>> branch and play with it if you are interested. It's still under >>> development, but you can already see some amazing optimization examples in >>> our test file CalciteIT.java. You can also go >>> http://www.slideshare.net/HBaseCon/ecosystem-session-2-49044349 for >>> more information. >>> >>> >>> Thanks, >>> Maryann >>> >>> >>> >>> >>> On Mon, Oct 5, 2015 at 2:08 PM, Li Gao <g...@marinsoftware.com> wrote: >>> >>>> Hi all, >>>> >>>> I am currently looking into getting optimized joins based on table >>>> stats. I noticed in the QueryCompile at line 232-234 is still saying >>>> "TODO". >>>> >>>> >>>> https://github.com/apache/phoenix/blob/4.x-HBase-1.0/phoenix-core/src/main/java/org/apache/phoenix/compile/QueryCompiler.java >>>> >>>> We have a need to get the selector enabled based on the size of the the >>>> LHS and RHS table. >>>> >>>> Thanks, >>>> Li >>>> >>> >>> >> >