dgraph
by
dgraph-io

Description: high-performance graph database for real-time use cases

View dgraph-io/dgraph on GitHub ↗

Summary Information

Updated 3 hours ago
Added to GitGenius on March 25th, 2026
Created on August 25th, 2015
Open Issues/Pull Requests: 53 (+0)
Number of forks: 1,589
Total Stargazers: 21,648 (+0)
Total Subscribers: 358 (+0)

Detailed Description

Dgraph is a high-performance, horizontally scalable, and distributed graph database designed for real-time use cases. Its primary purpose is to provide a robust and efficient solution for managing and querying complex, interconnected data, aiming for Google-level scale and throughput with low latency for real-time user queries. The project is open-source, licensed under Apache 2.0, and is currently at version v25, indicating its production-readiness and maturity.

At its core, Dgraph is a native GraphQL database, meaning it leverages the GraphQL query language for data interaction. This allows developers to define and query data in a flexible and intuitive manner. It supports both JSON and Protocol Buffers for data exchange over GRPC and HTTP, providing versatility in how data is accessed and utilized. Built with the Go programming language, Dgraph is optimized for performance and efficiency. It tightly controls how data is arranged on disk to minimize disk seeks and network calls, crucial for achieving high throughput in a distributed environment.

The key features of Dgraph include its distributed architecture, which enables horizontal scalability, allowing it to handle massive datasets and high query loads. It offers ACID transactions, ensuring data consistency and reliability, along with consistent replication and linearizable reads. Dgraph provides native support for GraphQL queries, full-text search, regular expressions, and geo-search, making it a versatile solution for various application requirements. The database is designed to handle complex relationships and traversals efficiently, making it well-suited for applications with intricate data structures.

Dgraph's architecture is sharded and distributed, with consistent replication, and automatic data movement for shard rebalancing. It supports GraphQL-inspired query language and uses Grpc/HTTP protocols with JSON/RDF formats. It offers distributed ACID transactions, native support for full-text search, regular expressions, and geo-search. This contrasts with other graph databases like Neo4j, which has a single-server architecture in the community edition, and JanusGraph, which relies on underlying distributed databases.

The repository provides comprehensive documentation, including installation guides, quick-start tutorials, and example deployments using Docker. Installation from source is also supported, requiring Go 1.24+ and specific dependencies. The documentation emphasizes the recommended use of Docker for testing and deployment. The repository also includes links to official and unofficial client libraries, facilitating integration with various programming languages.

Dgraph is particularly well-suited for applications with more than 10 SQL tables connected via foreign keys, sparse data that doesn't fit neatly into SQL tables, and a need for a simple and flexible schema. It excels in scenarios where speed and performance at scale are critical. The project actively encourages community contributions and provides resources for developers, including guidelines for contributing and links to discussions and issue trackers. The project also provides a comparison table with other graph databases, highlighting its strengths in terms of architecture, replication, transaction support, and query language.

dgraph
by
dgraph-iodgraph-io/dgraph

Repository Details

Fetching additional details & charts...