H2 Database Engine vs HSQLDB
H2 Database Engine
h2database.comHSQLDB
hsqldb.orgSide by side
| Figure | H2 Database Engine | HSQLDB |
|---|---|---|
| Price from | Free | $8.33/mo |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | Yes |
| Web | Yes | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 11 |
| Spec score · Embedded Databases | 8.1 (#9) | 9.2 (#2) |
| Spec score · Relational Databases | 8.0 (#15) | 9.1 (#2) |
| Spec score · Sql Databases | 8.1 (#11) | 9.2 (#1) |
| Spec score · Database Software | 7.7 (#59) | 8.9 (#13) |
| Founded | 2004 | 2001 |
| Free plan | Yes | Yes |
| License | H2 is dual licensed under MPL 2.0 or EPL 1.0, and the license page says it can be integrated into and distributed with commercial applications. | HSQLDB source and binaries use permissive BSD-based licenses, with separate terms for legacy Hypersonic SQL code. |
| Support | The home page directs users to Stack Overflow and a Google Group for support. | Support options include a help forum, a user mailing list, bug and feature request trackers, paid SupportWare, and professional commercial support. |
| Transactions | The feature list includes transaction support, multi version concurrency, and row level locking. | The engine supports lock-based and MVCC transaction models and is fully multithreaded. |
Plans
HSQLDB
- Developer subscription$100 a year
- Basic Corporate subscriptionPrice not published
- Premier Corporate subscription$2,500 a year
- HSQLDBFree
- HSQLDB softwareFree
- Developer SupportWare$100 a year
- SupportWare Developer subscription$100 a year
- Basic Corporate SupportWare$500 a year
- SupportWare Basic Corporate subscription$500 a year
- Premier Corporate SupportWare$2,500 a year
In their own words
H2 Database Engine
H2 Database Engine is a free SQL database written in Java. It runs in embedded, server or mixed modes, with databases held on disk or in memory. H2 supports standard SQL and JDBC; server mode also accepts JDBC or ODBC over TCP/IP. A browser-based Console provides autocomplete. Listed database capabilities include transactions, multi-version concurrency and row-level locking, with JSON data support and high availability listed. Compatibility modes cover IBM DB2, Apache Derby, HSQLDB, MS SQL Server, MySQL, Oracle and PostgreSQL. Database files can use AES-128 encryption, while remote JDBC connections can use TLS. H2 is available for Linux, macOS and Windows, as an API, and for self-hosted or web deployment. It is dual licensed under MPL 2.0 or EPL 1.0, allowing integration into and distribution with commercial applications. The JAR is described as around 2.5 MB. The plan costs nothing.
HSQLDB
HSQLDB is a Java-based relational database engine for embedded or server use, with both in-memory and disk-based tables. It supports SQL:2023 core features and many optional features, plus lock-based and MVCC transaction models; the engine is fully multithreaded. Listed capabilities include JSON constructor functions, CSV loading and unloading, temporal system-versioned tables, row-level access control, and log-based replica synchronization. It includes a command-line SQL tool and simple GUI query tools. The latest official release listed is version 2.7.4, compatible with JDK 8 and above, and packages include Java 11 module jars as well as Java 8 jars for HSQLDB and SQL Tool. HSQLDB is self-hosted, with high availability, read replicas, and JSON data support listed. Its default combined limit for CACHED tables is 8TB, extendable to 256TB with a connection property; each TEXT table is limited to 256GB, and memory tables depend on available memory. The software is free to use in commercial products when license terms are met; its licenses are based on the new BSD License. The HSQLDB plan is free. A Developer subscription is $100 a year; Premier Corporate is $2,500 a year at the base level. Support options include community channels and paid commercial support.