Export data to Azure Synapse Analytics (preview)
[This article is prerelease documentation and is subject to change.]
Note
Azure Active Directory is now Microsoft Entra ID. Learn more
Azure Synapse is an analytics service that accelerates time to insight across data warehouses and big data systems. You can ingest and use data from Dynamics 365 Customer Insights - Data in Azure Synapse.
Tip
Azure Synapse Link for Dataverse is a generally available service that offers seamless, continuous replication of data from Microsoft Dataverse to Azure Data Lake. We recommend that you use Azure Synapse Link for Dataverse instead of Customer Insights data-out exports for further data processing of the tables generated by Customer Insights like:
- Unified customer profiles (msdynci_customerprofile)
- Unified activities (msdynci_unifiedactivity)
- Segment membership (msdynci_segmentmembership)
- Customer attribute measures (msdynci_customermeasure)
- Enrichment data (msdynci_enrichment)
- Prediction model output (msdynci_prediction)
For more information on table schemas, see Tables in Customer Insights - Data
Prerequisites
Note
Make sure to set all role assignments as described.
- In Customer Insights - Data, your Microsoft Entra ID account must have an Administrator role.
In Azure:
An active Azure subscription.
A user with an Administrator role in Customer Insights - Data needs the User Access Administrator role in the Azure subscription to grant the service principal access to Azure resources in the Customer Insights - Data UI. Otherwise, a user in Azure who has the User Access Administrator role must set following permissions. Learn more about the User Access Administrator role and how to choose between Owner vs User Access Administrator. The Owner implicitly has the User Access Administrator role.
If using a new Azure Data Lake Storage Gen2 account, the service principal for Customer Insights - Data has Storage Blob Data Contributor permissions. The Data Lake Storage Gen2 must have hierarchical namespace enabled.
On the resource group with the Azure Synapse workspace, the service principal and the user with admin permissions in Customer Insights - Data needs at least Reader permissions.
The user with admin permissions in Customer Insights - Data has Storage Blob Data Contributor permissions on the Azure Data Lake Storage Gen2 account where the data is located and linked to the Azure Synapse workspace. Learn more about using the Azure portal to assign an Azure role for access to blob and queue data and Storage Blob Data Contributor permissions.
The Azure Synapse workspace managed identity has Storage Blob Data Contributor permissions on the Azure Data Lake Storage Gen2 account where the data is located and linked to the Azure Synapse workspace. Learn more on using the Azure portal to assign an Azure role for access to blob and queue data and Storage Blob Data Contributor permissions.
On the Azure Synapse workspace, the service principal for Customer Insights - Data has Synapse Administrator role assigned.
If your Customer Insights - Data environment stores data in your own Azure Data Lake Storage, the user who sets up the connection to Azure Synapse Analytics needs at least the built-in Reader role on the Data Lake Storage account. For more information, see Assign Azure roles using the Azure portal.
Known limitation
- Azure Synapse export doesn't support incremental refresh for data sources if an environment uses a custom Azure Data Lake for data storage.
- Power Query data sources as input tables are only supported if your environment stores data in your own Azure Data Lake Storage.
- Enabling public access to your own storage account after setting up an Azure Private Link won't work. Private Link is only supported if you disable public access to the storage account. Remove the Private Link setup to re-enable public access.
- This export works only for CSV formatted files.
Set up connection to Azure Synapse
You must be an administrator in Customer Insights - Data to add a connection.
Go to Settings > Connections.
Select Add connection and choose Azure Synapse Analytics.
Give your connection a recognizable name in the Display name field. The name and the type of the connection describes this connection. We recommend choosing a name that explains the purpose and target of the connection.
Choose who can use this connection. By default, it's only administrators. For more information, see Allow contributors to use a connection for exports.
Select or search for the subscription you want to use the Customer Insights data in. As soon as you select a subscription, you can also select Workspace, Storage account, and Container.
Optionally, if your storage account is behind a firewall, select Enable Private Link. For more information, go to Private Links.
Review the data privacy and compliance and select I agree.
Select Save to complete the connection.
Configure an export
To configure this export, you must have permission for this connection type. To configure the export with a shared connection, you need at least Contributor permissions in Customer Insights - Data.
Go to Data > Exports.
Select Add export.
In the Connection for export field, choose a connection from the Azure Synapse Analytics section. Contact an administrator if no connection is available.
Provide a recognizable Display name for your export and a Database name. The export will create a new Azure Synapse lake database in the workspace defined in the connection.
Select which tables you want to export to Azure Synapse Analytics.
Note
Data sources based on a Common Data Model folder aren't supported.
Select Save.
Saving an export doesn't run the export immediately. The export runs with every scheduled refresh. You can also export data on demand.
To query data in Synapse Analytics, you need Storage Blob Data Reader access to the destination storage on the workspace of exports.
Update an export
Go to Data > Exports.
Select Edit on the export you want to update.
Add or Remove tables from the selection. If you remove tables from the selection, they stay in the Synapse Analytics database. However, future data refreshes won't update the removed tables in that database.
Changing the Database Name creates a new Synapse Analytics database. The old database won't receive any updates in future refreshes.