Dynamics 365 for Finance and Operations (D365FO) is an ERP software targeting for large enterprises. The product offers both cloud and on-premises options. Such a complex system serves a huge number of users with hundreds to thousands of actions each day. Without proper monitoring and tuning of the system, organizations might face slowness and performance issues.
The needs for performance testing and boosting of each company is different depending on their own business and as a result, their areas of large work volume. In this article, we would like to share some common tips which are all out of the box features of D365FO to boost the performance.
Batch jobs to boost SQL performance:
In D365FO, SQL performance can impact performance in various scenarios. The system provides two notable system batch jobs that help to compress database and rebuild fragmented indexes.
First, with a large enterprise, database volume can grow very quickly, which leads to the needs of data volume management. Database compression offers some key benefits of storage requirement reduction, query performance and faster time to recover if needed. The feature is now introduced in the application that you can configure and run from the client.
Second, index fragmentation is another issue that grows over time and decreases performance. You can check your environment index fragmentation from LCS portal by navigating to Environment Details page > Environment monitoring > SQL Insights > Queries > Get fragmentation details > Execute.
The system batch job for SQL defragmentation is introduced from Platform Update 22 so you can configure a regular job to rebuild indexes at your preferred time.
Overall, the two system batch jobs are available automatically for the whole system, not specific to a legal entity. Our recommendation is to keep it as default and not tempted to change other parameters like company, created by and run by except for the recurrence of the job. Microsoft recommendation from the official document is to run the job at least once a week.
Some other parameters that can be configured are how long the job will run, how many the indexes are rebuilt and DTU threshold. The threshold ensures the job is not run when the system is too busy. For example, with the parameters in the below screenshot, the rebuild index batch job will only run for 120 minutes and target 500 indexes, however, if the DTU level is higher than 50% at the scheduled time, the job will quit early without running to avoid hogging the resources.
You can refer to this official document for more details of this batch job.
Utilizing clean up jobs:
The amount of data can grow quickly over time, and some of these data might no longer be needed. Some intermediate data are used during business transactions, for example, sales or purchases orders. Once the transactions are posted, and the update history might not be needed and ready to be cleared. Each module in D365FO usually has the cleanup jobs that can be run manually or via batch to clear redundant data to free database size.
However, the cleanup actions of business modules affect the business data directly so your team should analyze carefully to decide what data is truly not needed before running the jobs. Usually, the jobs lie in each module Periodic/ Periodic tasks tab. A quick search of “clean up/ cleanup” keywords can show you a few examples.
Apart from the business modules cleanup jobs, one super frequent action is running batch jobs. Thus, the batch job history can pill up greatly and affect the future performance of batch jobs. It is recommended to run the batch job history cleanup regularly during off-business hours. You can check out this official document about setting up this cleanup job.
Tuning for Data Import Export jobs:
Data management tasks are common for all business. Usually, businesses have frequent imports and exports jobs. As a result, these jobs might lead to a huge amount of staging data. You should keep that in mind and regularly delete these staging data to reduce database storages as well as enhance DIXF performance. You should find the Staging cleanup feature in Data management workspace.
In conclusion, I hope to deliver to a few features of D365FO power that you can utilize to boost your environment’s performance. These points are a general approach to keep your overall system health under control. Depending on your business demands, you might face different scenarios, for example, some specific integration requirements, which as a result, calls for more detailed plannings and approaches of performance testing and tuning.