Krati – A persistent high-performance data store
From the website:
Krati is a simple persistent data store with very low latency and high throughput. It is designed for easy integration with read-write-intensive applications with little effort in tuning configuration, performance and JVM garbage collection….
Simply put, Krati
- supports varying-length data array
- supports key-value data store access
- performss append-only writes in batches
- has write-ahead redo logs and periodic checkpointing
- has automatic data compaction (i.e. garbage collection)
- is memory-resident (or OS page cache resident) yet persistent
- allows single-writer and multiple readers
Or you can think of Krati as
- Berkeley DB JE backed by hash-based indexing rather than B-tree
- A hashtable with disk persistency at the granularity of update batch
If you use Krati as part of a topic map application please share your experience.