Po pierwsze, nie są ORM (ponieważ nie mają między sobą żadnych relacji), są ODM (Mapowanie dokumentów obiektów)
Główne zastosowanie tych frameworków ODM jest tutaj takie samo jak niektóre wspólne cechy ORM, stąd
- zapewnienie abstrakcji w modelu danych. możesz modelować swoje dane w swojej aplikacji niezależnie od oprogramowania docelowego.
- Większość kompilacji ODM wykorzystuje istniejące funkcje języka i używa znanego wzorca do manipulowania danymi zamiast uczyć się nowej składni języka nowego oprogramowania.
Kiedy używam mongoid (Ruby ODM dla mongo), mogę wysyłać zapytania do mongo tak, jak robię to w aktywnym modelu (głównie).
Ponieważ nie mają między sobą relacji, te ODM zapewniają sposób definiowania relacji w modelach i symulowania relacji. Wszystkie są oderwane od programisty, dzięki czemu mogą kodować w ten sam sposób, w jaki robią to z danymi relacyjnymi.