• From a developer perspective the NOSQL databases do cool stuff and make the developers task of interacting with data much simpler.

    The boring stuff that makes it all work is the really hard stuff. Distributed computing is hard. There is no getting away from it, there is no magic wand. The NOSQL databases allow you to make an informed choice. I will buy this way of doing stuff because I can bear the cost of doing it that way.

    The problem is that the choice isn't always that well informed or even informed.

    One of the selling points of a distributed system is that fault tolerance is built in by holding multiple copies of everything. Because of this extra level of redundancy, the argument goes, you can run this little lot on commodity kit.

    Commodity kit is much more reliable than it was but using commodity kit should be done with the expectation of hardware failure. What we really need to do is rehearse disaster recovery scenarios, learn from the mistakes and share the knowledge just as we used to do back in the early days of SQL Server/ORACLE/DB2/Sybase etc.