We recently migrated one of our databases from a physical 2008 R2 instance to a clustered VM 2016 instance. The db is in 2016 compat mode. We have auto update stats enabled and run reindexing on a weekly basis (same as we did on 2008 ) but the queries are not performing ( 0 secs on 2008r2, 33 sec on 2016 in one example ). We have seen instances where non-clustered indexes have been completely ignored. It makes me think statistics and the query optimizer. Am I missing a trace flag or a setting somewhere?
I know we are not looking at apples to apples with the different versions and phys to vm, but I was not expecting this disparity in perf. Things like integrity checks and reindexing are far better on the new server
UPDATE:it now looks to be a drop off in query performance during peak usage.It may sound obvious but this is a decently sized server that should more than cope with our peak. 256GB RAM, 24 cores, 198GB buffer cache