Hamsterdb for Windows 10 - Full description
Hamsterdb, now known as upscaledb, is an embedded key/value database engine for developers building data storage into their applications. Rather than running as a separate database server, its library is linked directly into an application. The engine is written in C and C++, with interfaces for environments including .NET, Java, Erlang, Elixir and Python, making it suitable for projects across several programming languages.
The database stores sorted key/value records either in a single file or in memory. Each database uses a B-Tree index, which keeps keys ordered and supports lookups, inserts, updates and scans. This structure is useful when an application needs to retrieve individual records as well as iterate through an ordered range of data. Multiple databases can be kept in one file, allowing an application to organize related data without managing a separate server process.
B-Tree settings can be tailored to the kinds of keys and values an application stores, such as strings or integers. Choosing data types for a database lets the engine optimize its structure for that data. The configured B-Tree can also perform calculations such as sums, averages and counts directly on stored records, avoiding the need to copy every key/value pair into application code just to calculate a result. These capabilities can help with both operational data access and simple analytical tasks.
The engine includes ACID transactions to help applications manage changes consistently, along with transparent encryption and compression. These features are part of the embedded database workflow: developers can keep storage, record access and transaction handling within their application, while choosing file-based or in-memory storage for the task. It can be used in software that needs a compact local data store, ordered records, or fast scans without the overhead of a standalone database service.
Hamsterdb is open-source software developed by Christoph Rupp. It is a library for software developers rather than a general-purpose desktop database interface, so using it typically involves integrating the engine through a supported programming environment. Windows releases are listed for systems through Windows 10; Windows 11 compatibility is not established here.