DB-EnginesInfluxDB: Focus on building software with an easy-to-use serverless, scalable time series platformEnglish
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > Datomic vs. EJDB vs. STSdb vs. SurrealDB

System Properties Comparison Datomic vs. EJDB vs. STSdb vs. SurrealDB

Please select another system to include it in the comparison.

Editorial information provided by DB-Engines
NameDatomic  Xexclude from comparisonEJDB  Xexclude from comparisonSTSdb  Xexclude from comparisonSurrealDB  Xexclude from comparison
DescriptionDatomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durabilityEmbeddable document-store database library with JSON representation of queries (in MongoDB style)Key-Value Store with special method for indexing infooptimized for high performance using a special indexing methodA fully ACID transactional, developer-friendly, multi-model DBMS
Primary database modelRelational DBMSDocument storeKey-value storeDocument store
Graph DBMS
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score1.66
Rank#144  Overall
#66  Relational DBMS
Score0.31
Rank#296  Overall
#44  Document stores
Score0.10
Rank#357  Overall
#51  Key-value stores
Score1.02
Rank#190  Overall
#33  Document stores
#18  Graph DBMS
Websitewww.datomic.comgithub.com/­Softmotions/­ejdbgithub.com/­STSSoft/­STSdb4surrealdb.com
Technical documentationdocs.datomic.comgithub.com/­Softmotions/­ejdb/­blob/­master/­README.mdsurrealdb.com/­docs
DeveloperCognitectSoftmotionsSTS Soft SCSurrealDB Ltd
Initial release2012201220112022
Current release1.0.7075, December 20234.0.8, September 2015v1.5.0, May 2024
License infoCommercial or Open Sourcecommercial infolimited edition freeOpen Source infoGPLv2Open Source infoGPLv2, commercial license availableOpen Source
Cloud-based only infoOnly available as a cloud servicenononono
DBaaS offerings (sponsored links) infoDatabase as a Service

Providers of DBaaS offerings, please contact us to be listed.
Implementation languageJava, ClojureCC#Rust
Server operating systemsAll OS with a Java VMserver-lessWindowsLinux
macOS
Windows
Data schemeyesschema-freeyesschema-free
Typing infopredefined data types such as float or dateyesyes infostring, integer, double, bool, date, object_idyes infoprimitive types and user defined types (classes)yes
XML support infoSome form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT.no
Secondary indexesyesnono
SQL infoSupport of SQLnononoSQL-like query language
APIs and other access methodsRESTful HTTP APIin-process shared library.NET Client APIGraphQL
RESTful HTTP API
WebSocket
Supported programming languagesClojure
Java
Actionscript
C
C#
C++
Go
Java
JavaScript (Node.js)
Lua
Objective-C
Pike
Python
Ruby
C#
Java
Deno
Go
JavaScript (Node.js)
Rust
Server-side scripts infoStored proceduresyes infoTransaction Functionsnono
TriggersBy using transaction functionsnono
Partitioning methods infoMethods for storing different data on different nodesnone infoBut extensive use of caching in the application peersnonenone
Replication methods infoMethods for redundantly storing data on multiple nodesnone infoBut extensive use of caching in the application peersnonenone
MapReduce infoOffers an API for user-defined Map/Reduce methodsnononono
Consistency concepts infoMethods to ensure consistency in a distributed systemImmediate Consistency
Foreign keys infoReferential integritynono infotypically not needed, however similar functionality with collection joins possibleno
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of dataACIDnonoACID
Concurrency infoSupport for concurrent manipulation of datayesyes infoRead/Write Lockingyesyes
Durability infoSupport for making data persistentyes infousing external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others)yesyesyes
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.yes inforecommended only for testing and development
User concepts infoAccess controlnononoyes, based on authentication and database rules

More information provided by the system vendor

We invite representatives of system vendors to contact us for updating and extending the system information,
and for displaying vendor-provided information such as key customers, competitive advantages and market metrics.

Related products and services

We invite representatives of vendors of related products to contact us for presenting information about their offerings here.

More resources
DatomicEJDBSTSdbSurrealDB
Recent citations in the news

Nubank buys firm behind Clojure programming language
28 July 2020, Finextra

Architecting Software for Leverage
13 November 2021, InfoQ.com

TerminusDB Takes on Data Collaboration with a git-Like Approach
1 December 2020, The New Stack

Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic
24 July 2020, LatamList

James Dixon Imagines A Data Lake That Matters
26 January 2015, Forbes

provided by Google News

SD Times Open-Source Project of the Week: SurrealDB
10 May 2024, SDTimes.com

Meet Tobie Morgan Hitchcock, CEO & Co-Founder Of SurrealDB
25 April 2024, TechRound

Cloud, privacy and AI: Trends defining the future of data and databases
27 September 2023, Sifted

SurrealDB raises $6M for its database-as-a-service offering
4 January 2023, TechCrunch

Introducing SurrealDB: A Quantum Leap in Database Technology
11 September 2023, TechRound

provided by Google News



Share this page

Featured Products

Milvus logo

Vector database designed for GenAI, fully equipped for enterprise implementation.
Try Managed Milvus for Free

Datastax Astra logo

Bring all your data to Generative AI applications with vector search enabled by the most scalable
vector database available.
Try for Free

Neo4j logo

See for yourself how a graph database can make your life easier.
Use Neo4j online for free.

Present your product here