Embedded Databases

Apache Derby

Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0. Some key advantages include: a small footprint -- about 3.5 megabytes for the base engine and embedded JDBC driver; based on the Java, JDBC, and SQL standards; provides an embedded JDBC driver that lets you embed Derby in any Java-based solution; Derby also supports the more familiar client/server mode with the Derby Network Client JDBC driver and Derby Network Server. Derby is easy to install, deploy, and use. http://db.apache.org/derby/

Couchbase Lite


H2 Database Engine

The main features of H2 are: Very fast, open source, JDBC API; Embedded and server modes; in-memory databases; Browser based Console application; Small footprint: around 1.5 MB jar file size http://www.h2database.com


HSQLDB is a relational database engine written in Java, with a JDBC driver, conforming to ANSI SQL:2016. A small, fast, multithreaded engine and server with memory and disk tables, LOBs, transaction isolation, multiversion concurrency and ACID. http://hsqldb.org/


A Fast Key-Value Storage Engine Based on Hierarchical B+-Tree Trie https://github.com/couchbase/forestdb


LiteDB - A .NET NoSQL Document Store in a single data file. It is an open source MongoDB-like database with zero configuration - mobile ready. Delivered in a single DLL (less than 350kb) fully written in .NET C# managed code (compatible with .NET 3.5, 4.x, NETStandard 1.3 and 2.0). Install via NuGet or just copy DLL to your bin project folder. Ideal for: Mobile Apps; Desktop/local small applications; Application file format; Small web applications; One database per account/user data store. Portable UWP and Xamarin iOS/Android; ACID transaction; Single datafile (like SQLite); Recovery data in writing failure (journal mode); Map your POCO class to BsonDocument; Fluent API for custom mapping; Cross collections references (DbRef); Store files and stream data (like GridFS in MongoDB); LINQ support; FREE for everyone - including commercial use http://www.litedb.org/ https://github.com/mbdavid/litedb

Ream DB

Realm Database is a fast, easy to use, and open source alternative to SQLite and Core Data. It is an object database. https://realm.io/products/realm-database


SnappyDB is a key-value database for Android it's an alternative for SQLite if you want to use a NoSQL approach. It allows you to store and get primitive types, but also a Serializable object or array in a type-safe way. SnappyDB can outperform SQLite in read/write operations. http://www.snappydb.com/


SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. It is built into all mobile phones and most computers and comes bundled inside countless other applications that people use every day. https://www.sqlite.org/index.html


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. https://unqlite.org/