QueryableRelBuilder can handle translating simple Linq4j expressions
to RelNodes. E.g. QueryableRelBuilder.where creates a LogicalFilter.

In theory you ought to be able to invoke it via
CalciteConnectionImpl.executeQuery(Queryable). I thought there were
tests, but I can't find any.


On Wed, Mar 14, 2018 at 3:10 PM, Michael Mior <[email protected]> wrote:
> Others may correct me, but I don't believe this is currently supported. We
> may not be able to support all of Linq4j, but I'd imagine a usable subset
> would be possible. If you're interested in implementing, that would be
> great! Either way, I'd suggest you file a JIRA case for this. Thanks!
>
> --
> Michael Mior
> [email protected]
>
> 2018-03-14 2:27 GMT-04:00 Walaa Eldin Moustafa <[email protected]>:
>
>> Does Calcite currently support converting a Linq4j expression to relational
>> algebra? After a quick look at the code, it seems that it does not, so if
>> not, do you think it is feasible? On one hand, the Linq4j expressions are
>> very similar to the RelBuilder structure, (e.g., .groupBy(), .orderBy(),
>> etc). On the other hand, the extensive use of functions (e.g., selectors)
>> and in-memory data-types may be difficult to implement as a RelBuilder. The
>> use case I have in mind is to have Linq4j as another top-level interface
>> (that is interpretable to relational algebra) to Calcite in addition to SQL
>> and Piglet.
>>
>> Thanks,
>> Walaa.
>>

Reply via email to