I have a tutorial available to understand how one can use Berkeley DB to store data with multiple fields [1]. If you are only interested in understanding how to do look up by one or more of them, please skip to slide 51.

If this doesn't help, I can write up another explanation for the issues that are outstanding.

Hope this helps.

Nikunj
http://o-micron.blogspot.com

[1] 
http://www.oracle.com/technology/products/berkeley-db/tutorial-berkeleydb-ds.html

On Jun 26, 2009, at 1:13 PM, Maciej Stachowiak wrote:



It's also not clear to me if a BDB-level API is sufficient for developer needs. As I understand it, it's basically a giant dictionary with unstructured keys and values. So it's not providing much over LocalStorage, except for prefix matching and the ability to hold large amounts of records or records that are individually large. There's no way to efficiently query by one of several fields, as I understand it.

I trust that you are relatively new to storing data with B-trees. They are at the heart of Oracle's indices so efficiency is out of question. If you are wondering how can people store complex data items with multiple fields and repeating values, look at Berkeley DB Java Edition, which supports the EJB 3 persistence model [5]. FYI, there is no significant difference between the APIs of BDB Java Edition and the original BDB. They also have identical licensing requirements.

Your references do not appear to explain on a technical level how one stores data with multiple fields in a way that you can query efficiently by more than one of them. I would appreciate a brief explanation.


Reply via email to