# dgraph-io/dgraph

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/dgraph-io-dgraph).**

21,700 stars · 1,592 forks · Go · Apache-2.0

## Links

- GitHub: https://github.com/dgraph-io/dgraph
- Homepage: https://dgraph.io
- awesome-repositories: https://awesome-repositories.com/repository/dgraph-io-dgraph.md

## Topics

`database` `distributed` `go` `knowledge-graph`

## Description

Dgraph is a distributed graph database designed to store and query highly connected data. It organizes information as nodes and edges to represent complex relationships between entities, providing a platform for managing and analyzing deeply linked datasets.

The system functions as a horizontally scalable cluster that partitions data across multiple nodes to maintain performance and availability as information volume increases. It utilizes a specialized query language built for low-latency navigation of interconnected data points, allowing for the execution of complex queries across large-scale information networks.

The platform incorporates a graph-oriented storage engine and in-memory indexing to facilitate efficient traversal of relationships. It manages state changes and data consistency through a distributed consensus algorithm and predicate-based sharding, which enables the system to decompose and execute queries in parallel across the cluster.

## Tags

### Data & Databases

- [Graph Databases](https://awesome-repositories.com/f/data-databases/graph-databases.md) — Functions as a horizontally scalable distributed graph database for storing and querying complex relationships.
- [Distributed Databases](https://awesome-repositories.com/f/data-databases/distributed-databases.md) — Distributes data across a cluster to maintain performance and availability as information volume and query load grow. ([source](https://dgraph.io/learn/))
- [Distributed Databases](https://awesome-repositories.com/f/data-databases/database-management-systems/database-engines/distributed-databases.md) — Scales horizontally by distributing large datasets across multiple server nodes to maintain high performance.
- [Graph Querying](https://awesome-repositories.com/f/data-databases/graph-querying.md) — Executes complex queries across interconnected datasets using a specialized language for low-latency navigation. ([source](https://dgraph.io/learn/))
- [Schemaless Data Stores](https://awesome-repositories.com/f/data-databases/schemaless-data-stores.md) — Organizes information as nodes and edges to represent and store complex, deeply linked relationships. ([source](https://dgraph.io/learn/))
- [Network Analysis](https://awesome-repositories.com/f/data-databases/data-analysis-visualization/network-analysis.md) — Enables the discovery of hidden patterns and connections within large-scale information networks through graph traversal.
- [Distributed Query Processing](https://awesome-repositories.com/f/data-databases/distributed-query-processing.md) — Decomposes complex queries into parallel sub-tasks executed across multiple nodes for efficient processing.
- [Distributed Transaction Processing](https://awesome-repositories.com/f/data-databases/distributed-transaction-processing.md) — Coordinates state changes across distributed nodes using a multi-stage commit protocol to ensure data integrity.
- [Specialized Storage Engines](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/specialized-storage-engines.md) — Utilizes a specialized storage engine that maps graph nodes and edges to persistent key-value pairs.
- [Data Sharding](https://awesome-repositories.com/f/data-databases/data-sharding.md) — Partitions graph data across cluster nodes using predicate-based sharding to enable horizontal scaling.
- [In-Memory Databases](https://awesome-repositories.com/f/data-databases/in-memory-databases.md) — Maintains in-memory indices to accelerate the retrieval of nodes and edges during graph traversals.

### Part of an Awesome List

- [Data Storage and Search](https://awesome-repositories.com/f/awesome-lists/data/data-storage-and-search.md) — Distributed graph database optimized for relational queries.
- [Database Engines](https://awesome-repositories.com/f/awesome-lists/data/database-engines.md) — Scalable, distributed, low-latency graph database.
- [Database Systems](https://awesome-repositories.com/f/awesome-lists/data/database-systems.md) — Listed in the “Database Systems” section of the Awesome Go awesome list.
- [Document Databases](https://awesome-repositories.com/f/awesome-lists/data/document-databases.md) — Scalable, distributed graph database with high throughput.

### DevOps & Infrastructure

- [Distributed Database Clusters](https://awesome-repositories.com/f/devops-infrastructure/distributed-database-clusters.md) — Operates as a distributed storage platform that maintains performance and availability through cluster-based partitioning.

### Networking & Communication

- [Raft Consensus Implementations](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-systems-coordination/distributed-consensus-protocols/raft-consensus-implementations.md) — Ensures strong consistency and high availability by replicating transaction logs using the Raft consensus algorithm.
