Welcome! I’m Thomas…

Less Is More, Even With Databases

Less Is More, Even With Databases

Likely working on a database design, I'm certain.I’ve been writing (and blogging) for about ten years now. I’ve written lots of things over the years and I have learned how much better my writing becomes when I remove words upon editing. So much improvement can be found that I often feel it might have been best to have not written anything at all in the first place.

Over the weekend I came across a quote that gave me pause. It is attributed to Antoine de Saint-Exupéry, and has to do with writing as well:

Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.”

After reading that quote I started to think about data. I often see people trying to cram more data “just in case” in might be needed later. I will also find databases that are so badly abused that entire teams of people agree that “a re-write is needed”. They will discuss at great length what to do about sunsetting one system as they build another system with EVEN MORE crap than what the first one had. It can be surreal to experience, too. Some people are so attached to the old system you would think it was a family member or pet. They fight to keep someone from pulling the plug while others talk about what snacks they need to order for the wake.

Before you go about trying to shove more things into a perfectly good database do yourself a favor: stop and think. Are you shoving those extra columns onto that table so you can run a new report? Consider the benefits if you have your own reporting database, maybe even your own cube, before you consider just blindly shoving more and more stuff into the current system. Many times I see this as a result of “scope creep”, which is like the herpes of any good database design project…you know it’s there, you put some ointment on it, and the blemish goes away for a while but it never really goes away, the bad stuff is still with you, just lurking under the surface.

Think more about what you can take away from your current systems.

Think how much better things would be if you could separate out the transaction parts of your system from the reporting components.

Think about how much better things might be with less, and not with more.

Il semble que la perfection soit atteinte non quand il n’y a plus rien à ajouter, mais quand il n’y a plus rien à retrancher.”


One Pingback/Trackback

  • katzforums

    Thank you for your valuable information. 

  • Nice – I’m grabbing that quote and throwing it on my office wall right now. We just went through a major remodeling of our OLTP DB and took a lot of excess data captured in the model following ‘Justin Case’ ‘s design methodologies. For now I’m letting them fill the data mart with the fluff and keeping the OLTP system as clean as possible. Data Mart will be next though, hopefully later this week.

    • ThomasLaRock


      I actually thought of you when writing this post, as I recalled some of our conversation while at SQL Connections this year. Thanks!

  • Pingback: Something for the Weekend – SQL Server Links 27/04/12 - John Sansom SQL Server DBA()