Video: Microsoft is building a 'world graph' for geographic data
Airbnb[1], Coursera[2], Docker[3], GitHub[4], Twitter[5], Uber[6], and, of course, Facebook[7], where it was invented. These are some of the organizations where people use GraphQL solutions, as presented in last week's GraphQL Europe[8], and if you're one to be impressed by name-dropping, this should get your attention.
Read also: From graph to the world: pioneering a database virtual machine[9]
GraphQL[10] seems to be spreading like wildfire, and there's a reason for that. As REST APIs are proliferating, the promise of accessing them all through a single query language and hub, which is what GraphQL and GraphQL server implementations bring, is alluring.
REST APIs expose application functionality, and all applications use some database in the back end. So, a big part of those APIs is wrapping database CRUD (Create, Read, Update and Delete) operations.
Furthermore, databases may also expose APIs of their own for those CRUD operations. So the idea of using GraphQL for database CRUD operations comes as a natural next step, and there are a few initiatives working on that.
GraphQL for databases
PostGraphile[11], Prisma[12], and HyperGraphQL[13] are different approaches at implementing a GraphQL abstraction layer for databases. Let's see what they are out to achieve, and how each of those tackles the issue. All these GraphQL database access layers are open source, but have different philosophies and ambitions.
GraphQL has benefits, and a new breed of approaches for using it as an access layer for databases is emerging. (Image: Nordic APIs[14])Benjie Gillam,