데이터매퍼

DataMapper

Data Mapper는 Ruby로 작성객체 관계형 매퍼 라이브러리로, 이름이 데이터 매퍼 패턴을 따르도록 함에도 불구하고 활성 레코드 패턴을 따릅니다.Data Mapper 1은 데이터 매퍼 패턴에 의해 제안된 개체와 데이터베이스 간의 완전한 분리를 달성하지 못했지만 Data Mapper 2는 이를 변경하기 위해 의도된 것으로 보입니다(Virtus, Data Mapper에서 [1]수정된 라이브러리).Data Mapper 2 프로젝트는 출시 전에 이름을 변경하여 2013년 [2]8월에 Ruby Object Mapper(ROM)로 출시되었습니다.

Data Mapper의 [3]일부 기능:

  • (N+1) 쿼리를 피하기 위해 자식 연결을 빠르게 로드하고 있습니다.
  • 선택한 속성(예: 더 큰 필드)의 로딩이 느림
  • 쿼리 체인을 실시하여 절대적으로 필요할 때까지 쿼리를 평가하지 않음(느린 어레이 구현 사용)
  • SQL 데이터베이스를 지나치게 중시하지 않는 API

Data Mapper는 Martin Fowler의 엔터프라이즈 [4]패턴을 기반으로 SQL이 아닌 보다 추상적인 ORM으로 설계되었습니다.그 결과 DataMapper 어댑터는 CouchDB,[5] Apache Solr[6]같은 다른 비 SQL 데이터베이스 및 [7]Salesforce.com과 같은 웹 서비스용으로 구축되었습니다.

레퍼런스

  1. ^ "datamapper wiki: Roadmap". GitHub.
  2. ^ "Where is DataMapper 2?". Google Groups.
  3. ^ "Archived copy". Archived from the original on 2010-10-08. Retrieved 2010-10-12.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  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.
  5. ^ "Archived copy". GitHub. Archived from the original on 2009-08-27. Retrieved 2016-01-02.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  6. ^ "Lritter/Dm-solr-adapter". GitHub. 13 August 2019.
  7. ^ "Dm-salesforce". GitHub. 22 February 2020.

외부 링크