DataMapper
≈ 3 min read
Names in other languages
No names in other languages are held for this entry yet.
Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.
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 20131. 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.
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. ==References== ==External links== DataMapper homepage Ruby Object Mapper (ROM) homepage cs:Data Mapper
Text derived from https://en.wikipedia.org/w/index.php?oldid=1326617170 under CC BY-SA 4.0; modifications have been made.