Slice is a plug-in extension for OpenJPA to work with horizontally-partitioned, distributed databases. The plug-in is now available at http://people.apache.org/~ppoddar/slice/site/
The salient features are: 1. No code change is required for the user domain model or the application to upgrade from a single database to a set of distributed databases, or slice as we call them. 2. Each slice can be configured in META-INF/persistence.xml with its own URL, database driver or other connection parameters. 3. The query and flush operations are executed in parallel across multiple databases. 4. A user-defined Distribution Policy determines which slice will persist a new instance. For existing instances, Slice remembers the original database slice and hence commits any update to the appropriate database. 5. No relationship is supported across databases. For example, if Person P1 has Address A1, then both P1 and A1 must reside in the same database slice. While Person P2 and its related Address A2 can reside in a different slice. In O-R mapping terms, the closure of any object graph must be collocated in the same database slice. This is referred as collocation constraint. 6. The good news is, DistributionPolicy only require to determine the slice for the 'root' instance i.e. the instance which is the given argument to persist() call. All other instances reachable from a root instance are automatically assigned to the same slice by the implementation. -- View this message in context: http://www.nabble.com/Slice%3A-extension-of-OpenJPA-for-distributed-databases-tp14516694p14516694.html Sent from the OpenJPA Users mailing list archive at Nabble.com.
