Review

[SQL Angeles] 2017-07-18 LA 한인 SQL Server 스터디 모임- ORM (Object-relational mapping)

SQL Angeles 2019. 4. 15. 23:53

[SQL Angeles] 2017-07-18 LA 한인 SQL Server 스터디 모임

-     ORM (Object-relational mapping)

 

SQL Angeles 커뮤니티는 SQL PASS의 공식 회원이며, LA Chapter 그룹으로 PASS 커뮤니티 중 유일하게 한국어로 진행되는 모임입니다. 자세한 소개는 아래 공식 홈페이지를 참고해주시기 바랍니다.

 

SQL Angeles PASS 공식 홈페이지 : http://SQLAngeles.com / http://sqlangeles.sqlpass.org/

 

SQL Angeles 커뮤니티는 정기적으로 화요일 8PM ~ 10PM (2시간, LA 시간 기준) , 오프라인 스터디를 함께 진행하며(장소 및 시간은 공식 홈페이지를 통해 공지 합니다.) SQL Server를 함께 공부하고 다양한 IT 트렌드를 공유하는 기술 및 네트워크를 공유하는 모임 입니다. , 오프라인 스터디는 참여 제한이 없습니다. , 오프라인으로 스터디에 참여하고 싶은 분들은 카카오톡(ID : SQLMVP), 페이스북(https://www.facebook.com/sqlmvp) 메신저, email(jevida@naver.com) 등으로 연락 주시기 바랍니다.  오프라인 모임의 경우 스터디 장소 출입이 자유롭지 못한 관계로 반드시 사전에 협의가 되어야 합니다. 또한 홈페이지에 가입하시면 스터디 일정에 대한 내용을 이메일로 받을 수 있습니다. 자세한 내용은 본문 하단의 회원 가입 안내를 참고해 주세요.

 

오프라인 스터디는 LA El Segundo에 위치한 Nexon America office에서 진행합니다.

주소 : 222 N Sepuveda Blvd, El Segundo, CA, 90245 (https://goo.gl/maps/nVwdeqfw7XK2)

 

 

 

 

오늘 발표는 Brian님께서 진행해 주셨으며 발표내용은 ORM(Object-relational mapping)으로 어플리케이션에서 SQL 서버에 명령을 호출할때 쿼리를 자동으로 작성하는 방법에 대해서 알아보았습니다.   

 

보통 직접 쿼리를 호출하는 것을 Ad-hoc방식이라 표현합니다. SQL Server에서는 성능 및 보안상의 이유로 일반적으로 SP를 생성하여 사용하는데, MySQL, Oracle 등에서는 Ad-hoc을 많이 사용한다고 합니다. 이때 개발자가 직접 쿼리문을 작성하지 않아도, 매핑된 오브젝트 정보를 사용하여 어플리케이션이(프레임워크가) 직접 쿼리를 작성하여 호출하는 방법을 사용합니다. 이러한 방법을 ORM이라고 합니다.

·       Object-relational mapping : https://en.wikipedia.org/wiki/Object-relational_mapping

ORM의 장점은 코딩의 반복적인 작업을 줄일 수 있으며 SQL에 의존적인 코딩을 벗어나 어플리케이션 관점에서 생상적인 코딩 및 유지보수가 편리합니다. 하지만 프레임워크를 잘 이해하지 못한 환경에서 사용할 경우 성능상 문제를 발생 시킬 수 있으므로 주의해야 합니다.

종류

SQL Mapping (Partial ORM)

Object Relation Mapping (FULL ORM)

개요

SQL을 특정 name으로 정의 하여 사용

내부 엔젠에서 SQL 자동 생성

맵퍼

SQL Mapper

Object Relation Mapper

방법

·  자바객체를 실제 SQL 문자에 매핑

·  자바 코드에서 SQL 관련 부분 제거

·  XML에 임베디드된 SQL

·   Table Row와 자바객체를 동기화

·   모든 SQL문은 프레임워크에서 생성하고 실행

종류

iBatis SQL Maps / Oracle SQLJ / Forte 4GL Embedded SQL / Pro*C Embedded SQL

Hibernate / TopLink / Cocobase/JPA

장단점

복잡한 데이터 전송방식 환경에서 효율적

효율적으로 SQL의 장점 활용

O/R Mapper SQL Mapper에 비해 더 효율적인 매핑

O/R Mapper가 객체 모델과 DB모델에 대한 광범위한 정보를 가지고 있음

 

일반적으로 많이 사용되는 프레임워크로는 JAVA에서 사용하는 Hibernate, iBatis(MyBatis), .NET Entity Framework, LINQ등이 있습니다.

 

ORM에 대해서 설명중이신 Brian.

 

 

 

오늘 스터디에서 중요한 몇 가지.

1.     ORM이 만능은 아니다. 반드시 쿼리 검수가 필요하다.

2.     복잡한 비즈니스의 경우 ORM으로 한계가 있다. (복잡할 경우 SP 권장)

3.     프레임워크의 특성을 잘 알지 못하고 사용하는 경우 성능상 문제를 일으킬 수 있다.

4.     ORM을 사용하더라도 산출된 쿼리가 정상인지 판단할 수 있는 능력이 필요하다.

 

앞으로도 다양한 주제로 스터디를 계속해서 진행할 예정이며 꾸준한 관심과 참여 부탁 드립니다. SQL Angeles 홈페이지에 가입하시면 스터디 일정 및 온라인 참여 링크를 이메일로 수신할 수 있습니다. 아래 안내를 참고해서 챕터 가입을 부탁 합니다.

1.     http://sqlpass.org/ 접속 합니다.

2.     우측 상단의 SIGN IP FOR FREE 버튼을 클릭해서 회원 가입 합니다. 가입한 이메일로 안내문이 발송 되니 자주 사용하는 이메일로 가입해주세요.

 

 

3.     가입 완료 후 로그인을 하여 [Community] – [Local Group]를 클릭합니다.

 

 

4.     아래 그림과 같이 Region 을 선택하고 Angeles 검색하여 SQL Angeles 챕터에 JOIN 버튼을 클릭합니다. (저는 이미 가입되어 있어 LEAVE라고 버튼이 표시 되어 있습니다.)

 

 

 

2017-07-18 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

LA 한인 SQL 스터디 모임, LA IT 모임, DB 스터디, SQL 스터디, SQL Server, DB 스터디, LA SQL Server, sqlmvp, SQL Angeles