Explore App Definition and Development / Database

Technology Guide

Dgraph

License: Apache-2.0

Dgraph Logo

Field Guide

Complete Guide

Dgraph is a distributed, ACID-compliant graph database written in Go. It stores data as a native graph — subject-predicate-object triples sharded by predicate — and is queryable via GraphQL and its own GraphQL-inspired language, DQL (previously GraphQL+-), which adds traversal primitives, aggregations, and recursive queries that plain GraphQL lacks.

A Dgraph cluster has two components: dgraph zero, which handles cluster membership, shard assignment, and timestamp oracle duties; and dgraph alpha, which serves the actual data. Predicates are the unit of sharding, so all triples with the same predicate land on the same group of Alpha nodes, which are replicated via Raft. Storage is backed by Badger, a fast embedded LSM-tree key-value store also written by the Dgraph team. The result is horizontal scale for large graphs with strong consistency guarantees — a rare combination in graph databases, most of which (Neo4j community, JanusGraph) trade one for the other.

Dgraph is open source but has had a turbulent commercial history: the original company (Dgraph Labs) ran into funding issues, the project spent a period under Hypermode, and Istari Digital acquired Dgraph from Hypermode in 2025. The main competitors are Neo4j, TigerGraph, JanusGraph, ArangoDB (multi-model), and Amazon Neptune. Dgraph’s pitch remains “horizontally scalable graph DB with GraphQL as a first-class query language” — useful if you’re building social graphs, knowledge graphs, or recommendation systems that don’t fit a relational model.