H2

H2 is an open-source, lightweight, and fast [[relational database management system]] written in [[Java]]. It's known for its small memory footprint, high performance, and ease of use. H2 can be used in embedded mode or run in its own server mode and supports a browser-based console application.

One of the key features of H2 is its ability to operate as an in-memory database, which means that data is stored in the main memory (RAM) rather than on disk. This leads to extremely fast data access and query performance.

H2 can be embedded within Java applications, meaning that no separate server process is needed. It can also run in a server mode, similar to traditional [[Client-Server Architecture|client-server]] database systems.

H2 is designed to be lightweight with a small footprint, making it an ideal choice for development, testing, and deployment in environments where resources are limited.

The database supports [[ACID]]-compliant transactions, ensuring data integrity and consistency. H2 provides a web-based console for database management, which is convenient for managing and querying the database directly from a web browser.

H2 can be accessed through the standard JDBC (Java Database Connectivity) API, making it compatible with a wide array of existing tools and frameworks.

Besides in-memory storage, H2 also supports traditional disk-based storage, providing flexibility in how data is stored and managed. Being written in Java, H2 is platform-independent and can run on any system where Java is available.