List of in-memory databases explained

Notable in-memory database system software includes:

NameDeveloperAvailabilityClient InterfaceLicenseDescription/Notes
Aerospike DBSAerospike Company2012Java, C#, C, Python, Go, Node.js, Perl, libevent, PHP, Ruby, RustOpen Source (AGPL)Flash-optimized in-memory open source NoSQL database.
ALTIBASE HDBAltibase Corporation1999Java, C, C++, JDBC, ODBC, SQLProprietaryAltibase is a hybrid DBMS that combines an in-memory database with a conventional disk-resident database in a single unified engine. It supports full ACID properties and standard connectivity interfaces such as JDBC and ODBC, as well as interoperability.Altibase Corporation has recently made the decision to discontinue the Altibase 7.1 open source edition, effective March 17, 2023, on its Github page (https://github.com/Altibase/altibase).
ALTIBASE XDBAltibase Corporation1999Java, C, C++, JDBC, ODBC, SQLProprietaryGeneral purpose database that has high data processing speeds in main-memory alone. It comes with high-availability, replication and scalability features; three interfaces (including Direct Access Mode and Direct Access API Mode) as well as conventional client/server protocols such as TCP/IP and IPC for more complex database operations. Supports full ACID properties, standard connectivity interfaces such as JDBC and ODBC [fully supported] as well as interoperability.
Apache IgniteApache Software Foundation, GridGain Systems2014Java, SQL, JDBC, ODBCOpen Source (Apache License Version 2.0)Apache Ignite is an in-memory computing platform that is durable, strongly consistent, and highly available with powerful SQL, key-value and processing APIs.With full SQL support, one of the main use cases for Apache Ignite is the in-memory database which scales horizontally and provides ACID transactions.
ArangoDBArangoDB GmbH2011AQL, HTTP, Java, JavaScript, PHP, Go, Scala, .Net, Python, RubyOpen Source (Apache LicenseVersion 2.0)ArangoDB is a transactional native multi-model database supporting two major NoSQL data models (graph and document[1]) with one query language. Written in C++ and optimized for in-memory computing. In addition ArangoDB integrated RocksDB for persistent storage. ArangoDB supports Java, JavaScript, Python, PHP, NodeJS, C++ and Elixir. For resilient cluster behavior, ArangoDB offers a Raft-based cluster management.
Datablitz (formerly Dali)Bell Labs (Alcatel-Lucent)1997ProprietaryDali prototype was a research project at Bell Labs. It was commercialized and used by Lucent as database for in premier wireline and wireless products.
DuckDBDuckDB Labs2019C/C++, Python, R, Java, Go, Rust, Node.js, Wasm, ODBC, ADBC, and more [2] Open source (MIT License)DuckDB is an in-process database system designed for high performance for analytical query workloads offers client APIs for a wide range of languages.
ExasolExasol AG2000JDBC, ODBC, ADO.NET, Python, SQL, R, Go, Rest API [3] ProprietaryExasol is in-memory, column-oriented analytical relational database management system which is developed by Exasol AG.
EhcacheTerracotta, Inc. (Software AG)2006JavaOpen source (Apache License)For Java, distributed
eXtremeDBMcObject2001SQL, Lua, C, C++, C#, Java, PythonProprietaryCross-platform, including Linux, Windows, RTOS and server platforms. Interfaces include type-safe, native C/C++; native Java & .NET; SQL/ODBC/JDBC. Specialized editions for (for example) clustering, high availability, 64-bit support, and hybrid (in-memory and persistent) storage. eXtremeDB Financial Edition implements columnar data handling, vector-based statistical function library, integrated performance monitoring.
H2 (DBMS)H2Java, ODBC, JDBCOpen Source (Mozilla Public License or Eclipse Public License)For Java
HSQLDBHSQL Development Group2001Java, SQL, ODBCOpen Source (BSD License)Relational, for Java[4]
HazelcastHazelcast TeamJava, C#, C++, Node.js, Python, GoOpen Source (Apache License 2.0)Hazelcast is an in-memory computing platform that runs applications with extremely high throughput and low latency requirements. It offers speed, scale, simplicity, resiliency, and security in a distributed architecture. It consists of an in-memory data grid and a distributed stream processing engine that work together to run many types of data processing workloads.
Informix Warehouse AcceleratorIBMJDBC, SQLProprietaryIWA supports Dynamic In-memory (in-memory columnar processing) Parallel Vector Processing, Actionable Compression, and Data Skipping technologies, collectively called "Blink Technology" by IBM (the same technology underlying IBM BLU Acceleration). The Informix Advanced Enterprise and Advanced Workgroup Editions include IWA. Released: March 2011.
IBM Db2IBM1991ODBC, JDBC, C, C++, PythonProprietaryIBM BLU Acceleration
InfinityDBBoiler Bay Inc.2002Java, HTTP, ProprietaryJava extended standard ConcurrentNavigableMap NoSQL with caching, durability, transactions, compression.
KineticaKinetica (formerly GIS Federal)2014C++, C#, Java, JavaScript, Node.js. Python, HTTPProprietaryGPU-accelerated, in-memory, distributed database for analytics. Functions like a RDBMS (structured data) for fast analytics on datasets in the hundreds of GBs to tens of TBs range. Interact with SQL and REST API. Geospatial objects and functions. UDF framework allows for custom code and machine learning workloads to run in-database. Received $50mil Series A funding in June 2017.[5]
MemcachedDanga Interactive2003Proprietary text and binary protocols in any languageOpen Source (BSD)Hashtable with LRU purge
SingleStore (formerly MemSQL)SingleStore, Inc.ProprietarySQL relational
Microsoft COM+ IMDBMicrosoft CorporationProprietaryDefunct
Microsoft SQL ServerMicrosoft2012ProprietaryIn SQL Server 2014, a feature codenamed Hekaton, and named In Memory OLTP, provided limited memory optimization, which can be used in conjunction with natively compile stored procedures which are persisted as C.In SQL Server 2012, an in-memory technology called xVelocity column-store indexes targeted for data-warehouse workloads.
Mimer SQLMimer Information TechnologySQL, ODBC, JDBC, ADO.NET, Embedded SQL, C, C++, PythonProprietaryMimer SQL is a general purpose relational database server that can be configured to run fully in-memory. Mimer SQL has full ACID support, support for stored procedures and is the only database that has a full score on SQL compliance
MnesiaEricsson2014Open Source Erlang LicenseMnesia is a distributed, soft real-time database management system written in the Erlang programming language. It is distributed as part of the Open Telecom Platform.
MonetDBMonetDB Solutions, CWI2004SQL, ODBC, JDBC, C, C++, Java, Python, PHP, Node.js, Perl, Ruby, R, MALopen-source MonetDB License, based on MPL 2.0 as of version Jul2015.in-memory optimized column-oriented relational database management system (RDBMS) written in C with an SQL top-level interface and ODBC, JDBC drivers
MySQL NDB ClusterMySQL1997Dual license open source(GNU-GPLv2) and optional proprietaryHighly available distributed real-time in-memory NoSQL database. Often used with MySQL for SQL cross-shard parallel query processing.
OmniSciOmniSci (formerly MapD)2013Open Source (Apache License 2.0)GPU-accelerated, SQL database and visualization platform for real-time analytics. Product consists of the core database plus a BI visualization tool. Received $55mil Series C funding in Aug 2018.[6] v4.8 announced in August 2019 with support for JupyterLab.[7]
Oracle RDBMSOracle Corporation2014ProprietaryRDBMS Oracle 12c contains an option for in-memory technology (additional licenses required).
Oracle CoherenceOracle CorporationProprietary with developer downloadFor Java, relational, distributed
PerstMcObject2006Java, Android, .NET[Dual_license] open source(GNU-GPLv3) and optional proprietaryObject-oriented embedded database system for Java, Android and .NET platforms. No ORM. Schema evolution, XML export/import, replication, specialized indexes, including full text, b-tree, t-tree, r-tree, patricia trie, kd-tree and time series
PolyhedraENEA AB (previously Perihelion Software)1993Proprietary, with a free-to-use edition (Polyhedra Lite)Relational (SQL, ODBC, JDBC) in-memory database system originally developed for use in SCADA and embedded systems, but used in a variety of other applications including financial systems. Supports data durability via snapshots and journal logging, and high availability via a hot-standby. First released in 1993; version 8.7 released in March 2013. Polyhedra Lite appeared with a free-to-use license in 2012.
RedisRedis Labs2009C, C++, Python, Lua, C#, etc.[8] Redis Source Available License v2 (RSALv2) and the Server Side Public License v1 (SSPLv1)[9] Redis is a source-available software project that implements data structure servers. It is networked, in-memory, and stores keys with optional durability.
SafePeakSafePeak TechnologiesProprietaryAutomated In-Memory Dynamic Caching for SQL Server OLTP applications and databases. Code-free, Dynamic Caching, Relational
SAP HANASAP SE2012ProprietarySAP HANA, short for 'High Performance Analytic Appliance' is an in-memory, column-oriented, relational database management system written in C, C++
solidDBUnicom Global1992ProprietaryRelational with standard SQL support. ODBC and JDBC interfaces. Includes in-memory and on-disk tables in the same engine. Supports high availability.
SQL CEMicrosoft CorporationFreeCompact relational embedded database produced by Microsoft for applications that run on mobile devices and desktops. ADO.NET, OLE DB. No ODBC driver.
SQLiteSQLiteOpen Source (Public domain)SQL database that supports in-memory storage with the :memory: connection string.[10]
TarantoolMail.ru Group2010Open Source (BSD)In-memory database and application server (data grid)
TerminusDBTerminusDB (formerly DataChemist)2019JavaScript, Python, Prolog, Rust, JSON-LD
Open Source (Apache 2.0)Open source in-memory graph database designed for knowledge graph representation
TimesTennow Oracle Corporation1997Java, JDBC, ODBC, SQL, PLSQL, CProprietaryStandalone database or in-memory cache for Oracle Database
TPF (Transaction Processing Facility)IBM1979MarketedGeneralized extension of IBM Airlines reservation system. IBM's DB/DC system backed up the in-memory transaction processing computer.[11]
StarcounterStarcounter AB2014ProprietaryIn-memory database engine combined with an application server that melds the Virtual Machine and the Database Management System.
VoltDBVoltDB Inc.Open Source (GPL) / ProprietaryRelational; implements H-Store design
XeroundXeround Inc.Proprietary / Not for sale, service onlyCloud database, defunct as of 2014
CursusDBCursusDB2023JAVA, GO, C#, Python, Node.JSOpen Source (GPL)CursusDB is an in-memory document-oriented, real-time capable database management system that is open-source licensed under GPL.

References

[12]

Notes and References

  1. Web site: Data models & modeling · ArangoDB v3.4.2 Documentation. docs.arangodb.com. 2019-01-27.
  2. Web site: Client APIs Overview .
  3. Web site: Exasol documentation . docs.exasol.com.
  4. Web site: Chapter 1. Running and Using HyperSQL. hsqldb.org.
  5. Web site: Vij . Amit . 29 June 2017 . Kinetica Secures Series A Investment of $50 Million - Kinetica GPU Database . 9 May 2022 . Kinetica . en-US.
  6. Web site: Term Sheet — Thursday, October 4. 4 October 2018.
  7. Web site: Announcing OmniSci 4.8: Bridging the Analytics and Data Science Chasm. 15 Aug 2019.
  8. redis Client Interfaces
  9. Web site: Redis Licensing Overview . 2024-05-11 . Redis . en.
  10. Web site: In-Memory Databases. www.sqlite.org.
  11. Siwiec, J.E.: A High-Performance DB/DC System;IBM, G321-5051, 1978
  12. Web site: Stackshare Top In-Memory Databases .