支持部分对象更新的 Java 嵌入式数据库

Posted

技术标签:

【中文标题】支持部分对象更新的 Java 嵌入式数据库【英文标题】:Embedded database for Java supporting partial object updates 【发布时间】:2014-03-09 19:17:39 【问题描述】:

我需要一个用于商业 Java 应用程序的免费嵌入式数据库。它应该支持按二级索引、运算符 AND/OR、结果排序和范围查询进行搜索。我预计会有大量的并发读取和写入,后者通常是对象属性的一小部分(或 SQL 中的行列)上的多个对象更新。

我已经探索过 Hazelcast 和 CQEngine,但它们似乎不支持这样的部分更新,即如果我需要更新 1000 个对象的单个属性,它将重建所有 1000 个对象的所有索引,而不是更新索引仅适用于更改后的属性。

我还可以探索一些关系数据库,如 H2 和 SQLite,但问题是每个表的列集(对象的属性)是动态的,即可以在运行时动态更改。每当我需要添加/删除列时,这将导致更改架构并重建整个表和索引。

对满足我需求的嵌入式数据库或查询引擎有什么建议吗?

【问题讨论】:

【参考方案1】:

我正在开发一个 NoSQL 数据库;它被称为 jsndb (http://sourceforge.net/projects/jsdbase/)。它处于阿尔法阶段。试试看吧。

【讨论】:

以上是关于支持部分对象更新的 Java 嵌入式数据库的主要内容,如果未能解决你的问题,请参考以下文章

嵌入式Linux开发实践专栏目录

嵌入式Linux开发实践专栏目录

java简单概述

嵌入式 SQL Firebird 使用 Java SE 批量更新 OutOfMemoryError

COM和OLE有什么区别?

第1章Java入门体验