c-thiel commented on PR #331:
URL: https://github.com/apache/iceberg-rust/pull/331#issuecomment-2063797958

   @Fokko thats is a hard topic.
   
   The idealist in me would like to eventually see something like substrait 
beeing used.
   Adoption of the project is very slow across engines though.
   
   Maybe the more practical short-term solution would be to stick to 
representations and even limit to one dialect - the one of the "writer", 
including its technology. Then each client can decide if there is a transpiler 
good enough for that dialect. 
   Funnily enough exactly this ambiguity - that there could be different 
dialects in the representation (say spark and trino) - gave me a lot of 
headaches. Which should I use if I am Datafusion? From which should I 
transpile? What to do if they are not identical?
   
   Sticking to multiple representations is in my opinion only an option if we 
let the catalog handle this complexity.
   Unless substrait gets a significant boost, I would assume that the following 
approach presents the most stable API (Assuming there is only REST Catalog left 
;) ):
   
   - A client would create a view as it does today - however limited to a 
single representation
   - Upon read, a client would additionally present a set of "understood" 
dialects. The catalog can either serve them or it can't.
   
   This way a Rest-Catalog could even switch to Substrait internally in the 
future and start now with storing the presented SQL "as-is" without beeing able 
to serve any other dialect.
   
   With SQLMesh coming up and also Substrait continuing there is at least some 
development in the area.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to