Thought Forge
  • Home
  • Projects
  • The Team

Martin Fowler and No DBA

Mar 04, 2013 ~ Leave a Comment ~ Written by John Turner

Last week, Martin Fowler published an interesting post that discussed the role of a DBA in the context of NoSQL databases.  Interestingly he titled this post No DBA.

Martin’s post couples the role of the DBA to that of Integration Databases.  Today’s wisdom  would suggest that integration databases are almost always a bad choice for enterprise application integration because database changes have to be negotiated by a number of groups (application teams and the DBA) and evolution of relational schema is very difficult to achieve effectively.

Application teams circumvent this ceremony by using schema-less NoSQL databases and message based application integration.

So does this suggest that the DBA is almost always a bad choice?  I don’t think that this is what Martin is suggesting but one phrase he used struck me.  He stated that “I often hear complaints about change orders that take weeks to add a column to a database. For modern application developers, used to short-cycle evolutionary design, such ceremony is too slow, not to mention too annoying.“.  I think this ceremony is indicative of the culture that all to often exists within DBA groups.  This culture can also exist in architecture, testing and yes, even development groups.

While this is probably over simplistic, this culture and ceremony often has sound reasoning for why it was in place at some point in time.  However, all too often these groups have been incentivised in a way that causes friction between them i.e. they have not been incentivised to achieve the same end.

We have seen solutions to this before where testers come together to work within a team to improve quality. Over time this removes the ‘quality police’ mentality and testers are incentivised to work with the team to improve quality.  Emergent design has had a similar impact in forcing architects and development teams to work together.  So, if we are not saying that DBA’s are just a bad idea perhaps the answer is to embed them in development teams and incentivise them to the same end.

One thing that this all ignores is the need for the DBA community to get on board with the process and technology shift that has happened over the past 10 years. Not an easy nut to crack given that the adoption of Agile requires the circumvention of the ceremony held sacred by the DBA.

Here are a couple of other interesting references:

Why NoSQL Does Not Mean NoDBA

NoSQL != NoDBA

Posted in Agile, Ramblings
←
→
Logging In...
Cancel Reply

Tag Cloud

Agile Banking Book Review Cloud Computing Continuous Integration Enterprise Integration Groovy & Grails Hibernate JavaServer Faces NoSQL Object Relational Mapping Ramblings Representational State Transfer Rich Faces Software Design & Architecture Spring Framework Spring Integration Spring Security Spring Web Flow Training & Certification

Recent Posts

  • Continuous Delivery: A Maturity Assessment Model
  • Martin Fowler and No DBA
  • Marissa Mayer ends Work From Home
  • Lies, Damned Lies, and Statistics
  • 8th Light – The Principles of Craftsmanship

Top Posts & Pages

  • Feature Toggle and Branch by Abstraction
  • Starting out with Spring and Hibernate JPA
  • Marshalling XML with Spring WS and JAXB
  • Projects
  • Continuous Delivery: A Maturity Assessment Model

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 14 other subscribers

  1. I welcome any feedback, questions or comments

Blogroll

  • Harvard Business Review
  • High Scalability
  • Mountain Goat Software

Pure Line theme by Theme4Press  •  Powered by WordPress Thought Forge