Y-Wakuta / nosql_time-series_schema_designer

GNU General Public License v3.0
1 stars 0 forks source link

Prune join plans that would not be used #42

Closed Y-Wakuta closed 4 years ago

Y-Wakuta commented 4 years ago

Current Implementation enumerates join plans for each query separately. However, if all of CFs in one join plan is not shared with other query's query plans, the plan and the CFs would not be recommended in the result. Although join plans are possibly efficient for reducing the space, NoSE optimizes for cost first and then space. Therefore,  once the cost value is determined using MV plans, join plans cannot be used with the cost value

Y-Wakuta commented 4 years ago

Plans that have only one CF could be pruned by almost the same logic. Since, one Materialized plan is promised, if only one CF step is not shared with other queries, possibly there is no reason to recommend the non-materialized view single step plan

Y-Wakuta commented 4 years ago

Pruning join plan possibly worsens update performance since materialized view, or other CFs similar to MV, is too large to update. Moreover, decomposed CFs like those used in join plan are easy to update. pruning join plan that consisted CFs do not have upserted field would be safer to prune

Y-Wakuta commented 4 years ago

fixed in #41