Database

NebulaGraph: Open-Source Distributed Graph Database

NebulaGraph is an open-source distributed graph database for handling trillion-edge data with millisecond latency and shared-nothing architecture.

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
NebulaGraph: Open-Source Distributed Graph Database

Graph databases are essential for applications that need to traverse complex relationships at scale. NebulaGraph, developed by vesoft-inc, is a distributed graph database designed from the ground up for handling trillion-edge datasets with millisecond query latency.

Unlike graph databases that bolt distribution onto a single-node design, NebulaGraph was built with a shared-nothing architecture where every component is horizontally scalable. Storage, computation, and metadata are decoupled, allowing independent scaling. The result is a graph database that can grow from a laptop to a 100+ node cluster without architectural changes.

Architecture Components

ComponentFunctionScalability
Meta ServiceCluster metadata, schema managementRaft consensus
Storage ServiceData persistence with auto-shardingLinear horizontal
Graph ServiceQuery computation and executionLinear horizontal
Monitor ServiceCluster health and performanceCentralized

Query Processing Flow

Queries enter via the Graph Service where they are parsed, planned, and optimized. The execution plan is distributed across Storage Service nodes, each returning partial results that are aggregated into the final result.

Performance Characteristics

MetricNebulaGraphNeo4jJanusGraphAmazon Neptune
Max graph size100 trillion100 billion10 billion100 billion
Query latency (1B edges)2ms5ms15ms8ms
Write throughput1M/s50K/s100K/s200K/s
Node count scalability100+Limited50+Managed

Key Capabilities

NebulaGraph supports the nGQL query language (similar to SQL for graphs), ACID transactions, full-text search, and graph algorithms. It integrates with Spark, Flink, and Kafka for data pipelines, and supports visualization tools for graph exploration.

For more information, visit the NebulaGraph GitHub repository and the NebulaGraph documentation.

Frequently Asked Questions

Q: What query language does NebulaGraph use? A: nGQL, a SQL-like graph query language designed for ease of use and expressiveness.

Q: Can NebulaGraph run on a single machine? A: Yes, it supports single-node deployment for development and testing.

Q: How does NebulaGraph handle data replication? A: Storage partitions are replicated across nodes using Raft consensus for fault tolerance.

Q: Does NebulaGraph support graph algorithms? A: Yes, including PageRank, community detection, shortest path, and connected components.

Q: What storage engines does NebulaGraph support? A: It uses its own KV store optimized for graph workloads, built on RocksDB.

TAG
CATEGORIES