Embeddable in-memory database are typically used in devices such as set top boxes, telecoms equipment and PC based applications. SQLite is the most widely used free product, and Microsoft SQL Server Compact is also free and often used in Windows applications.
McObject’s eXtremeDB in-Memory Database System embedded database is its core product: a fast database management system, designed for performance, with a strict memory-based architecture and direct data manipulation. Storing and manipulating data in exactly the form used by the application removes overheads associated with caching and translation. Typical read and write accesses are at the level of a few microseconds, or less. The engine is reentrant, allowing for multiple execution threads, with transactions supporting the ACID properties, assuring transaction and data integrity. It comes in several flavours including:
eXtremeDB In-Memory Database System – for real-time applications with small footprint. Ideal for embedding in to equipment such as set top boxes, telecom equipment etc.
H2 is an in-memory Java SQL database with a fast JDBC API and small footprint. It operates in embedded and server modes with clustering support. Other features include disk or in-memory databases, 2-phase-commit, cost based optimisation, and strong encryption.
SolidDB is an in-memory database that supports ACID transactions, ANSI SQL, stored procedures and triggers. It allows both in-memory and disk based tables in the same database instance. It can be enbedded inside packaged solutions and requires no administration, separate installation or configuration.
Microsoft SQL Server Compact 4.0 is a free, embedded database that software developers can use for building ASP.NET websites and Windows desktop applications. SQL Server Compact 4.0 has a small footprint and supports private deployment of its binaries within the application folder, easy application development in Visual Studio and WebMatrix, and seamless migration of schema and data to SQL Server.
SQLite is an in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The code for SQLite is in the public domain and is thus free for use for any purpose, commercial or private. SQLite is the most widely deployed database in the world. It has an optional in-memory mode of operation.
UnQLite is a in-process software library which implements a self-contained, serverless, zero-configuration, transactional NoSQL database engine. UnQLite is a document store database similar to MongoDB, Redis, CouchDB etc. as well a standard Key/Value store similar to BerkeleyDB, LevelDB, etc.
UnQLite is an embedded NoSQL (Key/Value store and Document-store) database engine. Unlike most other NoSQL databases, UnQLite does not have a separate server process. UnQLite reads and writes directly to ordinary disk files. A complete database with multiple collections, is contained in a single disk file. The database file format is cross-platform, you can freely copy a database between 32-bit and 64-bit systems or between big-endian and little-endian architectures. It operates as a disk based or in-memory database.