Sergey Nivens - Fotolia
Users of Dgraph Labs' graph database technology as varied as a nonprofit Christian missionary platform and a financial data services firm are employing graph systems in a variety of applications they say are not achievable with traditional databases.
The Dgraph graph database has its base in an open source project. The vendor, based in Palo Alto, Calif., also provides the Dgraph Cloud service, a managed database as a service (DBaaS).
Dgraph notably also provides integrated support for the GraphQL query language, an API-based approach to query data. Graph databases and GraphQL are separate technologies and aren't always directly integrated with each other.
How MissionBase is achieving its mission with GraphQL
Among the users detailing their applications at the Dgraph Day virtual conference on April 16 was startup MissionBase, founded by software developer Anthony Master.
During a user session, Master explained that MissionBase supports religious missionaries serving in different countries with information and resources.
MissionBase was formerly known as Independent Fundamental Baptist Missionary Trails (IFBMT) and is currently in the process of rebranding. The IFBMT web site is still up while MissionBase develops a beta platform.
The first iteration of MIssionBase was built with the MySQL relational database. Master explained that MissionBase's application created a namespace for each user, which essentially meant that each user got their own database.
Anthony MasterFounder, MissionBase
As more people started to use the program, it became unwieldy to manage and Master decided to try enabling a GraphQL API to make it easier to query and manage data. Initially, Master wrote his own GraphQL coding to create the functionality he wanted for MissionBase, but realized after months of effort that GraphQL was too complex for his needs.
"After six months, we were 50,000 lines of custom code into our GraphQL implementation, with no end in sight," Master said. "We were trying to implement a GraphQL layer on top of a relational database, but what looked easy was actually very hard."
Master decided instead to find a graph database that would make it easier to implement a GraphQL API on top. He said he evaluated a number of options including Amazon Neptune and Neo4j and ended up choosing Dgraph. He said cost and support were key reasons he chose Dgraph.
Just the GraphQL facts at FactSet
Meanwhile, another Dgraph customer, financial data services vendor FactSet, has integrated the graph database as a component of its platform that has 160 million nodes and more than 126,000 users around the world.
In another user session, Mark Boxall, principal software engineer at FactSet, noted that among the reasons the vendor chose Dgraph was the graph database's facets feature, which provides attributes that can be associated with an edge in the Dgraph database.
"For every edge of the database we associated a start time and end time facet, which defined the interval over which the edge existed," Boxall said. "Then at query time, we can filter on those facets so that we can look at the graph exactly as it was at a particular point in time, today or anytime in the past."
Dgraph 21.03 and the march to the Cloud
In a keynote session, Dgraph founder Manish Jain detailed the evolution of the vendor's graph database and GraphQL efforts.
Jain said that as of April 16, the Dgraph Cloud expanded to be available in a total of 20 different AWS cloud regions.
Dgraph launched the managed DBaaS in 2020 initially with five regions. Looking forward, Jain said he is hopeful that Dgraph Cloud will also become available on Microsoft Azure and the Google Cloud Platform.
Jain also used his keynote as an opportunity to go through new features in the Dgraph 21.03 open source release that became generally available on April 7. Among the new capabilities is change data capture.
"A database is never running in isolation," Jain said. "Typically the updates from the database are being sent over to other systems for various kinds of processing and capturing the data updates, [which] has been a much-asked-for feature by our community."