ORM избыточен с NoSQL API?

Я использовал jruby, в моем случае я создал в config / initializers

postgres_driver.rb

$CLASSPATH << '~/.rbenv/versions/jruby-1.7.17/lib/ruby/gems/shared/gems/jdbc-postgres-9.4.1200/lib/postgresql-9.4-1200.jdbc4.jar'

или везде, где ваш драйвер, и все!

30
задан Community 22 September 2017 в 18:01
поделиться

3 ответа

Ну да, сопоставители объектов- реляционных избыточны с MongoDB, потому что MongoDB не является реляционной базой данных , это база данных, ориентированная на документы.

Итак, вместо SQL вы пишете запросы в JSON. Если вы действительно, действительно не хотите писать необработанный JSON, а не, скажем, Linq, тогда вы все равно захотите использовать картограф. И если вы не хотите создавать связь с самим MongoDB, тогда вы не хотите передавать фактические объекты Document , вы хотите сопоставить их с реальными POCO.

Отображение намного проще с документно-ориентированной БД, такой как MongoDB, потому что у вас есть вложенные документы вместо отношений, но это не означает, что оно полностью исчезнет. Это просто означает, что вы заменили один тип «несоответствия импеданса» другим, чуть менее драматическим несоответствием.

22
ответ дан 27 November 2019 в 22:47
поделиться

Все, что вам действительно нужно, - это сериализатор / десериализатор, чтобы это работало.

Норм отлично справился с этим. Упрощает получение прямых объектов poco и их сохранение в mongo с помощью одной строчки кода.

Они называют Norm ORM, но на самом деле это просто оболочка poco to dictionary mongo.

Орм - это просто дополнительная церемония для этих операций. Если ваши операции с данными абстрагируются в репозиторий, это не будет проблемой в любом случае, потому что преобразование в другое резервное хранилище - это объект на объект, основа.

0
ответ дан 27 November 2019 в 22:47
поделиться

Я думаю, что ORM на MongoDb может быть полезен не только для «сериализации» и «десериализации» объектов в базу данных (Norm кажется, отлично справляется), но также упрощает выполнение запросов агрегирования.

Хорошо, если ORM может генерировать задания MapReduce для группировки и обнаружения дубликатов. Некоторые люди написали код для автоматического преобразования оператора sql в задание mapreduce: http://rickosborne.org/blog/index.php/2010/02/19/yes-virginia-thats-automated-sql-to -mongodb-mapreduce /

2
ответ дан 27 November 2019 в 22:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: