ORM : Object Relational Mapping (객체 - 관계 매핑)

ORM

ORM은 객체와 DB의 관계를 매핑해주는 도구이다.

 

객체 지향 프로그래밍은 클래스를 이용하고, 관계형 데이터 페이스는 테이블을 이용하므로

객체모델과 관계형 모델 간의 불일치가 존재한다.

 

그래서 ORM을 사용하면

1. DB 접근을 프로그래밍 언어의 관점으로 맞출 수 있다.

2. 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여, 불일치를 해결한다.

3. SQL 문을 집적 작성하지 않고, Entity를 객체로 표현할 수 있다.

 

장점

1. 가독성과 생산성 증가

2. 재사용 및 유지 보수 편리성 증가

3. DBMS에 대한 종속성 감소

 

단점

1. 프로시저가 많은 시스템에서 생산성 저하 

ex. N+1 Problem

 

 

https://typeorm.io/

 

TypeORM - Amazing ORM for TypeScript and JavaScript (ES7, ES6, ES5). Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server,

 

typeorm.io

 

'SQL' 카테고리의 다른 글

[DB] N+1 Problem  (0) 2022.08.14

+ Recent posts