DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

Nebula Graph


Nebula Graph is an open source distributed graph database system developed by VEsoft Inc. The goal of Nebula Graph is to serve as a graph database solution that is for both OLTP (Online Transaction Processing) and OLAP (Online Analytical Processing) business scenarios.

Source Code
https://github.com/vesoft-inc/nebula[02]
Developer
Country of Origin
CN
Start Year
2018 [06]
Former Name
Nebula Graph
Project Type
Open Source
Written in
C++
Supported Languages
C++
Operating System
Linux
License
Apache v2

Database Entry

Nebula Graph


Nebula Graph is an open source distributed graph database system developed by VEsoft Inc. The goal of Nebula Graph is to serve as a graph database solution that is for both OLTP (Online Transaction Processing) and OLAP (Online Analytical Processing) business scenarios.

Checkpoints[04]


Nebula Graph provides cluster snapshot to support reading history data.

Concurrency Control


Data Model[05]


The data model handled by the Nebula Graph is a directed property graph, whose edges are directional and there could be properties on both edges and vertices. It can be represented as: G = < V, E, PV, PE >, where V is a set of nodes aka vertices, E is a set of directional edges, PV represents properties on vertices, and PE is the properties on edges.

Foreign Keys


Query Interface


Nebula Graph uses a proprietary query language called nGQL.

Storage Model


System Architecture


Nebula Graph adopted the shared-nothing distributed architecture in storage so nodes do not share memory or storage, which means there are no central nodes in the whole system.

The binary of storage service is nebula-storaged, which provides a key-value store. Multiple storage engines like RocksDB and HBase are supported, with RocksDB set as the default engine.

Raft is implemented as the consensus algorithm.

Revision #9 Last Updated: