Миграция Spring-проекта на основе ORM (Hibernate / JPA) в noSQL (MongoDB / Cassandra / CauchDB) - PullRequest
2 голосов
/ 08 февраля 2012

Я довольно новичок в мире noSQL, и хотя я понимаю преимущества производительности и «облачного» дружелюбия, кажется, что мир RDBMS намного проще и стандартнее и ограничен меньшим количеством игроков

Я работал с SQL Server, Oracle, DB2, Sybase, Terradata, MySQL и другими, и, похоже, у них общего гораздо больше (с точки зрения языка запросов, индексирования, ACID и т. Д.), Чем у семейства noSQL.

Мой вопрос в основном такой

  1. Является ли вообще приемлемой концепцией перемещение существующего приложения Spring / Java EE + JPA в хранилище noSQL? или это потребует полной реорганизации системы за пределы хранилища?
  2. Надеемся, что это правильная цель, есть ли какие-либо пути миграции, которые были рассмотрены в качестве передового опыта?
  3. Существует ли в «noSQL» эквивалент понятия, сравнимого с ORM для СУБД? например любой слой, отделяющий реализацию хранилища от концепции (я знаю, что GAE BigTable поддерживает JDO и JPA, но только частично, есть ли более новый JSR для более дружественного по отношению к NoSQL JPA?)
  4. Есть ли попытки стандартизировать "noSQL" так же, как в СУБД (язык запросов, API)
  5. Является ли "noSQL" слишком широким термином? Должен ли я изменить вопрос для каждой реализации (KV / Document)

Ответы [ 4 ]

3 голосов
/ 10 мая 2012

Попробуйте Kundera: https://github.com/impetus-opensource/Kundera. это решение с открытым исходным кодом, совместимое с JPA2.0. Вы также можете присоединиться к http://groups.google.com/group/kundera-discuss/subscribe для дальнейшего обсуждения.

-Vivek

1 голос
/ 28 октября 2012

PlayOrm - это еще одно решение с Scalable-SQL, похожее на JPA, но отличающееся от JPA тем, что поддерживает шаблоны noSQL, которые JPA не может поддерживать.

1 голос
/ 10 мая 2012

EclipseLink 2.4 поддерживает JPA с MongoDB и другими источниками данных NoSQL.

http://java -persistence-performance.blogspot.com / 2012/04 / EclipseLink-JPA-опоры-mongodb.html

1 голос
/ 08 февраля 2012

DataNucleus обеспечивает сохранение JPA для RDBMS, MongoDB, HBase и других. Это один из способов решения проблемы, который дает вам отправную точку для использования вашего приложения с другими хранилищами данных. Оттуда вы можете изменить иерархию классов, чтобы обойти некоторые проблемы, которые приносят эти другие хранилища данных. Использование JPA с другими хранилищами данных не является частью какого-либо JSR и никогда не будет, поскольку JPA разработан исключительно для СУБД. JDO, с другой стороны, уже является стандартом для всех хранилищ данных, так как он был разработан (также поддерживается DataNucleus)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...