Re: I don't understand the motion
Even though RDBMS is what I know best and is my goto (well, that or a flat file with a script), this next bothers me on so many levels:
"If you don't understand what you need from a database, you choose relational. Period. End of discussion."
A. If you don't understand what you need from a database then you better find out before doing anything.
B. If you still don't understand what you need from a database, then NoSQL seems to me a much better choice. That way you don't spend any time up front pulling out columns you won't need. And you won't wake up one day to realize your ETL since the get-go has been throwing away that weird "dispensable" data element that just happens to hold outsized business value.
C. Strongly defaulting to RDBMS guarantees, statistically speaking, that some of the time that choice was wrong. Maybe only one percent of the time should we choose graph instead of relational. But if that one percent of the time graph gets us 2x performance, that's a huge gain. Also, one percent of the universe of databases is a really big slice of pie.
D. Strongly defaulting to RDBMS might mean we are so heavily invested in it that it will seem right even when it is wrong. This last one is why I'm most interested in the cases where relational and graph could both be valid solutions. Seeing which is "better" there is more instructive overall for the general case.
E. I like learning new things, for their own sake, even if my previous knowledge has been good enough so far.