Data Export Service


These release notes describe functionality that may not have been released yet. To see when this functionality is planned to release, please review What’s new and planned for Common Data Model and Data Integration. Delivery timelines and projected functionality may change or may not ship (see Microsoft policy).

Microsoft Dynamics 365 Data Export Service (DES) is a free add-on from Microsoft AppSource that synchronizes Microsoft Dynamics 365 (online) data to a Microsoft Azure SQL Database in a customer-owned Microsoft Azure subscription.

The supported target destinations are Microsoft Azure SQL Database and Microsoft SQL Server on Microsoft Azure virtual machines. The Data Export Service does a full write, followed by delta changes on a continuous basis, as they occur in the Microsoft Dynamics 365 (online) system. This helps enable several analytics and reporting scenarios on Dynamics 365 data.

Per feedback from our customers, we continue to improve the Data Export Service to be more reliable and performant by making the following investments for April '19.

Show count and trend of records to validate and notify on convergence status

Showing the count and trend of records from Dynamics 365 for Sales (CRM) and Azure SQL Database has been a top request from our customers who want to view the counts from both source and destination to ensure that their changes were written successfully. Additionally, this feature provides a trend of record counts by comparing the number of records by entity in both Dynamics 365 for Sales (CRM) and Azure SQL Database on an hourly basis. We are also providing a comparison of the latest version and the version of metadata of records by entity in both Dynamics 365 for Sales (CRM) and Azure SQL Database.

These investments will let our customers predict convergence (or divergence) of records and take appropriate measures, as necessary. We are also adding more alerting mechanisms to inform users when the entity records have failure notifications because the data is out of sync.

Minimize write failures by prioritizing metadata before data

One of the common failures we have seen in customers' environments is when the data shows up prior to the metadata, causing write failures. With the help of this feature, we implement a queue to prioritize the metadata messages over the data messages and pause the processing of data messages when metadata message processing fails. We also validate the "metadata version coming" part of the data message and, if it is different from the one in SQL, do not process the data messages and put them in the queue.

Show unsupported entities for change tracking

In the past, there was no easy way to identify entities that don't have change tracking enabled. These entities weren't supported. With this change, we will show all entities in the user interface and gray out the unsupported ones for change tracking. This provides a more intuitive experience.

Reduce latency and improve performance

Data Export Service maintains a single delete log per profile. This log is used to track deletes along with their timestamps. Based on discussions with customers, especially in larger profiles with many entities, a single delete log causes performance bottlenecks. With this change, we split the delete log for each entity, creating one per entity and thereby drastically reducing latency to process deletions. An additional index on the delete log table further improves performance on queries.