I am looking for an embeddable library for doing atomic file I/O from java. I need the library to support the following features.
A simple binary page format (needs to be readable by C++)
It does not need to be that fast (or concurrent), just simple and reliable.
Has anyone used something in the past which fits the bill?
Things I have looked into
I found the internals for the kaha db project to be useful, but development seems to have switched to a fusesoure project called hawtdb. Hawt currently seems to rely memory mapped I/O which sounds good at first, but limits the size of the page file you can access to 2GB unless you go to a 64bit JVM + OS (due to JVM address space limitations).
Some alternatives I am considering are the Cassandra project, but I don't know if its embeddable. I've looked into derby (which created lots of files when run) and H2 (which seemed promising, but I didn't look too deeply). These seemed to have relatively complex page file formats and seem to provide far more than I need. MySQL did provide docs for the page file format, but it too was a bit complex.
HOWL
HOWL is a logger implementation providing features required by the ObjectWeb JOTM project, with a public API that is generally usable by any Transaction Manager. HOWL uses unformatted binary logs to maximize performance and specifies a journalization API with methods necessary to support JOTM recovery operations.
HOWL is intended to be used for logging of temporary data such as XA transaction events
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With