Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
DataMapper
Ruby library

DataMapper is an object-relational mapper library written in Ruby that follows the active record pattern even though the name implies it follows the data mapper pattern. While DataMapper 1 may not have achieved total decoupling between object and database suggested by the data mapper pattern, it appears DataMapper 2 intended to change this (a la Virtus, a library adapted from DataMapper). The DataMapper 2 project was renamed before launch and was released as Ruby Object Mapper (ROM) in August 2013.

Some features of DataMapper:

  • Eager loading of child associations to avoid (N+1) queries
  • Lazy loading of select properties, e.g., larger fields
  • Query chaining, and not evaluating the query until absolutely necessary (using a lazy array implementation)
  • An API not too heavily oriented to SQL databases

DataMapper was designed to be a more abstract ORM, not strictly SQL, based on Martin Fowler's enterprise pattern. As a result, DataMapper adapters have been built for other non-SQL databases, such as CouchDB, Apache Solr, and webservices such as Salesforce.com.

We don't have any images related to DataMapper yet.
We don't have any YouTube videos related to DataMapper yet.
We don't have any PDF documents related to DataMapper yet.
We don't have any Books related to DataMapper yet.
We don't have any archived web articles related to DataMapper yet.

References

  1. "datamapper wiki: Roadmap". GitHub. https://github.com/datamapper/dm-core/wiki/Roadmap

  2. "Where is DataMapper 2?". Google Groups. https://groups.google.com/forum/#!topic/datamapper/ng-e4kYaCck

  3. "DataMapper - Why DataMapper?". Archived from the original on 2010-10-08. Retrieved 2010-10-12. https://web.archive.org/web/20101008025706/http://datamapper.org/why

  4. Fowler, Martin; David Rice; Matthew Foemmel; Edward Hieatt; Robert Mee; Randy Stafford (November 2002). Patterns of Enterprise Application Architecture. Addison-Wesley. ISBN 0-321-12742-0. 0-321-12742-0

  5. "Kabari's dm-couchdb-adapter at master - GitHub". GitHub. Archived from the original on 2009-08-27. Retrieved 2016-01-02. https://web.archive.org/web/20090827004529/http://github.com/kabari/dm-couchdb-adapter/tree/master

  6. "Lritter/Dm-solr-adapter". GitHub. 13 August 2019. https://github.com/lritter/dm-solr-adapter/tree/master

  7. "Dm-salesforce". GitHub. 22 February 2020. https://github.com/halorgium/dm-salesforce/tree/master