Ease of Use
The hamsterdb API is simple and self-documenting. Extensive documentation,
FAQ and a tutorial are provided. The interface is similar to other
widely-used database engines. APIs for Java, Python, .NET (i.e. C#, VB.NET)
and Erlang are also available.
Fast algorithms and data structures guarantee high performance for all
scenarios. The implementation of these algorithms minimizes disk access and
operating system calls (i.e. memory allocations). Data structures try to
take advantage of modern CPU caches. Memory mapped file operations are
preferred to the slower read/write I/O.
Mature and Production Proof
hamsterdb has a mature code base which is in development since 2004. More
than 1800 unittests and 45000 acceptance tests verify high quality.
Applications using hamsterdb are deployed on tens of millions of
desktops, but also on cloud instances, cell phones and other
Written in standard C/C++, hamsterdb runs or has been reported to run on
many architectures: Intel-compatible (x86, x64), PowerPC, SPARC, ARM,
RISC and others. The file format is endian-independent.
hamsterdb is slim and lightweight and still offers all the features that
you would expect from an embedded database, including transactions,
recovery, cursors, in-memory databases, duplicate keys, auto-incrementing
keys ("Record numbers"), remote databases with an embeddable
http-based server (or a standalone http daemon) and many other features.
hamsterdb licensing follows the "quid pro quo" rule. hamsterdb is released
under two licenses: the Open Source GPL license and a proprietary,
commercial closed-source alternative. Exceptions for other open source
licenses (i.e. Apache, BSD, Zlib) are also available.