2011-11-30 106 views
1

我正在搜索一个嵌入式本地Java数据库(我无法使用一个进程外数据库),它可以处理大型blob对象(最高达几GB)。我试过了H2,但是在删除大块的时候这很慢。当然,这是因为它必须维护/重建单个数据库文件。插入,删除(快速)blob嵌入式java数据库

是否有任何数据库能够快速插入和删除blob?

+2

其他选项的开发商之一是Apache Derby和HSQLDB。你尝试过吗? –

+2

Blob应该从不**存储在任何类型的数据库中,只需将其存储在文件系统中即可。 –

+0

我还没有尝试任何其他。 我有一个不使用文件系统的原因。 – Stig

回答

0

您可以尝试JavaDB,它基本上是Apache Derby数据库。自从版本6起,我认为它自带了Java。 CLOB和BLOB仅限于2 GB,不知道这是否适合您。

0

如果H2不起作用,那么你可以尝试DerbySQLite,但不能保证它们的性能会更好。我认为你应该考虑重新设计你的项目。以这种方式存储大块对象效率非常低。

我会考虑使用一些其他机制来保存文件并在数据库中存储文件的路径或标识。你提到你有理由不使用文件系统。如果你编辑你的问题来解释你完全使用数据库的理由,那么我/我们可以回应更好的建议替代方案。

0

是否需要成为纯Java数据库,还是使用本机库的数据库/ JDBC驱动程序也是允许的?如果是这样,你可以看看Firebird EmbeddedJaybird

免责声明:我是Jaybird