Skip to main content

Notifications

Microsoft Dynamics 365 | Integration, Dataverse...
Suggested answer

Query Dataverse Architecture

Posted on by 20

Hi there,

I am using Dynamics CRM Online and we have several applications that need to consume data from Dataverse. Some of them are on premise, some on cloud. And some new consumer applications may come in the future.

My question/ point for discussion is, how would you approach this architecturally?

1) each consumer will write its own code to get the data it needs, or

2) create a central, 'proxy' application to expose all data needed, for all the consumer applications

3) other?

Second question/ point for discussion. I assume web api is the way to go (let me know if not). How would you design the exposed operations for solution (2).

1) The simplest approach is to code each operation separately, or

2) Somehow parametrically define the queries and then dynamically construct the web api calls and expose all operations in a common interface. 

Third question, supposing solution (2) is a C# application, how/where would you deploy this?

I would highly appreciate your thoughts and experiences on the above.

  • george.bekos Profile Picture
    george.bekos 20 on at
    RE: Query Dataverse Architecture

    Hi Bipin, thank you for the answer. It is not exactly what I am looking for. My question mainly has to do with how to architect a set of retrieval operations from Dataverse to be consumed by several applications.

    Should the consumer applications do it themselves (with direct connectivity to the Dataverse) or would it be better to create a mediator service and expose through it all the operations needed?

    If the recommended approach is the second, how would I decouple the development of new operations from the consumption of the existing ones? How would I facilitate changes and make creation of new operations easy?

    Then, if this is a C# application, where would you deploy this, taking into account that the consumer applications can be on premise or on cloud.

    So, basically, my question/ thread for discussion has more to do with the architectural aspect.

    Secondarily, it seems that the recommended way is to go with the Web API. The SQL query is still in preview and has the limitation of 80MB and no paging (except if I implement this in a custom way), or am I missing something?

    Thanks everybody for your time!

  • Suggested answer
    Bipin D365 Profile Picture
    Bipin D365 28,964 Super User 2024 Season 1 on at
    RE: Query Dataverse Architecture

    Hi,

    I would recommend to use newly introduced feature by Microsoft to direct query data using SQL

    docs.microsoft.com/.../dataverse-sql-query

    This way different consumer can connect to same sql to get the data required.

    Other option is to set up Data export service to replicate the CRM online data to Azure Sql server in near real time -

    docs.microsoft.com/.../replicate-data-microsoft-azure-sql-database

    Please mark my answer verified if i were helpful

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Community AMA December 12th

Join us as we continue to demystify the Dynamics 365 Contact Center

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,240 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,149 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Product updates

Dynamics 365 release plans