We have upgraded our SQL Server instance with buckets of RAM, so it can now much more effectively cache . The issue is that it takes time (days) to populate the cache. As far as I understand this is something internally managed by the engine, based on user queries. Is there value in pre-empting this process by running a series of select * statements on big / frequently used tables to cache all this data on service start up? Any particularly clever way to do it?


There isn't normally any added value in doing this: you may cache data that isn't needed that requires eviction when your real load occurs.

How much time do you think this will save too? Have you done some measurements to see if running a SELECT * on some table improves response after server start up?

  • Yeah - the possibility of the cached date requiring eviction makes sense. To answer your question, no - we haven't done any measurements yet. – Matthew Evans May 9 '12 at 7:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.