Ask HN: Why are relational DBs are the standard instead of graph-based DBs?
This exact debate took place in the early 70s. There were three major database models: relational, network, and hierarchical. Network and hierarchical had quite a bit of success, technically and as businesses. IMS was (is?) an IBM product based on the hierarchical model.<p>Network databases, which seem quite similar to graph databases, were standardized (<a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;CODASYL" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;CODASYL</a>).<p>Both the hierarchical and network models had low-level query languages, in which you were navigating through the hierarchical or network structures.<p>Then the relational model was proposed in 1970, in Codd&#x27;s famous paper. The genius of it was in proposing a mathematical model that was conceptually simple, conceivably practical, and it supported a high-level querying approach. (Actually two of them, relational algebra and relational calculus.) He left the little matter of implementation as an exercise to the reader, and so began many years of research into data structures and algorithms, query processing, query optimization, and transaction processing, to make the whole thing practical. And when these systems started showing practical promise (early 80s?), the network model withered away quickly.<p>Ignoring the fact that relational databases and SQL are permanently entrenched, an alternative database technology cannot succeed unless it also supports a high-level query language. The advantages of such a language are just overwhelming.<p>But another factor is that all of the hard database research and implementation problems have been solved in the context of relational database systems. You want to spring your new database technology on the world, because of its unique secret sauce? It isn&#x27;t going anywhere until it has a high-level query language (including SQL support), query optimization, internationalization, ACID transactions, blob types, backup and recovery, replication, integration with all the major programming languages, scales with memory and CPUs, ...<p>(Source: cofounder of two startups creating databases with secret sauces.)