ORM이란 'Object-Relational Mapping'의 약자로, 객체(OOP)와 관계형 데이터베이스(RDB)의 데이터를 연결하는 기술을 의미합니다. SQL 코드를 입력하지 않고 프로그래밍 코드와 데이터베이스를 연결하는 것이 가능합니다.
ORM 프레임워크란 ORM을 구현하기 위해 여러 기능을 제공하는 소프트웨어를 의미합니다.
기반 언어 | ORM 프레임워크 |
Java | JPA, Hibernate, EclipseLink, DataNucleus, Ebean |
C++ | ODB, QxOrm |
Python | Django, SQLAlchemy, Storm |
.NET | NHibernate, DatabaseObjects, Dapper |
PHP | Doctrine, Propel, RedBean |
ORM의 한계
- 프레임워크가 자동으로 SQL을 작성하기 때문에 의도대로 작성되었는지 확인해야 합니다.
- 객체지향적인 사용을 고려하고 설계된 DB가 아닌 경우 적용하기 힘듭니다.
- 기존 기업들은 ORM을 고려하지 않은 DB를 사용하고 있습니다.
728x90
반응형