Skip to content
SPECIFICTION
Get listed

H2 Database Engine vs RocksDB

H2 Database Engine

h2database.com

RocksDB

rocksdb.org

Side by side

FigureH2 Database EngineRocksDB
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WebYes—
WindowsYesYes
macOSYesYes
LinuxYesYes
iOS—Yes
APIYesYes
Self-hostedYesYes
Plans published11
Spec score · Embedded Databases8.1 (#9)8.0 (#11)
SupportThe home page directs users to Stack Overflow and a Google Group for support.The project directs users to its Google Group or Facebook Group for general questions and reserves GitHub issues for bug reports.

Plans

H2 Database Engine

  • H2 Database EngineFree

H2 Database Engine pricing →

RocksDB

  • RocksDBFree

RocksDB pricing →

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.

Visit h2database.com

RocksDB

RocksDB is an embeddable, persistent key-value store for applications that need fast storage. It stores keys and values as arbitrary byte arrays, with ordering determined by a comparator chosen by the user. Its log-structured merge design allows configuration of tradeoffs among write, read, and space amplification, and the project describes it as optimized for low-latency storage on flash drives and high-speed disks. The C++ library supports opening and closing databases, reads and writes, merging, and compaction filters. Described uses include database storage engines, application data caches, and embedded workloads. Multi-threaded compactions support databases holding multiple terabytes; the project describes an audience of application servers storing up to a few terabytes on local or remote systems. RocksDB also has a Java wrapper, RocksJava, with artifacts published through Maven. It is free and open source under either GPLv2 or Apache 2.0, at the user's choice. Building requires GCC 11 or later or Clang 10 or later for C++20 support; values must be smaller than 4 GB.

Visit rocksdb.org