Dual-write brings the possibility of integration with configuration not customisation, woohooo
Dual-write was released this week after a year of people trying it and deciding it isn’t ready yet. I sometimes criticise Microsoft for releasing functionality early but the advantage is we get to try the functionality, help Microsoft test it and get a deeper understanding of what the functionality can do now and it’s potential.
Integrated Dynamics applications
The reason I’m skeptical about new functionality is because it rarely matches the marketing that precedes it. The marketing is exaggerated but the documentation is good. Microsoft has been telling everyone separate Dynamics applications are integrated for years. This left partners delivering projects in the position of explaining can but it will take a bunch of time to make them work together.
How we got here
The Dynamics applications and services have been drifting towards each other and over the last year at an increasing speed. Microsoft cleaning up the unsupported customisations and replace them with controls, allowed them to create CDS. I llove the fact they created CDS by using a plain Dynamics 365, it’s framework and infrastructure to create a plain database to build integrated customisations on.
CDS, connectors and Azure customisations (Power Automate, Logic Apps, Azure functions) to link services together to create powerful solutions.
CDS allows you to mix data from different Dynamics sources , so you can put data from Dynamics CE and Dynamics F&O together.
Microsoft moved from a strategy of developing multiple applications to creating services that can be used by all the Dynamics applications. CDS shares data and the connectors allow you to link Dynamics services/CDS to other services (Azure, Twitter, exchange).
Integrating data between Dynamics applications creates interesting questions
- Do you need to have the data in both systems?
- Which system is the master?
Dual-write allows Dynamics F&O to be integrated to CDS in a near real time (almost instantly) and its bi-directional. It’s built on the common Data Service. Stick to the common data model and you will save yourself lots of work.
If you change an account In F&O it copies the data instantly to CDS and vice versa. The big win is it does this with no need to write any lines of code, it’s only configuration baby.
To get the facts on Dual-write, read the blog posts below
- Microsoft Documentation — Dual-write overview
- Blog post — Dual-write automates data flow between Dynamics 365 applications and Common Data Service
- Jukka Niiranen — Dynamics 365 Dual Write goes GA
- What is dual-write and how can it help your organization
This picture nicely captures the capabilities of Dual-write from the second blog post above
The interesting concepts from above are transforming, which you can see the need to do when mapping F&O and Dynamics.
Does it work?
Most Dynamics people I speak to want this functionality to work and the Dynamics products to integrate out of the box. I saw it tried on a project August last year and it was slow and could only copy to the default business unit, which made it unuseable.
Dual-write is the direction of travel for Microsoft Dynamics projects, so get used to it and get learning about it because this future of Dynamics projects. When you can see Microsoft is investing in a service (like Power Apps, Power Automate, Power Hosk :-)) it makes sense to move in that direction and swim with the tide rather than against it.
Dual-write combines with the improvements in the Common Data Service and you can see what entities are in phase 1
What should you use it?
These are the reasons Microsoft recommend Dual-write
- Data from customers, products, operations, projects, and the Internet of Things (IoT) automatically flows to Common Data Service through dual-write. This connection is very useful for businesses that are interested in Microsoft Power Platform expansions.
- The dual-write infrastructure follows the no-code/low-code principle. Minimal engineering effort is required to extend the standard table-to-table maps and to include custom maps.
- Dual-write supports both online mode and offline mode. Microsoft is the only company that offers support for online and offline modes.
If you can use it, then you should because it’s configuration, which means it’s low maintenance and will allow you to deliver an integrated solution faster. It’s worth to try it first because it will save you time on the project. I don’t think there is a cost (apart from licences for F&O and CDS/Dynamics). This could and probably will change but lets worry about that later.
These are the questions I have at the moment
- What happens to records that can’t sync? What about error handling?
The answer to this was in this blog
Alerts are especially useful in case of unplanned maintenance, when one of the apps is unavailable and based on your defined thresholds, dual-write goes into a paused state wherein all new requests are queued (but not lost). After you fix the underlying issue and both applications are running smoothly, you can resume from the paused state and the updates are read back from the queue and written to the recovered application.
It sounds like there is a queue in the background, which you would expect because you don’t want to lose any messages.
2. What capacity can Dual-write deal with?
3. What are the limitations for Dual-write?
These questions will be answered as more people use it and learn about it’s limitations and capabilities.
There are some useful Microsoft docs