H2 is an SQL database engine written in Java. It is very fast and small (about 1 MB), and supports embedded, server, and clustering modes. A browser based console application is included. Disk based and in-memory tables and databases are supported.
Some of its features are transactions isolation, multi-version concurrency (MVCC), table level locking, encrypted databases, fulltext search, and strong security.
The main API is JDBC, however ODBC and others are also supported via PostgreSQL network protocol compatibility.