We could reduce the operational cost for our customers drastically if we had the possibility to disable certain indexes that come with standard F&O that are not used in the context of a customer.
In AX 2012, it was possible to achieve this by setting a SysDeletedObjects config key that was disabled through overlayering. Unfortunately this is no longer possible in D365FO. I believe it should be possible to safely use the same strategy through table extensions, at least for nonclustered and non-PK indexes.
Bonus point if we also get insights in the index usage of the production environment through the SQL DMV dm_db_index_usage_stats to perform this exercise properly.
Comments
PS Bjorn also notice my 'Idea' from 2020:https://experience.dynamics.com/ideas/idea/?ideaid=6e6a3493-1557-ea11-b698-0003ff68be06
Category: General
I do fully agree to this one.Alternatively what could also be done in AX2012 is set the 'Enabled' property on the index to 'No'. Then Data dictionary synchronization will drop the index on SQL.I did already try several times if we could still 'Disable' an index in Visual Studio. But that property is greyed-out and not possible to change.Not only could it reduce storage costs, but also improve performance of the database. As the indexes which are not used by our environment still need to be maintained all the time while doing updates/inserts/deletes.I have an On-Premise customer, for which I do still have the "luxury" to run DynamicsPerf. But indeed having an insight in Cloud environments would be very helpful as well when doing this exercise.
Category: General