Databases, graphs, and GraphQL: The past, present, and future
GraphQL was never conceived as a query language for databases. Yet, it’s increasingly being used for this purpose. Here’s why, and how.
Manish Jain and Josh McKenzie are both engineer rock stars who wear many hats. They also have something else in common: they are both avid GraphQL users and builders, despite getting there from different start points. GraphQL is an API query language that has taken the software development world by storm, and Jain and McKenzie exemplify this.
Jain, founder and CTO of Dgraph, was among the first to take note of GraphQL in 2015. He liked it so much that he built Dgraph around it. McKenzie got exposed to GraphQL in 2020, while building Stargate during his stint at DataStax. He liked it so much that he is now VP of Software Engineering at Apollo, a vendor built around GraphQL.
We were not as early as Jain, but in 2018 we noted that GraphQL may make sense as a layer for universal database access. Today we revisit the use of GraphQL to access databases, with insights from Jain and McKenzie on the technical, business, and social implications.
When discussing GraphQL, even in 2021, starting with a disclaimer may be necessary: GraphQL is NOT a graph query language. It’s a misnomer, and as Jain pointed out, “GraphQL is as much a graph query language, as relational databases are about relationships.” In other words, not very much, and this is by design.