The truth of this Yiddish proverb has been repeatedly reveled to me in both my personal and professional lives. Professionally, I cannot begin to count the number of client’s with whom I have worked who have tried to solve a SQL Server performance issue with more hardware – the brawn. In my experience most performance issues will not be resolved with more memory, faster processors or more disk space. Yes, these approaches may return short-term performance improvements for a slow database server; though, an improperly configured, passively maintained system with data and query design problems will quickly exhaust the benefits of the new hardware. (Before you flame me…Yes, there are databases that outgrow their hardware environments; however, because of the cost of hardware considering upgrades should, in my opinion, be a last resort.)
My first recommendation to a client with instance performance issues is to get a Health Check of the system. The Health Check not only collects performance metrics for baselining the system it also validates the configuration of the system against known “best practices”. Again, in my experience the recommendations developed as part of the Health Check, more often than not, result in performance improvements, and yes, sometimes the recommendations do include hardware upgrades, but only after I’ve squeezed every last ‘bit’ of performance out of the existing hardware.