The Future of Relational Databases
Tony Bain on Read Write Web, poses the question “Is the Relational Database Dead?” His answer is no, that they are destined to be around for a long time but in getting to that answer he brings up some interesting points that are worth thinking about.
In the article, Tony points out that he believes the biggest issue with relational databases is they don’t scale. Tony states “…as web services, their scalability requirements can, first of all, change very quickly and, secondly, grow very large.” He goes on to explain that relational databases scale well only on a single server. We disagree with this point and believe that relational databases do scale and do so best in fact when not on a single server. This is the principle behind all three axes of the AKF Scale Cube.
We obviously don’t believe in the imminent demise of the relational database either but we do expect more applications and services not to use a relational database in the actual service but rather just as a persistent data store. What we have seen and expect to see more of is the use of key/value stores such as memcached and redis as a shared memory object cache that is the primary data source for the service or application. Writes work their way back to the relational database asynchronously and reads into the object cache work their way forward either scheduled or on demand.
This trend is possible obviously because of the software being developed to allow this but also the cheaper hardware including virtualization in clouds. As services become more specialized and service level agreements demand faster response times, in memory data stores are very likely to be involved in more architectures as a layer between the application servers and the relational databases.