dotnet / efcore

EF Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations.
https://docs.microsoft.com/ef/
MIT License
13.8k stars 3.2k forks source link

Support for Azure Data Explorer (kusto/kql) #30766

Open gyz0072004 opened 1 year ago

gyz0072004 commented 1 year ago

Our team is using azure data explorer heavily in our application. Currently we are writing our own mapper & query builder to get data from Azure Data Explorer. We would like some kind of ORM support for ADX.

Provide Azure Data Explorer support just like SQL / Cosmos

roji commented 1 year ago

@gyz0072004 building an EF Core provider is quite a big task; so far, we haven't seen many requests for this which would justify the investment. It's also not clear that everyone wants to model their Kusto data as static .NET types in order to query them with LINQ, as opposed to just writing kql.

gyz0072004 commented 1 year ago

Actually we are building API which supports OData query. Writing KQL for this kind would be really repeatable work and if, EF Core would be able to build a provider, it would also help improve the adoption of the Azure Data Explorer itself.

dciborow commented 1 month ago

Certainly want this. Particularly with dotnet aspire making it easy to connect to data sources like this. The entity layer can particularly use summarizations over fields to make kusto tables return the latest version of entities.

roji commented 1 month ago

FYI we currently have no plans for building a Kusto EF provider (and judging by the number of upvotes to this issue, this isn't something that lots of users are looking for). However, anyone is free to do so in an external repo/package.

Note that as above, I'm not sure what the value would be of doing an EF provider as opposed to a non-EF LINQ provider. As far as I know (and I may be wrong!), Kusto doesn't allow updating the data - only querying - and so a LINQ provider may be more appropriate.