First, they are not ORMs (since there is no relationship between them), they are ODM (Object Document Mapper)
The main use of these ODM frameworks is the same here as some common feature of ORM, thus
- provides an abstraction over your data model. You can use your data in your application regardless of the target software.
- Most ODMs use existing language features and use a familiar template to manage data instead to learn the new language syntax of new software.
When I use mongoid (Ruby ODM for mongo), I can query mongo how I do it in the active model (mostly).
Since they do not have a relationship between them, these ODMs provide a way to define relationships in your models and simulate relationships. All of them are distracted from the developer, so they can encode the same as with relational data.
source share