2012-12-02 29 views
10

Pracuję nad aplikacją Java, która wymaga horizontal partitioning of data na różnych serwerach PostgreSQL. Chciałbym wykorzystać ramy JPA i Spring do zarządzania transakcjami.Sharding bazy danych i JPA

Najpopularniejsze ram dla danych sharding z JPA wydają się być Hibernate Shards, który wydaje się nie być już w rozwoju i OpenJPASlice, która nie obsługuje wirtualne odłamki (jeden z moich wymagań). Czy są jakieś inne opcje, których mi brakuje, lub sposób na obejście ograniczeń OpenJPA?

Z góry dziękuję za wejście!

+0

Czy mogę podać szczegóły "wirtualnych odłamków"? – Aubin

+0

Cześć Aubin. Zasadniczo odłamek wirtualny (lub logiczny) jest fragmentem, który nie znajduje się na oddzielnym serwerze, ale na tym samym serwerze z pewną granicą, na przykład w osobnym schemacie. –

+0

Czy usługa dzierżawy Hibernate z obsługą partycjonowania nie obsługuje Twojego przypadku użycia? – dinukadev

Odpowiedz

1

Czy obejrzałeś EclipseLink? Obsługuje JPA2 i poziomy sharding.

documentation mówi, że obsługuje sharding na wiele instancji bazy danych

1

Można spojrzeć na Sharding-JDBC, to jest sterownik JDBC dla baz danych i tabel Shard, mogą adapter do jakichkolwiek ram ORM.