DBMS > Apache Impala vs. NuoDB vs. Percona Server for MongoDB vs. Titan vs. ToroDB
System Properties Comparison Apache Impala vs. NuoDB vs. Percona Server for MongoDB vs. Titan vs. ToroDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Impala Xexclude from comparison | NuoDB Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | Titan Xexclude from comparison | ToroDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Titan has been decommisioned after the takeover by Datastax. It will be removed from the DB-Engines ranking. A fork has been open-sourced as JanusGraph. | ToroDB seems to be discontinued. Therefore it is excluded from the DB-Engines Ranking. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Analytic DBMS for Hadoop | NuoDB is a webscale distributed database that supports SQL and ACID transactions | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | Titan is a Graph DBMS optimized for distributed clusters. | A MongoDB-compatible JSON document store, built on top of PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Document store | Graph DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | impala.apache.org | www.3ds.com/nuodb-distributed-sql-database | www.percona.com/mongodb/software/percona-server-for-mongodb | github.com/thinkaurelius/titan | github.com/torodb/server | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | impala.apache.org/impala-docs.html | doc.nuodb.com | docs.percona.com/percona-distribution-for-mongodb | github.com/thinkaurelius/titan/wiki | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Cloudera | Dassault Systèmes originally NuoDB, Inc. | Percona | Aurelius, owned by DataStax | 8Kdata | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2013 | 2015 | 2012 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.0, June 2022 | 3.4.10-2.10, November 2017 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | commercial limited edition free | Open Source GPL Version 2 | Open Source Apache license, version 2.0 | Open Source AGPL-V3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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++ | C++ | Java | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | hosted Amazon EC2, Windows Azure, SoftLayer Linux OS X Windows | Linux | Linux OS X Unix Windows | All OS with a Java 7 VM | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | yes string, integer, double, boolean, date, object_id | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like DML and DDL statements | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC | ADO.NET JDBC ODBC | proprietary protocol using JSON | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | All languages supporting JDBC/ODBC | .Net C C++ Go Java JavaScript JavaScript (Node.js) PHP 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 | Clojure Java Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes user defined functions and integration of map-reduce | Java, SQL | JavaScript | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | data is dynamically stored/cached on the nodes where it is read/written | Sharding | yes via pluggable storage backends | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | yes Managed transparently by NuoDB | Source-replica replication | yes | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes query execution via MapReduce | no | yes | yes via Faunus, a graph analytics engine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency | Eventual Consistency Immediate Consistency | Eventual Consistency Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | no | yes Relationships in graph | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID tunable commit protocol | no | ACID | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes MVCC | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes Temporary table | yes via In-Memory Engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Apache Sentry and Kerberos | Standard SQL roles/ privileges, Administrative Users | Access rights for users and roles | User authentification and security via Rexster Graph Server | Access rights for users and roles | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Impala | NuoDB | Percona Server for MongoDB | Titan | ToroDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Meet some database management systems you are likely to hear more about in the future | Graph DBMS increased their popularity by 500% within the last 2 years Graph DBMSs are gaining in popularity faster than any other database category | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Impala 4 Supports Operator Multi-Threading Apache Impala becomes Top-Level Project Cloudera Bringing Impala to AWS Cloud Apache Doris just 'graduated': Why care about this SQL data warehouse Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop provided by Google News | Dassault Systèmes Announces the Acquisition of NuoDB, a Cloud-Native Distributed SQL Database Leader Deploy the NuoDB Database in Docker Containers NuoDB has Microsoft SQL Server in its sights NuoDB empowers distributed database users to optimize cloud and container resources with new graphical dashboard NuoDB bags $14.2M for distributed database technology provided by Google News | MongoDB Performance Tuning There are lots of ways to put a database in the cloud – here's what to consider FerretDB goes GA: Gives you MongoDB, without the MongoDB... The Case Against the Server Side Public License (SSPL) The essential guide to MongoDB security provided by Google News | Titan Graph Database Integration with DynamoDB: World-class Performance, Availability, and Scale for New Workloads Amazon DynamoDB Storage Backend for Titan: Distributed Graph Database | Amazon Web Services JanusGraph Picks Up Where TitanDB Left Off DataStax acquires Aurelius, the startup behind the Titan graph database DSE Graph review: Graph database does double duty provided by Google News |
Share this page