PersistIT: A fast, transactional, Java B+Tree library
From the webpage:
Akiban PersistIT is a key/value data storage library written in Java™. Key features include:
- Support for highly concurrent transaction processing with multi-version concurrency control
- Optimized serialization and deserialization mechanism for Java primitives and objects
- Multi-segment keys to enable a natural logical key hierarchy
- Support for long records
- Implementation of a persistent SortedMap
- Extensive management capability including command-line and GUI tools
For more information
- See the javadoc
- See the user guide
- Report issues here
- Questions? Ask on the @akiban mailing list
- Want real-time interaction? Hop on #akiban on irc.freenode.net
I mention this primarily because of the multi-segment keys, which I suspect could be useful for type hierarchies.
Possibly other uses as well but that is the first one that came to mind.