DBMS > 4D vs. Apache IoTDB vs. Microsoft Azure Cosmos DB vs. Redis vs. TimescaleDB
System Properties Comparison 4D vs. Apache IoTDB vs. Microsoft Azure Cosmos DB vs. Redis vs. TimescaleDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | 4D ![]() | Apache IoTDB Xexclude from comparison | Microsoft Azure Cosmos DB ![]() | Redis Xexclude from comparison | TimescaleDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Application development environment with integrated database management system | An IoT native database with high performance for data management and analysis, deployable on the edge and the cloud and integrated with Hadoop, Spark and Flink | Globally distributed, horizontally scalable, multi-model database service | Popular in-memory data platform used as a cache, message broker, and database that can be deployed on-premises, across clouds, and hybrid environments ![]() | A time series DBMS optimized for fast ingest and complex queries, based on PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Time Series DBMS | Document store Graph DBMS Key-value store Wide column store | Key-value store ![]() | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store ![]() Graph DBMS ![]() Spatial DBMS Search engine ![]() Time Series DBMS ![]() Vector DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.4d.com | iotdb.apache.org | azure.microsoft.com/services/cosmos-db | redis.com redis.io | www.timescale.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | developer.4d.com | iotdb.apache.org/UserGuide/Master/QuickStart/QuickStart.html | learn.microsoft.com/azure/cosmos-db | docs.redis.com/latest/index.html redis.io/docs | docs.timescale.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | 4D, Inc | Apache Software Foundation | Microsoft | Redis project core team, inspired by Salvatore Sanfilippo ![]() | Timescale | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 1984 | 2018 | 2014 | 2009 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | v20, April 2023 | 1.1.0, April 2023 | 7.2.5, May 2024 | 2.15.0, May 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License ![]() | commercial | Open Source ![]() | commercial | Open Source ![]() | Open Source ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only ![]() | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) ![]() Providers of DBaaS offerings, please contact us to be listed. | Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | OS X Windows | All OS with a Java VM (>= 1.8) | hosted | BSD Linux OS X Windows ![]() | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing ![]() | yes | yes | yes ![]() | partial ![]() | numerics, strings, booleans, arrays, JSON blobs, geospatial dimensions, currencies, binary data, other complex data types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support ![]() | yes | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes ![]() | yes ![]() | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL ![]() | yes ![]() | SQL-like query language | SQL-like query language | with RediSQL module | yes ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ODBC RESTful HTTP API ![]() SOAP webservices | JDBC Native API | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | proprietary protocol ![]() | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | 4D proprietary IDE PHP | C C# C++ Go Java Python Scala | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | .Net C C++ Delphi Java ![]() JavaScript Perl PHP Python R Ruby Scheme Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts ![]() | yes | yes | JavaScript | Lua; Redis Functions coming in Redis 7 (slides and Github) | user defined functions, PL/pgSQL, PL/Tcl, PL/Perl, PL/Python, PL/Java, PL/PHP, PL/R, PL/Ruby, PL/Scheme, PL/Unix shell | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | JavaScript | publish/subscribe channels provide some trigger functionality; RedisGears | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods ![]() | none | horizontal partitioning (by time range) + vertical partitioning (by deviceId) | Sharding ![]() | Sharding ![]() | yes, across time and space (hash partitioning) attributes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods ![]() | Multi-source replication | selectable replication methods; using Raft/IoTConsensus algorithm to ensure strong/eventual data consistency among multiple replicas | yes ![]() | Multi-source replication ![]() Source-replica replication ![]() | Source-replica replication with hot standby and reads on replicas ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce ![]() | no | Integration with Hadoop and Spark | with Hadoop integration ![]() | through RedisGears | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts ![]() | Immediate Consistency | Eventual Consistency Strong Consistency with Raft | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency ![]() Session Consistency | Eventual Consistency Causal consistency can be enabled in Active-Active databases Strong consistency with Redis Raft Strong eventual consistency with Active-Active | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys ![]() | yes | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts ![]() | ACID | no | Multi-item ACID transactions with snapshot isolation within a partition | Atomic execution of command blocks and scripts and optimistic locking | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency ![]() | yes | yes | yes | yes ![]() | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability ![]() | yes | yes | yes | yes ![]() | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities ![]() | no | yes | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts ![]() | Users and groups | yes | Access rights can be defined down to the item level | Access Control Lists (ACLs): redis.io/docs/management/security/acl LDAP and Role-Based Access Control (RBAC) for Redis Enterprise Mutual TLS authentication: redis.io/docs/management/security/encryption Password-based authentication | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | CData: Connect to Big Data & NoSQL through standard Drivers. » more Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. » more Redisson PRO: The ultra-fast Redis Java Client. » more Navicat for Redis: the award-winning Redis management tool with an intuitive and powerful graphical interface. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4D ![]() | Apache IoTDB | Microsoft Azure Cosmos DB ![]() | Redis | TimescaleDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL, PostgreSQL and Redis are the winners of the March ranking | PostgreSQL is the DBMS of the Year 2018 MySQL, PostgreSQL and Redis are the winners of the March ranking MongoDB is the DBMS of the year, defending the title from last year | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | AMD EPYC 4364P & 4564P @ DDR5-4800 / DDR5-5200 vs. Intel Xeon E-2488 Review TsFile: A Standard Format for IoT Time Series Data Linux 6.5 With AMD P-State EPP Default Brings Performance & Power Efficiency Benefits For Ryzen Servers Apache Promotes IoT Database Project AMD EPYC 8324P / 8324PN Siena 32-Core Siena Linux Server Performance Review provided by Google News | Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Public Preview: DiskANN vector indexing and search in Azure Cosmos DB NoSQL | Azure updates Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates Building Planet-Scale .NET Apps with Azure Cosmos DB Public preview: Filtered vector search in vCore-based Azure Cosmos DB for MongoDB | Azure updates provided by Google News | Redis moves to source-available licenses Redis switches licenses, acquires Speedb to go beyond its core in-memory database Redis acquires storage engine startup Speedb to enhance its open-source database Redis expands data management capabilities with Speedb acquisition – Blocks and Files Linux Foundation marshals support for open source alternative to Redis provided by Google News | TimescaleDB Is a Vector Database Now, Too Timescale Acquires PopSQL to Bring a Modern, Collaborative SQL GUI to PostgreSQL Developers Power IoT and time-series workloads with TimescaleDB for Azure Database for PostgreSQL Timescale Valuation Rockets to Over $1B with $110M Round, Marking the Explosive Rise of Time-Series Data TimescaleDB goes distributed; implements ‘Chunking’ over ‘Sharding’ for scaling-out provided by Google News |
Share this page