简体   繁体   中英

Embedded database for Java supporting partial object updates

I need a free embeddable database for use in a commercial java application. It should support search by secondary indexes, operators AND/OR, results ordering and range queries. I expect high amounts of concurrent reads and writes, where the latter are usually multiple object updates on a small subset of the object's properties (or row columns in SQL).

I have explored Hazelcast and CQEngine, but they don't seem to support such partial updates, ie if I need to update a single property of 1000 objects it will rebuild ALL indexes on all the 1000 objects, instead of updating the index for the changed property only.

I could also explore some relational databases like H2 and SQLite, but the problem there is that the set of columns per table (object's properties) is dynamic, ie can change dynamically at runtime. This would lead to altering the schema and rebuilding the whole table and indexes whenever I need to add/remove columns.

Any suggestions for an embedded db or query engine that meets my needs?

I'm developing a NoSQL database; it's called jsndb ( http://sourceforge.net/projects/jsdbase/ ). It's in alpha stage. Give it a try.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM