SQL Clone
SQLServerCentral is supported by Redgate
Log in  ::  Register  ::  Not logged in

Find Efficiencies or Add Horsepower?

In our world sometimes it’s worth the time and effort for in depth tuning to get the machine to run at something closer to max efficiency, in other cases it’s just not worth the time or effort or cost, easier to just buy a new or additional server. It’s not easy to know which one to do, and consistently doing one or the other by rote isn’t a great idea. I see a lot of people biased one way or another, including me.

For example, for a SQL server with only a couple drives, I’m reluctant to invest much time tuning to fix what is almost always really an IO problem. Equally, with an overloaded web server I’ll order one without much thought – cheap, adds redundancy, and trying to tune for more concurrent sessions isn’t easy, or often worth doing at all. As I said, my biases!

So let me change focus a bit, and say that businesses go through this same exercise when it comes to staffing. If you see your overtime hours (or at least hours worked) going up to the point of pain, do you hire another person or find ways to reduce or streamline their workload?

It’s amazing how often you can find the equivalent of a really bad query when you start looking at how people do things at work. Sometimes that’s because they don’t have the vision to see there is a better way, sometimes they don’t want to find a better way because having ‘free time’ might make them expendable, and sometimes they are doing work that they think matters – but would make you cry if you knew what they were doing.

Fixing this is hard, and harder to do without making it feel like you’re in a remake of Office Space. A detailed time study is a good start, having them log their time in detail for a week or two, and then supplement that with some notes from each employee on any tasks that they feel are tedious, time consuming, redundant, or just not really useful. To figure it out, you have to get down in the details – should it really take a DBA x hours to refresh the dev server each week? (Note: I mean really go through each process, not just say ‘it shouldn’t take that long’)

You have to remember that unless you have an extraordinary culture most employees are threatened by this type of tuning, as are most managers, where it can be seen as lose-lose; potentially they lose employees (which equates to power and being needed), and potentially they can be seen as incompetent for not identifying the inefficiencies on their own. Because it deals with people and because trolling through the tasks at that level of detail just sucks, the typical move is to hire someone rather than endure the pain. Sometimes that’s the right thing to do, sometimes not.

I periodically assess my own effectiveness because if I waste time on things that don’t matter, it just means I work longer for the same money. Every time I do it I find places where I’m falling off track. Sometimes that is from not taking time to save time, sometimes just not seeing the forest for the trees. I bet if I had someone external evaluate my time use I still wouldn’t score well. Why? It’s not for lack of trying, but it’s just hard – hard to see past my mistakes, my pride, my biases, and hard to see the bigger picture.

That doesn’t mean it isn’t worth doing. If you’re working too many hours, take a hard look at where the hours go. Anything you can do to get your hours back down to 40 is worth doing, and if you see ways to go below that, try selling it to your manager. There will be work to replace it, but hopefully it’s work that will mean more to the company and leverage your skills better.


I'm Andy Warren, currently a SQL Server trainer with End to End Training. Over the past few years I've been a developer, DBA, and IT Director. I was one of the original founders of SQLServerCentral.com and helped grow that community from zero to about 300k members before deciding to move on to other ventures.


Posted by Steve Jones on 2 February 2010

It's a good point that you want to try and keep your hours reasonable, and be more efficient. At the same time, those inefficiencies sometimes help you balance the load. Is it better to keep a coffeepot at your desk or take 15 minutes to walk next door to the coffee shop?

The former is more efficient, but sometimes having a routine for the latter is more of a balance for you. I know I tend to run before lunch, which isn't often the best time, but it makes me feel better.

Posted by SQL Noob on 10 February 2010


a bare server is cheap, what's expensive is the storage. $300 - $1000 for a hard drive from HP and it really adds up when you account for RAID or having multiple RAID1 volumes for maximum speed. EMC will literally charge you your first born for storage.

Posted by Dennis Wagner on 10 February 2010

Interesting segue from hardware/coding into business.

I remember in Engineering School back in the early 80s (when no one could conceive a 1 Farad capacitor), we used to spend a lot of time reducing the number of IC chips when designing a circuit to save costs.  As chips became cheaper (before VLSI), it became more expensive to spend the time reducing the chips vs. just pushing out a product.

Leave a Comment

Please register or log in to leave a comment.