Relational database have some serious advantages. They are relatively (pun intended) easy to design and understand, don’t require you to know exactly how your data will be accessed after it is designed and implemented, don’t enforce single points of entry to your data, and lend them selves well to declarative languages like SQL allowing them to be heavily optimized  without the end user caring much about the optimizations.

Unfortunately  they are not perfect. When paths of access are well known they tend to be slower than other storage methods like object oriented databases or hierarchical databases. But there biggest problem is that they can only store data. Relational database don’t store behavior with any sense of ease or finesse. I wonder of self’s idea of slots could be applied. If a column could store a value or the result of some behavior with out the end user knowing or caring it might solve some of the problems I have with relational databases. 

Leave a Reply