This article is more than 1 year old
The nodes have it in the Great DB debate: Reg readers pick graph
Industry upstart preferred... for now
Register Debate This week, Register readers debated the motion Graph databases do not provide a significant advantage over well-architected relational databases for most of the same use cases.
It was lively discussion between two experts, who were evidently not satisfied by the prospect of merely winning or losing a debate and added public wagers involving T-shirts and mild humiliation to the mix.
So what did readers think?
As you can see, the result was (sorry relational DB fans) in favor of AGAINST, although it was a close-run race, and RDBMS was well ahead at several points during the week before a late surge for graph DBs yesterday. Over 2,000 readers voted.
Our first contributor, arguing FOR the motion, was Andy Pavlo, associate professor of databaseology at Carnegie Mellon University. Pavlo's starting point on Monday was that graph DBMSs are "fundamentally flawed and, for most applications, inferior to relational DBMSs."
Readers were broadly supportive, with commenter Steve Channell noting:
The great thing about a graph model {Node, Edge, Property} is that they can present all information as a common model that aggregates "Fred buys Car from Jane" as edges between {Fred, Car, Jane} without the complexity of pretending that a Person and a Product are somehow the same (both being nodes) or complex rules to prevent purchase of people.
Regardless of {Graph, Relational, Object, Network, Key/Value, etc} storage, data is manipulated in memory as graphs (e.g. Bill-of-Parts) – as computer memory get bigger, storage organisation becomes less important.
Then came the kicker: "The best use-case for graph databases is scenarios where you don't understand the data – it might be old-fashioned, but understanding is still important."
Jim Webber, Neo4j's chief scientist and a professor of computer science at Newcastle University, arguing AGAINST, said in his rebuttal that he could not back the idea that "relational can do anything" and rejected the assertion that graph databases cannot properly support views and migrations.
Commenters chimed in, with Groo the Wanderer taking a balanced position: "The problem I've found in the industry over the years is companies with a 'standard database' policy, or lead designers who have a 'preferred' database that they always use.
"It is best to keep an open mind with databases, and use the provider that is best suited to the task at hand. There is no one database model that 'does it all' easily for all use cases; each of the main architectures (relational, graph, object store, and document) has advantages for certain types of data access. Trying to shoehorn out-of-band data into the wrong database engine is not only painful and inefficient, it is prone to bugs and breakage." They added: "I'd rather go to the hassle of setting up two phased commits so I could use the right database for each type of data to be managed than try to stuff it all in one general purpose engine."
Commenter The Velveteen Hangnail asserted: "If you don't understand what you need from a database, you choose relational. Period. End of discussion," prompting yetanotheraoc to respond: "Even though RDBMS is what I know best and is my goto (well, that or a flat file with a script), this ... bothers me on so many levels," adding: "Strongly defaulting to RDBMS guarantees, statistically speaking, that some of the time that choice was wrong. Maybe only 1 percent of the time should we choose graph instead of relational. But if that 1 percent of the time graph gets us 2x performance, that's a huge gain."
- MotherDuck scores $47.5m to prove scale-up databases are not quackers
- DuckDB, database wrangler used by Google, Facebook, and Airbnb, hits 0.5.0
- Rows, columns, and the search for a database that can do everything
- New graph database features eschew need for DBAs
Then, on Wednesday, Pavlo threw down the gauntlet, stating that abandoning the relational database model would be akin to "reinventing the wheel." He also doubled down on a public wager he'd previously made that graph databases won't overtake relational databases in 2030 by marketshare. He has promised that if he loses, Pavlo will replace his official CMU photo with one of him wearing a shirt that says "Graph Databases Are #1."
Webber then countered this in his Thursday argument, noting that the pending standard for graphs, GQL, is overseen by the same ISO committee that delivered SQL. If SQL extensions were enough to solve the graph problem, the committee wouldn't have bothered itself, he seemed to be saying. Instead, it decided graphs were different enough to warrant a full query language. He also mentioned he'd won a previous wager about database pros' interest in the technology category.
All in all it has been a fascinating look into the various use cases, and thanks to everyone who voted and weighed in with their comment. It was also the first time, though hopefully not the last, that The Register has hosted, as one of the debaters described it, "the database equivalent of a rap battle." ®