A graph database that supports more than 10 billion vertices & edges, high performance and scalability
Quick Navigation: Architecture • Quick Start • Module Map • Ecosystem • For Contributors • Community
What is Apache HugeGraph?
HugeGraph is a fast and highly-scalable graph database. Billions of vertices and edges can be easily stored into and queried from HugeGraph due to its excellent OLTP capabilities. HugeGraph is compliant with the Apache TinkerPop 3 framework allowing complicated graph queries to be achieved through the powerful Gremlin graph traversal language.
Features
- Schema Metadata Management: VertexLabel, EdgeLabel, PropertyKey, and IndexLabel
- Multi-type Indexes: Exact query, range query, and complex conditions combination query
- Plug-in Backend Store Framework: RocksDB powers standalone deployments and HStore powers distributed clusters. See the backend evolution guide for compatibility details.
- Big Data Integration: Seamless integration with
Flink/Spark/HDFS - Complete Graph Ecosystem: In/out-memory Graph Computing + Graph Visualization & Tools + Graph Learning & AI
- Dual Query Language Support: Gremlin (via Apache TinkerPop 3) and Cypher (OpenCypher)
Ecosystem
Complete HugeGraph ecosystem components:
hugegraph-toolchain - Graph tools suite
hugegraph-computer - Integrated graph computing system
hugegraph-ai - Graph AI/LLM/Knowledge Graph integration
hugegraph-website - Documentation & website repository
Architecture
HugeGraph supports both standalone and distributed deployments:
┌─────────────────────────────────────────────────────┐
│ Client Layer │
│ Gremlin Console │ REST API │ Cypher │ SDK/Tools │
└─────────────────────────┬───────────────────────────┘
│
┌─────────────────────────▼───────────────────────────┐
│ HugeGraph Server (:8080) │
│ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │
│ │ REST API │ │ Gremlin │ │ Cypher Engine │ │
│ │(Jersey 3)│ │ (TP 3.5) │ │ (OpenCypher) │ │
│ └────┬─────┘ └────┬─────┘ └────────┬─────────┘ │
│ └─────────────┼─────────────────┘ │
│ ┌────────▼────────┐ │
│ │ Graph Engine │ │
│ │(hugegraph-core) │ │
│ └────────┬────────┘ │
└─────────────────────┼───────────────────────────────┘
│
┌─────────────────┴─────────────────┐
│ │
┌──────────────▼──────────────┐ ┌──────────────▼──────────────┐
│ Standalone Mode │ │ Distributed Mode │
│ ┌───────────────────────┐ │ │ ┌───────────────────────┐ │
│ │ RocksDB │ │ │ │ HugeGraph-PD │ │
│ │ (embedded) │ │ │ │ (Raft, 3-5 nodes) │ │
│ └───────────────────────┘ │ │ │ :8620/:8686 │ │
│ │ │ └───────────┬───────────┘ │
│ Use Case: │ │ │ │
│ Development/Testing │ │ ┌───────────▼───────────┐ │
│ Single Node │ │ │ HStore │ │
│ │ │ │ (Raft, 3+ nodes) │ │
│ Data Scale: < 1TB │ │ │ :8520 │ │
└─────────────────────────────┘ │ └───────────────────────┘ │
│ │
│ Use Case: │
│ Production/HA/Cluster │
│ │
│ Data Scale: < 1000 TB │
└─────────────────────────────┘
See the backend evolution guide for lifecycle and historical compatibility guidance.
Deployment Mode Comparison
| Mode | Components | Use Case | Data Scale | High Availability |
|---|---|---|---|---|
| Standalone | Server + RocksDB | Development, Testing, Single Node |
📊 Click to view detailed architecture diagram (Mermaid)
flowchart TB
CLIENTS["Client Layer<br/>Gremlin Console · REST Client · Cypher Client · SDK/Tools"]
subgraph Server["HugeGraph Server :8080"]
API[REST API<br/>Jersey 3]
GS[Gremlin Server<br/>TinkerPop 3.5]
CS[Cypher Engine<br/>OpenCypher]
CORE[Graph Engine<br/>hugegraph-core]
API --> CORE
GS --> CORE
CS --> CORE
end
subgraph Storage["Storage Layer"]
subgraph Standalone["Standalone Mode"]
ROCKS[(RocksDB<br/>Embedded)]
end
subgraph Distributed["Distributed Mode"]
PD_HSTORE[PD + HStore<br/>Raft Cluster]
end
end
CLIENTS --> Server
CORE --> ROCKS
CORE --> PD_HSTORE
style Server fill:#e1f5ff
style Distributed fill:#fff4e1
style Standalone fill:#f0f0f0