Back to all databases

SurrealDB

A multi-model database written in Rust that combines document, graph, and relational paradigms. Uses inter-document record links for graph traversals, with ACID transactions and row-level permissions.

Overall rank
#8
First released
July 2022
License
BUSL-1.1
Built with
Rust

Details

Vendor
SurrealDB
Type
Multiple
Category
Growing
License
BUSL-1.1
Language
Rust
Query Languages
SurrealQLGraphQLGQL
Protocols
HTTP/RESTGraphQL (HTTP)WebSocket

Feature scores

Community & Business

Active development
✓
Updated within last 3 months
Commercial support
✓
Paid support available
Live community
75%
50-75% of issues addressed
Open Source
50%
Source available but restrictive
Pricing
✓
Pricing publicly available
Trendiness
✓
Growing or stable trend

Deployment

Containerization
✓
Docker image available
Work as dedicated instance
✓
Can run as standalone server
Work as embedded
✓
Can embed in application
Testing in-memory version
✓
In-memory mode available

Platform

Operating on Linux
✓
Linux officially supported
Operating on Windows
✓
Windows officially supported
SaaS offering
✓
Cloud service available

Operations

Automatic updates
0%
Manual updates only
Client side caching
0%
No client-side caching
Data versioning support
✓
Version control for data
Live backups
0%
No live backups

Distribution

Cluster Re-balancing
✓
Auto-rebalancing supported
Data Distribution
✓
Data sharding supported
High-Availability
✓
HA mechanisms available
Query Distribution
✓
Distributed query execution
Replication support
✓
Replication available

Developer Experience

Data types defined
50%
Basic data types only
Logging/Auditing
✓
Event logging supported
Object-Graph Mapper
✓
OGM/ORM available
Reactive programming
✓
Reactive streams supported
Documentation up-to-date
✓
Docs current with latest version
Binary protocol
✓
Binary protocol available
CLI
✓
Command-line interface
GUI
✓
Visual interface available

Data Model

Multi-database
✓
Multi-model database
Graph-native data
✓
Native graph storage
REST API
✓
REST endpoint available
Query Language
✓
Standard query language (Cypher/Gremlin)

Transactions

Granular locking
0%
No granular locking
Multiple isolation levels
50%
Single isolation level
Read committed transaction
✓
Read committed available
Transaction support
✓
ACID transactions

Schema & Security

Constraints
✓
Full constraint support
Schema support
✓
Schema definition tools
Secondary indexes
✓
Secondary indexes supported
Server side procedures
✓
Stored procedures supported
Triggers
✓
Event triggers supported
Authentication
✓
Authentication supported
Authorization
✓
Role-based access control
Data encryption
50%
No description available
Sources 6 references

Protocols HTTP/REST, WebSocket, GraphQL (HTTP)

GraphQL, previously behind an experimental flag, became stable and enabled by default in SurrealDB 3.0 (Feb 2026), served at POST /graphql; this confirms and strengthens pass_B's addition over pass_A. The shared RPC protocol runs over both HTTP and WebSocket, with WebSocket adding live queries and stateful sessions; embedding as a library is not a network protocol and gets no tag.

License BUSL-1.1

Corrects the catalogue's 'BSL-1.1' (the SPDX id for the unrelated Boost license). The repo's LICENSE file is the MariaDB-originated Business Source License 1.1, whose correct SPDX identifier is BUSL-1.1.

  • The Business Source License (this document, or the "License") is not an Open Source license. However, the Licensed Work will eventually be made available under an Open Source License, as stated in this License.
    LICENSE - surrealdb/surrealdb · reviewed 2026-08-02

Released 2022-07

Refines the catalogue's year-only '2022'. SurrealDB's 2021 beta was a private release to select developers and organisations; first public availability was the open beta announced July 20, 2022.

Language Rust

Confirms the current value.