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: Mainly supports RocksDB/HStore + HBase; other backends available in legacy versions ≤ 1.5.0 (MySQL/PostgreSQL/Cassandra…)
Big Data Integration: Seamless integration with Flink/Spark/HDFS
Docker Desktop (Mac/Windows): The 3-node distributed cluster (docker/docker-compose-3pd-3store-3server.yml) uses Docker bridge networking and works on all platforms including Docker Desktop. Allocate at least 12 GB memory to Docker Desktop.
Note: Docker images are convenience releases, not official ASF distribution artifacts. See ASF Release Distribution Policy for details.
Version Tags: Use release tags (e.g., 1.7.0) for stable deployments. The latest tag should only be used for testing or development.
# Download and extract
# For historical 1.7.0 and earlier releases, use the archive URL and
# set PACKAGE=apache-hugegraph-incubating-{version} instead.
BASE_URL="https://downloads.apache.org/hugegraph/{version}"
PACKAGE="apache-hugegraph-{version}"
# Historical alternative:
# BASE_URL="https://archive.apache.org/dist/incubator/hugegraph/{version}"
# PACKAGE="apache-hugegraph-incubating-{version}"
wget ${BASE_URL}/${PACKAGE}.tar.gz
tar -xzf ${PACKAGE}.tar.gz
cd ${PACKAGE}
# Initialize backend storage
bin/init-store.sh
# Start server
bin/start-hugegraph.sh
# Check server status
bin/monitor-hugegraph.sh
Build from source for development or customization:
# Clone repository
git clone https://github.com/apache/hugegraph.git
cd hugegraph
# Build all modules (skip tests for faster build)
mvn clean package -DskipTests
# Extract built package
cd install-dist/target
tar -xzf hugegraph-{version}.tar.gz
cd hugegraph-{version}
# Initialize and start
bin/init-store.sh
bin/start-hugegraph.sh
WeChat: Scan the QR code to follow Apache HugeGraph official account
Thanks
HugeGraph relies on the Apache TinkerPop framework. We are grateful to the TinkerPop community, Titan, and DataStax for their foundational work. Thanks to all contributors and organizations who have helped make HugeGraph possible.
You are welcome to contribute to HugeGraph, and we look forward to working with you to build an excellent open-source community.
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
RocksDB/HStore+HBase; other backends available in legacy versions ≤1.5.0(MySQL/PostgreSQL/Cassandra…)Flink/Spark/HDFSEcosystem
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:
Deployment Mode Comparison
Module Overview
📊 Click to view detailed architecture diagram (Mermaid)
flowchart TB subgraph Clients["Client Layer"] GC[Gremlin Console] REST[REST Client] CYPHER[Cypher Client] SDK[SDK/Tools] end subgraph Server["HugeGraph Server :8080"] API[REST APIJersey 3] GS[Gremlin Server
TinkerPop 3.5] CS[Cypher Engine
OpenCypher] CORE[Graph Engine
hugegraph-core] API --> CORE GS --> CORE CS --> CORE end subgraph Storage["Storage Layer"] subgraph Standalone["Standalone Mode"] ROCKS[(RocksDB
Embedded)] end subgraph Distributed["Distributed Mode"] PD[HugeGraph-PD
Raft Cluster
:8620/:8686] STORE[HugeGraph-Store
Raft + RocksDB
:8520] PD <--> STORE end subgraph Legacy["Legacy Backends (≤v1.5)"] MYSQL[(MySQL)] PG[(PostgreSQL)] CASS[(Cassandra)] HBASE[(HBase, ≤v1.7)] end end Clients --> Server CORE --> ROCKS CORE --> PD CORE -.-> Legacy style Server fill:#e1f5ff style Distributed fill:#fff4e1 style Standalone fill:#f0f0f0
Quick Start
5 Minutes Quick Start
Prerequisites
Option 1: Docker (Fastest)
Docker is the quickest way to get started for testing or development:
For advanced Docker configurations, see:
Option 2: Download Binary Package
Download pre-built packages from the Download Page:
For detailed instructions, see the Binary Installation Guide.
Option 3: Build from Source
Build from source for development or customization:
For detailed build instructions, see BUILDING.md and Build from Source Guide.
Verify Installation
Once the server is running, verify the installation:
For comprehensive documentation, visit the HugeGraph Documentation.
Module Map
Developer Navigation: Find the right module for your task
hugegraph-coreStandardHugeGraph.javahugegraph-apisrc/.../api/hugegraph-coreBackendStore.javahugegraph-coresrc/.../traversal/hugegraph-apisrc/.../opencypher/hugegraph-pdhg-pd-core/hugegraph-storehg-store-core/hugegraph-server/hugegraph-{backend}hugegraph-rocksdb/,hugegraph-hstore/hugegraph-distsrc/assembly/static/conf/hugegraph-testFor detailed architecture and development guidance, see AGENTS.md.
For Contributors
New to HugeGraph? Follow this path to get started:
Understand the Architecture
Set Up Your Environment
.editorconfigfor code style andstyle/checkstyle.xmlfor Checkstyle rulesFind Your First Issue
Learn the Codebase
mvn test -pl hugegraph-server/hugegraph-test -am -P core-test,memoryCode Standards
feat|fix|refactor(module): descriptionSubmit Your Contribution
Contributing
Welcome to contribute to HugeGraph!
.editorconfigfor code style andstyle/checkstyle.xmlfor Checkstyle rulesThank you to all the contributors who have helped make HugeGraph better!
License
HugeGraph is licensed under Apache 2.0 License.
Community
Get Help & Stay Connected
Thanks
HugeGraph relies on the Apache TinkerPop framework. We are grateful to the TinkerPop community, Titan, and DataStax for their foundational work. Thanks to all contributors and organizations who have helped make HugeGraph possible.
You are welcome to contribute to HugeGraph, and we look forward to working with you to build an excellent open-source community.