SurrealDB vs TinkerGraph

SurrealDB is a multiple database; TinkerGraph is a property graph database. SurrealDB (2022-07, BUSL-1.1, Rust) ranks #8 this month; TinkerGraph (2009, Apache-2.0, Java) ranks #17.

Attribute SurrealDB #8 ▲1 Leader TinkerGraph #17 ▼4 Strong
At a glance
Rank #8#17
Score 65.858.0
GitHub stars 33.2k2.2k
Popularity 74.271.3
Activity 63.365.6
Community 66.737.9
Research 52.250.0
Fundamentals
Description 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.A lightweight, in-memory property graph engine serving as the reference implementation of the Apache TinkerPop Gremlin graph computing framework.
Vendor SurrealDBApache TinkerPop
Model MultipleProperty Graph
Kind databaseembedded
Category GrowingEstablished
First released 2022-072009
Status activeactive
License BUSL-1.1Apache-2.0
Written in RustJava
Query languages SurrealQL, GraphQL, GQLGremlin
gdotv support noyes

Feature scores — not surveyed for TinkerGraph

Feature SurrealDBTinkerGraph
Community & Business
Active development ✓—
Commercial support ✓—
Live community 0.75—
Open Source 0.5—
Pricing ✓—
Trendiness ✓—
Deployment
Containerization ✓—
Work as dedicated instance ✓—
Work as embedded ✓—
Testing in-memory version ✓—
Platform
Operating on Linux ✓—
Operating on Windows ✓—
SaaS offering ✓—
Operations
Automatic updates ·—
Client side caching ·—
Data versioning support ✓—
Live backups ·—
Distribution
Cluster Re-balancing ✓—
Data Distribution ✓—
High-Availability ✓—
Query Distribution ✓—
Replication support ✓—
Developer Experience
Data types defined 0.5—
Logging/Auditing ✓—
Object-Graph Mapper ✓—
Reactive programming ✓—
Documentation up-to-date ✓—
Binary protocol ✓—
CLI ✓—
GUI ✓—
Data Model
Multi-database ✓—
Graph-native data ✓—
REST API ✓—
Query Language ✓—
Transactions
Granular locking ·—
Multiple isolation levels 0.5—
Read committed transaction ✓—
Transaction support ✓—
Schema & Security
Constraints ✓—
Schema support ✓—
Secondary indexes ✓—
Server side procedures ✓—
Triggers ✓—
Authentication ✓—
Authorization ✓—
Data encryption 0.5—