In the past few years there has been a great deal of discussion on alternatives to relational database systems. Data systems and information architecture have been a strong interest of mine for quite some time. Like many budding computer scientists, I was taught the fundamentals of relational database design during my undergraduate studies, but there was little discussion of alternative systems. Towards the end of my graduate studies, I decided to take the time to do a deep dive on alternatives to traditional relational database systems; mainly column-oriented datastores such as Google’s BigTable, Amazon’s Dynamo, and Facebook/Apache’s Cassandra. I focused on these three, instead of systems such as MongoDB or Riak, primarily because of the wealth of scholarly information about arguably the three largest deployments of alternative datastores.
Rather than keeping 4 months of research to myself, I thought I’d share with the community. I have included my research paper and a presentation I gave at the end of the semester to summarize my research.