H2 vs HSQLDB vs Derby | 报告应用程序的内存 RDBMS

use*_*332 6 derby h2 hsqldb in-memory-database

我正在设计一个用于动态报告的数据 REST API。基本上,您将数据传递给它(以及操作数据的函数),它会返回一个 HTML,其中包含应用于数据的函数。通常,这些功能是过滤、分组、聚合、排序(常规 RDBMS 提供的功能)。我正在考虑为此使用内存数据库。通过这样做,我将简单地利用 DB 提供的功能,而不必自己实现。

但是,这需要服务加载数据(可能是批量加载),然后运行动态构造的一系列查询 - 作为每个服务调用的一部分。

要加载到数据库中的数据(输入)最多可以有 100K 行。当然不是百万!

但是服务可以被不同的线程访问(每个线程都会将它们的数据集加载到数据库中并并发读取)。当然,jdbc 连接将被合并,表将在每个事务结束时被截断。

我在问自己,我是否过火并试图利用内存数据库?我自己(并且经常听到)关于内存数据库(尤其是 H2 和 HSQL)仅在集成测试的上下文中使用过它。

很想听听你的意见。