Best practices for Dynamics 365 storage management
Capacity monitoring
To check your capacity, you can view it in the Microsoft Power Platform Admin Centre. This portal provides a detailed breakdown of your storage consumption, helping you identify which areas require attention.
You can look at graphs and drill down into your data to see the exact tables that are occupying your storage. One of the most common is ‘Activities’, specifically the activity pointer base, which is a pointer to all the different activity type such as ‘emails’, ‘tasks’, ‘appointments’, ‘closes of opportunities’, ‘closes of cases’ etc.
There are a lot of things created in the background that people just don’t realise. For example, every time you close an opportunity, or reopen that opportunity and close it again, it creates an activity each time. This has little value on a day-to-day basis, so it’s important to look at where the data is being consumed.
Once you’ve identified where the data is being consumed, you need to be able to analyse it before you can act. If there’s a particularly large table, e.g. activity pointer base, you need to understand why it’s so big. You might need to use Microsoft Power BI for in-depth analysis and advanced find for smaller queries.
Implementing Retention Policies
Setting up retention policies for your data and logs can significantly reduce storage consumption. For instance, audit logs do not need to be stored indefinitely. A well-defined retention policy ensures that logs are not kept longer than necessary.
Using the Bulk Deletion Service
Microsoft Dynamics 365 offers a bulk deletion service that allows you to run filters on a periodic basis to delete unnecessary data. Setting up weekly or monthly deletion filters can help maintain optimal data levels. However, we always recommend working with a Dynamics 365 partner to ensure you don’t accidentally delete important data that is serving a purpose elsewhere in the system.
Using Long-term Retention
Microsoft offers a long-term retention solution for data that needs to be kept, but won’t be frequently accessed. This feature uses filters to retain data instead of deleting it. Long-term retention compresses data to save storage space, but makes it less accessible, as it isn’t searchable in the Microsoft Dataverse.
Leveraging Virtual Entities
It’s very easy to put data into the Microsoft Dataverse, but that can lead some organisations to use it incorrectly as a data warehouse. Given that the Dataverse is quite an expensive place to store your data, surfacing data from other systems within Dynamics 365 is often a better approach to consider, without the data needing to physically be in the Dataverse. Rather than moving data around with integrations, surfacing data can reduce complexity, reduce the burden of maintaining integrations in future and reduce storage costs.
Microsoft make surfacing data possible in several ways, including virtual entities which allow you to point to external data sources like SQL databases to surface data in your Dynamics 365 system, without storing the data in Dynamics 365. This approach reduces storage costs and complexity while still providing a comprehensive view of your data. This is especially useful for data that is transactional or referential that empowers system users but may not need to be physically in the system. For example, if it’s not triggering workflows etc., you might find you can just keep that data in a SQL database and surface it to your users.
Microsoft Fabric can also provide a SQL endpoint, allowing virtual tables in Dynamics 365 to point to Fabric tables.