메뉴 건너뛰기

SAP 한국 커뮤니티



instance라는 것에 대한 의견

SAP폐인 2008.01.29 20:03 조회 수 : 4224 추천:3

모처럼 시간이 나서 그동안 궁금했던 instance라는 것에 대해 공부를 좀 해봤습니다.


공부한 결과로 나름대로 정리를 해봤는데.. 아직 멋모르는 신입이라 이 내용이 100% 정확하다고는 말씀을 못드리겠습니다.


고수님들의 따끔한 지적을 바라면서 여기에 올려봅니다 ^^*


 


-----------------------------------------------------------------------


Instance


 


Instance는 쉽게 말해 시스템을 작동시키는 프로세스를 포함한 관리도구라고 생각할 수 있습니다. 일반적으로 우리가 사용하는 컴퓨터를 작동시키는 내부 엔진을 instance라고 보면 되는 것과 비슷하다고 생각됩니다. 그럼 왜 개발을 하기 위해서 instance에 대해서 알아야 할까요? 솔직히 ABAP개발을 하는데 있어 instance는 알 필요가 없다고 생각합니다. 실제로 이 부분에 대해 물어보는 사람도 없고, 알려고 하는 사람도 없었습니다. 관련부분은 모두 BC영역에서 처리되어지기 때문에 developer가 그 부분에 대해 제어할 필요도, 특별히 궁금하지 않다면 알 필요도 없는 것입니다. 하지만 ABAP을 함에 있어 ABAP이 SAP라는 ERP시스템을 제어할 수 있는 하나의 도구라는 이유 때문에 이러한 시스템적인 구조를 알아두는 것도 나쁘지 않다고 생각합니다. 그리고 instance부분은 DB update를 위해 developer가 생각할 수 있는 update function이나 update role과 연관되는 부분이기도 합니다.


 


SAP에서 instance는 간단하게 Central instance, DB instance, Dialog instance로 이루어 진다고 말씀드릴 수 있습니다. 그럼 왜 이렇게 3가지로 나뉘어 질까요? 3-tier로 이루어진 SAP ERP에서는 데이터를 신속하게 처리하고 프로세스를 유지하기 위해서는 DB와 End-user사이에 위치한 application layer에서의 performance가 중요합니다. SAP에서는 이 부분에서의 효율적인 데이터 처리를 위해 instance라는 개념을 넣게 됩니다. Central instance를 통해 SAP에서의 처리를 담당하고 DB instance를 통해 SAP와 DB와의 연결 및 DB에서의 처리를 담당하며, Central instance의 과부화에 대비해 dialog instance를 만들었습니다. 이 세 가지의 instance는 각각의 조합을 통해 SAP ERP시스템의 application layer에서 이루어지는 데이터처리를 담당하게 됩니다. 여기서 Central instance와 DB instance는 반드시 설치되는 부분이며, dialog instance는 옵션으로 선택됩니다.


 


기본적으로 SAP ERP시스템을 설치할 경우에는 제일 먼저 Central instance를 설치하게 됩니다. Central instance는 SAP ERP시스템을 설치할 때 가장 먼저 설치되며, 반드시 생성되어야 하는 instance입니다. 기본적으로 Central instance에는 시스템 운영을 위해 데이터를 분배하는 Dispatcher와 다른 instance와의 연결을 담당하는 Message server등이 기본적으로 포함되어 있습니다. Central instance는 보통 하나만 설치되는데, 이는 중앙에서 시스템을 제어하는 instance는 하나만 있으면 되기 때문입니다.


 


하지만 instance아래 dispatcher가 하나인 관계로 대용량의 데이터가 빈번하게 발생하여 처리할 필요가 있는 시스템일 경우 central instance 하나만으로는 데이터 처리에 대한 performance가 상당히 안 좋아지게 됩니다. 그래서 이련 경우에는 central instance를 여러 개 만들어서 상대적으로 많은 dispatcher를 확보함으로써 데이터 처리에 대한 효율성을 높일 수 있습니다. 다른 방법으로는 central instance와 비슷한 기능을 가진 복제판인 dialog instance를 만들어서 central instance에서 MS를 통해 dialog instance를 제어함으로써 데이터 처리에 대한 performance을 높일 수 있습니다.
 
물론 이런 방법에 대해서 주의할 점도 있습니다. 메인 서버에 Central instance가 생성되어 있고, 대량의 데이터를 감당하기 위하여 다른 서버에 dialog instance를 생성하여 메인 서버와 연결하여 사용하고 있다면, 각각의 instance에 대해 update에 대한 데이터 흐름부분과 각 서버간의 ABAP buffer sync에 따른 시차 등을 고려해주어야 하는 부분이 몇몇 존재하고 있습니다. 그리고 만약 하나의 서버에 여러 client를 생성하여 사용하기 위해 SAP instance(central instance + DB instance)를 여러 개 만드는 경우에는 특별한 문제가 발생하지 않지만 하나의 SAP instance에 대해 여러 개의 client를 생성하는 경우에는, 각 client들이 Repository의 정보와 cross-client configuration을 공유하기 때문에, 하나의 완벽한 client로서 활용을 할 수 없게 되기도 합니다.


 


두 번째로 DB instance는 SAP ERP시스템(특히 application layer단에 위치한)과 DB간의 연결을 담당하고, DB에서 이루어지는 work process를 아래에 두고 진행하는 역할을 합니다. DB instance는 SAP application layer에서 처리되는 데이터를 DB에 저장, 변경 등을 시켜줍니다. DB instance는 기본적으로 SAP ERP시스템에서 데이터를 DB로 보내려고 할 때 DB listener를 호출하게 되는데 이 DB listener를 통해 DB instance가 실행되고 내부에 포함한 DB work process가 실행되어짐으로써 DB에 데이터를 제어할 수 있게 됩니다.


 


마지막으로 Dialog instance는 Central instance의 복제판이라고 생각하시면 쉬울 것 같습니다. 하나의 Central instance로 데이터 처리가 힘들 경우, 그리고 분산 컴퓨팅 환경을 이용하여 데이터 처리를 위한 performance를 높이려고 할 경우에 메인 서버에 Central instance를 설치하고, 여분의 서버에 Dialog instance를 설치하여, 메인 서버의 Central instance안에 위치한 MS를 통해 데이터를 처리하고자 할 때마다 dialog instance를 호출하여 내부에 위치한 dispatcher를 사용하여 데이터를 처리할 수 있게 됩니다. 이는 하나의 central instance에서 데이터를 처리할 때보다 데이터가 분산, 병렬처리 되어지기 때문에 Performance가 훨씬 좋아지게 됩니다.


 


또한 dialog instance는 내부에 위치한 dispatcher에 유저가 work process를 선택, 지정하여 운영할 수 있습니다. 이를 통해 여분의 서버를 기능별로 나누어 데이터가 처리되도록 하여 데이터 관리의 효율을 높일 수도 있습니다.


 


 Instance에 대한 간단한 Tip!
- Window에서는 DB instance를 먼저, Unix에서는 Central instance를 먼저 설치합니다.
- DB instance를 설치할 때 DB가 미리 설치되어 있으니 DB의 연결을 위해 listener를 반드시 확인하여야 합니다.
- DB instance를 설치할 때는 DB export(DB에 SAP table을 기록하는 것등)를 할 경우에 시간이 가장 오래 걸리게 됩니다.
- 시스템을 구축할 경우에 CTS가 되게 하기 위해서는 서버로 사용하는 컴퓨터 이름을 saptranshost로 바꿔주어야 합니다다.
- (오라클을 포함한) DB를 먼저 만들고, central instance생성하고 DB instance를 생성하자!

번호 제목 글쓴이 날짜 조회 수
664 SAP Tech day 2007 [1] file 마이크타이슨 2008.02.14 3065
663 native sql 사용법입니다... ^^; [6] file 부르릉 2008.02.14 3388
662 BC ABAP/4 User's Guide [4] file activeman 2008.02.14 4557
661 외부 ABAP EDITOR 사용하기 [6] file BC고 2008.02.13 3715
660 SAP_튜닝교육_실무 [13] file 희주 2008.02.12 4182
659 SAP Lock Object 만들기. [3] file Mike 2008.02.05 5389
658 Internal Table에 대한 concept입니다. [7] file Mike 2008.02.05 3817
657 Visual Composer관련 SAP 자료 [1] file BC&ABAP 2008.02.04 4410
656 SQL 관련된 자료 입니다. [7] file 최지영 2008.02.01 4340
655 SAP FORUM '07 file 첼시 2008.02.01 2987
654 BAdI Introduction [9] file vltltlr 2008.01.31 4093
653 ALV Object Model [3] file 삐러 2008.01.31 3183
» instance라는 것에 대한 의견 [1] SAP폐인 2008.01.29 4224
651 BAPIoverview,BAPIprogram [6] file BEST!! 2008.01.29 3408
650 BAPIHLP [3] file BEST!! 2008.01.29 3268
649 BAPI programming guide 4.6C [2] file BEST!! 2008.01.29 3504
648 BAPI overview [3] file BEST!! 2008.01.29 3291
647 BAPI General Information [2] file BEST!! 2008.01.29 3600
646 BAPI 생성벙법 MANUAL [19] file BEST!! 2008.01.29 3530
645 BAPI 교육자료 [15] file BEST!! 2008.01.29 3719