Kasper Nielsen wrote:
Kasper Nielsen wrote:
Hi,
I'm evaluating Derby for a project of mine. I really would like to
avoid using SQL and just use Derby as a binary store. Is this possible?
My data consists of key -> value pairs where the keys are uniformly
distributed 160 bit numbers and the values are byte arrays.
For now, I need to support 2 basic queries
* Give me the value mapping for the key K or null if it doesn't exist.
* Give me a map of (key->value) for the key range of key_start to
key_end.
I had a look at the org.apache.derby.iap.store packages but wasn't
quite sure where to start.
Cheers
Kasper
Thanks for all the suggestions. I think I'll go ahead and create some
test cases and find out whatever overhead (space/performance) is involved.
For those interested,
http://en.wikipedia.org/wiki/Distributed_hash_table pretty much
describes the usage. Because you a providing a general platform you want
to limit the storage functionality to simple put/get (key->value)
operations. Which is why I don't really need any advanced features. To
build more more advanced functionally (indexing, redundancy, ...) any
user must build on top of these put/get primitives.
Hi Kasper,
Just as a side note, I once implemented a simple DHT using the Chord
algorithm and Berkeley DB Java Edition. But this was some time ago and
before Oracle acquired BDB.
It was a fun exercise :) Please let us hear if Derby meets the
performance requirements for your DHT, or if there is too much overhead.
regards,
--
Kristian
Some applications might primarily be providing storage to users. So not
much work for any of the nodes except routing and storing. Which is why
I'm interested in a low overhead storage mechanism without to much cruft.
- Kasper