I am evaluating Dremio as a virtualization layer (SQL → SQL dialect) and found it very appealing. The ARP framework is a great abstraction and there are a lot things that I like about it, but do have specific questions that I am hoping the community will help me answer:
Is the ARP framework closed source? if so, is the plan to make it open or will it be an Enterprise feature?
My underlying DB has Aggregation functions not supported by Dremio so Calcite errors out even if the ARP mapping defines the function as valid. I could wrap the call into an external query, but that defeats the purpose of a virtualization layer. Or I could create a User Defined Function on Dremio, which will make the syntax valid, but that requires 1 UDF per non-supported Aggregation, is there another way?
I didn’t see syntax on ARP to pushdown Window functions and in my testing I am seeing ALL window functions being pushdown (log message: No rewriting signature found. Returning default unparsing syntax. ). Is this correct? If not, how can I define which Window functions to pushdown?
ARP defines the field “supports_over”, but on the experiments run on 3) I always saw the window functions with the over clause being pushdown…which confuse me on the purpose of the “supports_over” field. What does it do? In general, where can I find documentation on the different fields available for APR?
I don’t see any DDL/DML support. Is that something planned on the roadmap?
Thanks a lot for the help, I do like how ARP is structured and found the declarative approach superior to what other tools provide!