没有任何数据库的Infinispan持久性?

时间:2013-02-25 08:50:00

标签: database datagrid jboss datastore infinispan

作为Infinispan的新手,我正在探索为两者提供Infinispan 5.1.5的选择 分布式缓存以及数据存储。

所以,我们的想法是不要有一个单独的数据存储区域。数据库,而是仅使用“Infinispan Cache Stores”将应用程序数据保存到磁盘文件中。

应用程序数据应包括但不限于事件,流程等的历史数据。

我是否只能使用Infinispan进行数据持久化而没有数据库?是否有任何限制。 Infinispan上的数据量,检索,排序等?

任何输入都会有很大的帮助吗?

1 个答案:

答案 0 :(得分:4)

您可以这样做,但要准备好管理序列化格式的更改。如果您自己的类定义发生了变化(假设您存储了Java对象),您必须定义知道如何处理类更改的自定义*外部化程序*,或者您必须在升级后转储数据并将其还原。此外,如果您需要升级Infinispan本身,您可能需要将数据转储并恢复或查看rolling upgrades,目前需要Hot Rod客户端并至少使用5.2版本。

它可以通过 Infinispan Query 进行排序,但请记住,您没有加入或类似的操作:对某些问题很有效,但并不适用于所有问题。此外, Infinispan Query 使查询方面非常强大,但在更新索引的写入操作上会降低性能:如果您可以重新考虑模型以仅使用put / get操作,那么它的工作速度会更快。 / p>

你可以看一下Hibernate OGM来映射Infinispan中的结构化实体,包括关系,只使用put / get操作。这应该是最实用的界面,因为它使用着名的JPA映射,并且可以通过Hibernate Search使用查询(虽然与Infinispan Query的限制非常相似,因为它们使用相同的索引技术基于Lucene)。