DBMS > EJDB vs. Percona Server for MongoDB vs. Spark SQL vs. TerarkDB vs. Transbase
System Properties Comparison EJDB vs. Percona Server for MongoDB vs. Spark SQL vs. TerarkDB vs. Transbase
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EJDB Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | Spark SQL Xexclude from comparison | TerarkDB Xexclude from comparison | Transbase Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | Spark SQL is a component on top of 'Spark Core' for structured data processing | A key-value store forked from RocksDB with advanced compression algorithms. It can be used standalone or as a storage engine for MySQL and MongoDB | A resource-optimized, high-performance, universally applicable RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store | Relational DBMS | Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Softmotions/ejdb | www.percona.com/mongodb/software/percona-server-for-mongodb | spark.apache.org/sql | github.com/bytedance/terarkdb | www.transaction.de/en/products/transbase.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/Softmotions/ejdb/blob/master/README.md | docs.percona.com/percona-distribution-for-mongodb | spark.apache.org/docs/latest/sql-programming-guide.html | bytedance.larkoffice.com/docs/doccnZmYFqHBm06BbvYgjsHHcKc | www.transaction.de/en/products/transbase/features.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Softmotions | Percona | Apache Software Foundation | ByteDance, originally Terark | Transaction Software GmbH | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2015 | 2014 | 2016 | 1987 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.4.10-2.10, November 2017 | 3.5.0 ( 2.13), September 2023 | Transbase 8.3, 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source GPLv2 | Open Source GPL Version 2 | Open Source Apache 2.0 | commercial restricted open source version available | commercial free development license | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C | C++ | Scala | C++ | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | Linux | Linux OS X Windows | FreeBSD Linux macOS Solaris Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, bool, date, object_id | yes | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like DML and DDL statements | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | in-process shared library | proprietary protocol using JSON | JDBC ODBC | C++ API Java API | ADO.NET JDBC ODBC Proprietary native API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | Actionscript C C# C++ Clojure ColdFusion D Dart Delphi Erlang Go Groovy Haskell Java JavaScript Lisp Lua MatLab Perl PHP PowerShell Prolog Python R Ruby Scala Smalltalk | Java Python R Scala | C++ Java | C C# C++ Java JavaScript Kotlin Objective-C PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | JavaScript | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding | yes, utilizing Spark Core | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Source-replica replication | none | none | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not needed, however similar functionality with collection joins possible | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Read/Write Locking | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes via In-Memory Engine | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Access rights for users and roles | no | no | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | Percona Server for MongoDB | Spark SQL | TerarkDB | Transbase | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | MongoDB Performance Tuning How to Plan Your MongoDB Upgrade Why Isn't the World Upgrading Its Databases? Percona launches management system aimed at open-source databases FerretDB goes GA: Gives you MongoDB, without the MongoDB... provided by Google News | Run Apache Hive workloads using Spark SQL with Amazon EMR on EKS | Amazon Web Services What is Apache Spark? The big data platform that crushed Hadoop Performance Insights from Sigma Rule Detections in Spark Streaming Cracking the Apache Spark Interview: 80+ Top Questions and Answers for 2024 Simba Technologies(R) Introduces New, Powerful JDBC Driver With SQL Connector for Apache Spark(TM) provided by Google News | A Chinese company is making the cloud 200x faster ยท TechNode provided by Google News |
Share this page