Tkrzw
The facts below are what the maker publishes about Tkrzw, checked and dated. Our editors have not written about it yet.
The facts
Each one read from Tkrzw's own pages, with the date it was checked.
What it does
- Build tools
- The README specifies GCC 7.3 or later, Clang, GNU make, and standard tools for Unix-like builds, and Visual Studio 2019 with C++ components for Windows builds.checked 8 Oct 2026
- Compression and encryption
- HashDBM documents record compression options ZLib, ZStd, LZ4, and LZMA, and cipher options RC4 and AES.checked 8 Oct 2026
- Concurrency
- The API documentation says all database classes are thread-safe for simultaneous access by multiple threads.checked 8 Oct 2026
- Core operations
- The shared database interface supports setting, retrieving, and removing records, and iterating through records.checked 8 Oct 2026
- Data structures
- It provides file based hash, B+ tree, and skip list databases, plus several in-memory database implementations.checked 8 Oct 2026
- Indexes
- Tkrzw includes file and in-memory secondary index implementations and adapters.checked 8 Oct 2026
- Indexes and adapters
- The library includes polymorphic and sharding database adapters, an asynchronous adapter, and file and in-memory secondary index implementations.checked 8 Oct 2026
- Java requirement
- The Java binding documentation requires JDK 9 or later and says to install Tkrzw beforehand.checked 8 Oct 2026
- Language bindings
- Official documentation pages provide interfaces for Python, Java, Ruby, and Go in addition to the C++ library.checked 8 Oct 2026
- License
- The project repository identifies the license as Apache-2.0.checked 8 Oct 2026
- Operational requirement
- Opened databases must be explicitly closed to avoid data corruption.checked 8 Oct 2026
- Operations
- The shared database interface supports setting, retrieving, and removing records, plus iterating through records.checked 8 Oct 2026
- Purpose
- Tkrzw is a C++ library that implements DBM for storing key-value records in files.checked 8 Oct 2026
- Python requirement
- The Python binding requires Python 3.6 or later and requires Tkrzw to be installed first.checked 8 Oct 2026
- Record protection options
- HashDBM supports configurable record CRC checks and lists AES and RC4 cipher modes among its record compression options.checked 8 Oct 2026
- Remote access
- The separate Tkrzw-RPC project provides a server and gRPC library so multiple processes can access databases managed by the server.checked 8 Oct 2026
- Storage types
- It provides file-backed hash, B+ tree, and skip-list databases, as well as in-memory hash, B+ tree, cache, and standard-container databases.checked 8 Oct 2026
- Support model
- The repository provides contribution instructions and sample code, while the opened project pages do not state a commercial support offering.checked 8 Oct 2026
Where it runs
- Platforms
- The project README says Tkrzw is available on UNIX-like systems including Linux, Mac OS, FreeBSD, and Solaris, and on Windows.checked 8 Oct 2026
Alternatives to Tkrzw
- 1

Chroma
Free planOpen sourceAndroidiOSWebAPI8.7From $250 a month - 2

SQLite
Free planOpen sourceAndroidiOSWebAPI8.6Free plan - 3

HSQLDB
Free planOpen sourceAPILinuxmacOSSelf-hosted8.1From $100 a year - 4

RxDB
Free planAndroidiOSWebAPI7.5From $99 a month - 5
LadybugDB
Free planAndroidiOSWebAPI7.4Free plan - 6
RocksDB
Free planiOSAPILinuxmacOS7.0Free plan
