DataMapper
It is proposed that this article be deleted because of the following concern:
If you can address this concern by improving, copyediting, sourcing, renaming, or merging the page, please edit this page and do so. You may remove this message if you improve the article or otherwise object to deletion for any reason. Although not required, you are encouraged to explain why you object to the deletion, either in your edit summary or on the talk page. If this template is removed, do not replace it. This message has remained in place for seven days, so the article may be deleted without further notice. Find sources: "DataMapper" – news · newspapers · books · scholar · JSTOR Nominator: Please consider notifying the author/project: {{subst:proposed deletion notify|DataMapper|concern=Fails [[WP:NSOFT]]}} ~~~~ Timestamp: 20250328193511 19:35, 28 March 2025 (UTC) Administrators: delete |
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).[1] The DataMapper 2 project was renamed before launch and was released as Ruby Object Mapper (ROM) in August 2013.[2]
Some features of DataMapper:[3]
- 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.[4] As a result, DataMapper adapters have been built for other non-SQL databases, such as CouchDB,[5] Apache Solr,[6] and webservices such as Salesforce.com.[7]
References
- ^ "datamapper wiki: Roadmap". GitHub.
- ^ "Where is DataMapper 2?". Google Groups.
- ^ "DataMapper - Why DataMapper?". Archived from the original on 2010-10-08. Retrieved 2010-10-12.
- ^ 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.
- ^ "Kabari's dm-couchdb-adapter at master - GitHub". GitHub. Archived from the original on 2009-08-27. Retrieved 2016-01-02.
- ^ "Lritter/Dm-solr-adapter". GitHub. 13 August 2019.
- ^ "Dm-salesforce". GitHub. 22 February 2020.
External links