ORM

훈이는못말려·2023년 7월 19일
0
post-thumbnail

ORM이란?

Object-Relational Mapping
객체와 관계형 데이터베이스 간의 데이터를 변환 및 상호 작용하는 기술 또는 도구

관계형 데이터베이스는 테이블 형태로 데이터를 저장하고 관리하는 반면, 타입스크립트와 같은 객체 지향 프로그래밍 언어는 객체 형태로 데이터를 다룬다.
ORM은 이러한 두 가지 다른 데이터 모델 간의 간극을 극복하여 객체와 데이터베이스 사이의 변환을 자동화해준다.

  • 데이터베이스의 테이블과 행을 객체로 매핑하고, 객체를 데이터베이스의 테이블과 행으로 저장, 검색, 수정, 삭제할 수 있게 도와준다.

장점

  1. SQL 쿼리를 작성하지 않아도 되기 때문에 개발 생산성이 향산된다.
  2. 대부분의 개발자들이 이해하기 쉽고 가독성이 높다.
  3. 데이터베이스 스키마 변경 시 ORM 라이브러리가 자동으로 매핑을 처리하므로, 코드 수정이 줄어들어 유지 보수가 용이하다.
  4. ORM은 여러 데이터베이스 시스템을 지원하여 데이터베이스의 독립성을 제공한다. 프로젝트를 다른 데이터베이스로 전환하는 경우, ORM 설정만 변경하면 되므로 유용하다.

단점

  1. 일부 복잡한 쿼리와 데이터베이스 조인 작업에서는 직접 SQL쿼리를 작성하는게 ORM보다 빠를 수 있다. 특히 대량의 데이터 처리와 최적화된 쿼리가 필요한 경우에는 ORM의 성능이 떨어질 수 있다.
  2. 특정 상황에서 ORM으로는 복잡한 쿼리를 구현하기 어려울 수 있다.

0개의 댓글