【发布时间】:2012-11-20 06:08:25
【问题描述】:
我正在开发一个 Java 应用程序,该应用程序在不同的 PostgreSQL 服务器中需要 horizontal partitioning of data。我想使用 JPA 框架和 Spring 进行事务管理。
最流行的使用 JPA 分片数据的框架似乎是 Hibernate Shards,它似乎不再处于开发阶段,以及 OpenJPA Slice,它不支持虚拟分片(我的要求之一)。有没有我遗漏的其他选项,或者有办法绕过 OpenJPA 限制?
提前感谢您的意见!
【问题讨论】:
-
能否详细说明“虚拟碎片”?
-
嗨欧宾。基本上,虚拟(或逻辑)分片是不驻留在单独服务器中的分片,而是位于具有某种边界的同一服务器上,例如在单独的架构中。
-
Hibernate 的带分区的多租户不支持您的用例吗?
-
@dinukadev - 我刚刚遇到了 Hibernate 多租户,我正在调查它。另一种可能的解决方案是使用 OpenJPA Slice,并为每个模式使用不同的用户,并使用不同的默认搜索路径。
-
你怎么知道它不支持虚拟分片?看起来每个切片都是由可以指向同一台机器的 jdbc 连接属性定义的。
标签: java hibernate jpa openjpa sharding