3

我打算使用 HSQL 有一个 inmemeory 数据存储(只有内存/没有磁盘备份)。然后我将每隔 x 分钟(例如 15 分钟)定期备份 HSQL,这样我可以在盒子出现故障时恢复数据原因。

几个疑问:

1)Is HSQL good for storing large amount of data . (Eg 15 GB)
2)Will search be good ? I guess yes since it is inmemory
3)Any other concerns?
4)Have you used HSQL for such purpose?
5)Any other open source which supports SQL like queries. I know memsql but its not open sourced
4

2 回答 2

2

是的。我使用 HSQL DB 作为内存数据库。我运行一个具有 20 GB 堆和 HSQL DB 的独立 Java 应用程序。我没有遇到任何问题。应用程序每天处理近 100 万条记录,拥有约 12GB 的数据。

我没有看到 HSQL DB 的主要问题。但是,并发访问和锁定是必须妥善处理的事情。

有许多开源的内存数据库。

德比(Java 数据库)、H2、HSQL 数据库。

还可以使用 MySQL、PostGRESQL、Oracle Coherence(最近发布)

于 2013-09-24T16:18:07.457 回答
2

是一篇不错的文章,可能会帮助您做出决定。

我的想法:两年前我在内存模式下大量使用了 HSQLDB,但数据量不是很大(2-3 GB),而且性能足够好。但是,据说它不是生产使用的最佳解决方案。

HSQLDB 不支持全文搜索 - 使用 H2。根据它们的比较,H2 还内置了对集群和复制的支持。

如果您的应用程序中不需要 ACID,并且觉得键值存储就足够了——我当然推荐使用 Redis。它旨在在内存数据上表现良好,当然可以处理数百万行。

于 2013-09-25T06:03:16.817 回答