-
Notifications
You must be signed in to change notification settings - Fork 14
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
Delete the rewrite_table_scan from the ExecutionPlan and use it within an AnalyzerRule #61
Comments
Makes sense to me. One caveat we've run into is that you can't blindly rewrite the plan on the DataFusion side, since DataFusion still needs the table names it knows about to work properly. The LogicalPlan generated by |
Yea, good point. We have an implementation where we basically have two separate schemas: the external or "model" schema represented by a I'd love to hear your insight on that approach. I think it's more general. For example, it would work when using plain table providers or when trying to federate using Substrait plans. On the other hand, it could introduce too many new abstraction into the mix. |
In general I'm a fan of simpler systems when possible. I'm not really convinced that adding these abstractions buys us all that much. i.e. for plain table providers, its relatively straightforward to keep state on the internal name and when you call I do see how it would be nice though if that was already handled at a different layer so that the SQL/Substrait federation providers can just call the unparser directly on the plan its given. |
Yea, I guess our use-case for this is somewhat different from federation. It's more related to creating a separate "model" or "semantic layer" on/over top of the storage. |
Hello,
We are thinking of moving the recently added
rewrite_table_scan
function into anAnalyzerRule
instead of running it in theExecutionPlan
. This change makes sense since the AnalyzerRule is responsible for the semantic changes when transforming theLogicalPlan
s.What do you think? @phillipleblanc
cc: @backkem
The text was updated successfully, but these errors were encountered: