DBMS > IBM Db2 vs. KeyDB vs. Postgres-XL vs. Riak TS vs. SingleStore
System Properties Comparison IBM Db2 vs. KeyDB vs. Postgres-XL vs. Riak TS vs. SingleStore
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | IBM Db2 formerly named DB2 or IBM Database 2 Xexclude from comparison | KeyDB Xexclude from comparison | Postgres-XL Xexclude from comparison | Riak TS Xexclude from comparison | SingleStore former name was MemSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Common in IBM host environments, 2 different versions for host and Windows/Linux | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | Riak TS is a distributed NoSQL database optimized for time series data and based on Riak KV | MySQL wire-compliant distributed RDBMS that combines an in-memory row-oriented and a disc-based column-oriented storage with patented universal storage to handle transactional and analytical workloads in one single table type | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Since Version 10.5 support for JSON/BSON documents compatible with MongoDB | Key-value store | Relational DBMS | Time Series DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store RDF store in Db2 LUW (Linux, Unix, Windows) Spatial DBMS with Db2 Spatial Extender | Document store Spatial DBMS | Document store Spatial DBMS Time Series DBMS Vector DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.ibm.com/products/db2 | github.com/Snapchat/KeyDB keydb.dev | www.postgres-xl.org | www.singlestore.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.ibm.com/docs/en/db2 | docs.keydb.dev | www.postgres-xl.org/documentation | www.tiot.jp/riak-docs/riak/ts/latest | docs.singlestore.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | IBM | EQ Alpha Technology Ltd. | Open Source, formerly Basho Technologies | SingleStore Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 1983 host version | 2019 | 2014 since 2012, originally named StormDB | 2015 | 2013 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 12.1, October 2016 | 10 R1, October 2018 | 3.0.0, September 2022 | 8.5, January 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial free version is available | Open Source BSD-3 | Open Source Mozilla public license | Open Source | commercial free developer edition available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | SingleStoreDB Cloud: The world's fastest, modern cloud database for both operational (OLTP) and analytical (OLAP) workloads. Available instantly with multi-cloud and hybrid-cloud capabilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C and C++ | C++ | C | Erlang | C++, Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | AIX HP-UX Linux Solaris Windows z/OS | Linux | Linux macOS | Linux OS X | Linux 64 bit version required | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | 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 | yes XML type, but no XML query functionality | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes by using the Redis Search module | yes | restricted | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | no | yes distributed, parallel query execution | yes, limited | yes but no triggers and foreign keys | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC JSON style queries MongoDB compatible ODBC XQuery | Proprietary protocol RESP - REdis Serialization Protoco | ADO.NET JDBC native C library ODBC streaming API for large objects | HTTP API Native Erlang Interface | Cluster Management API as HTTP Rest and CLI HTTP API JDBC MongoDB API ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Cobol Delphi Fortran Java Perl PHP Python Ruby Visual Basic | 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 Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | C unofficial client library C# C++ unofficial client library Clojure unofficial client library Dart unofficial client library Erlang Go unofficial client library Groovy unofficial client library Haskell unofficial client library Java JavaScript unofficial client library Lisp unofficial client library Perl unofficial client library PHP Python Ruby Scala unofficial client library Smalltalk unofficial client library | Bash C C# Java JavaScript (Node.js) Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | Lua | user defined functions | Erlang | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | yes | yes pre-commit hooks and post-commit hooks | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding only with Windows/Unix/Linux Version | Sharding | horizontal partitioning | Sharding | Sharding hash partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes with separate tools (MQ, InfoSphere) | Multi-source replication Source-replica replication | selectable replication factor | Source-replica replication stores two copies of each physical data partition on two separate nodes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes | no can define user-defined aggregate functions for map-reduce-style calculations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Strong eventual consistency with CRDTs | Immediate Consistency | Eventual Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | yes | no links between datasets can be stored | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | Optimistic locking, atomic execution of commands blocks and scripts | ACID MVCC | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes, multi-version concurrency control (MVCC) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | yes | yes All updates are persistent, including those to disk-based columnstores and memory-based row stores. Transaction commits are supported via write-ahead log. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | simple password-based access control and ACL | fine grained access rights according to SQL-standard | no | Fine grained access control via users, groups and roles | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IBM Db2 formerly named DB2 or IBM Database 2 | KeyDB | Postgres-XL | Riak TS | SingleStore former name was MemSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | SingleStore offers a fully-managed , distributed, highly-scalable SQL database designed... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | SingleStore’s competitive advantages include: Easy and Simplified Architecture with... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Driving Fast Analytics: SingleStore delivers the fastest and most scalable reporting... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | IEX Cloud : Improves Financial Data Distribution Speed 15x with Singlestore DB Comcast,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Customers in various industries worldwide including US and International Industry... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | F ree Tier and Enterprise Edition » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IBM Db2 formerly named DB2 or IBM Database 2 | KeyDB | Postgres-XL | Riak TS | SingleStore former name was MemSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Turbocharge Your Application Development Using WebAssembly With SingleStoreDB Cloud-Based Analytics With SingleStoreDB SingleStore: The Increasing Momentum of Multi-Model Database Systems Denial of Service in IBM DB2 Universal Database Use AWS DMS to migrate data from IBM Db2 DPF to an AWS target | Amazon Web Services Precisely Supports Amazon RDS for Db2 Service with Real-Time Data Integration Capabilities IBM Collaborates with AWS to Launch a New Cloud Database Offering, Enabling Customers to Optimize Data ... IBM's vintage Db2 database jumps on AWS's cloud bandwagon provided by Google News Oh, snap! Snap snaps up database developer KeyDB Snap Acquires KeyDB for Open-Source Services Garnet–open-source faster cache-store speeds up applications, services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources Garnet cache-store -- a Redis rival? provided by Google News New Basho Data Platform Provides Operational Simplicity for Enterprise Big Data Applications Best open source databases for IoT applications provided by Google News Building a Modern Database: Nikita Shamgunov on Postgres and Beyond SingleStore CEO sees little future for purpose-built vector databases SingleStore Announces Real-time Data Platform to Further Accelerate AI, Analytics and Application Development SingleStore update adds new tools to fuel GenAI, analytics SingleStore adds indexed vector search to Pro Max release for faster AI work – Blocks and Files provided by Google News |
Share this page