기타

DA, SQL, DB보안 등 실무자를 위한 위한 DB기술 바이블!

MMDBMS의 제품별 활용사례

기타 가이드
MMDBMS 가이드
MMDBMS의 제품별 활용사례
작성자
admin
작성일
2021-02-19 15:15
조회
1108

제 5 장 MMDBMS의 제품별 활용사례

1장부터 4장까지 MMDBMS의 특장점들과 사용자가 MMDBMS를 도입하여 활용하려고 할 때 어떻게 해야 하는 지를 설명했다. MMDBMS는 DDBMS의 약점들을 훌륭하게 커버하면서 그 영역을 확실하게 해나가고 있음을 알 수 있었다.
최근 IT불경기 속에서도 몇몇 전문 업체들은 열심히 뛰고 있고, 발전하고 있는 것을 볼 때 향후의 전망을 긍정적으로 할 수 있다. 더구나 최근 정부가 집중 육성하고 있는 IT839 정책(8대 서비스, 3대 인프라, 9대 신성장동력)에 DDBMS보다 MMDBMS가 특성면에서 잘 맞고 이는 관련 산업이 크게 발전할 수 있는 호기라고 봐도 무방할 것이다. 따라서 연재 마지막인 이번 회에서는 MMDBMS 제품들이 어떻게 설치되어 활용되고 있는 가를 예를 통해서 살펴 보기로 한다.이전 장에서 살펴보았듯이 MMDBMS는 다양한 업종에 사용되고 있다. 여기에서는 MMDBMS의 특징적인 면들만을 선택하여 가장 효과적인 활용 분야에 대한 예를 들었는데, MMDBMS가 특정 제품을 구성하는 부품(컴포넌트)으로서 사용될 때, 멀티미디어 데이터와 같은 데이터를 빠른 속도로 처리하는 시뮬레이션 시스템에 사용될 때, 증권과 같은 빠른 속도를 요하는 시스템에 사용될 때, 통신서비스 업종에 사용될 때와, 농축산 업종에 사용될 때의 다섯 가지 사례에 대하여 배경이나 시스템 구성도 등을 살펴봄으로써 MMDBMS를 사용하는 장점을 이해하기로 한다.
5.1 텔레매틱스 등에 이용되고 있는 LBS(Location Based Service, 위치기반서비스) 제품에 적재(Embedded)되어 이용
텔레매틱스 등에 이용되고 있는 LBS(Location Based Service, 위치기반서비스) 제품에 적재(Embedded)되어 이용

5.2 다양한 시뮬레이션 처리로직과 멀티미디어 정보처리, 신속한 처리성능을 요구하는 시스템에 이용
다음은 국방부의 ‘워게임(War Game) 시뮬레이션’에 사용된 MMDBMS의 사례이다. 워게임 모델인 ‘창조 21’의 데이터 처리 솔루션으로 MMDBMS를 활용하여, GT/지형/보고서 데이터에 처리에 대한 성능 향상 효과를 달성하고, DBMS 솔루션의 사용으로 개발 기간 단축 및 데이터의 안전성을 확보하였으며, 국산 솔루션 사용으로 외산 DBMS의 수입 대체효과를 거두었다.
1) 적용배경 데이터 처리 솔루션으로 MMF(Memory Mapped File)을 이용하여 보고서, 지형데이터, GT데이터 처리를 하고 있었으나, 파일 시스템 기반으로 시스템의 복잡도 증가로 개발이 어렵고, 또한, 데이터 구축 및 관리상의 어려움 등 여러 문제점이 있었음. 이에, 오라클 등 DDBMS를 검토하였으나 시스템 요구 성능을 만족하지 못하여서 고성능을 보장하는 데이터 처리 솔루션을 찾고 있었음.
2) 성능 개선방안 성능 향상 대상 모듈로서는 지형 데이터, GT 데이터, 보고서 처리가 있었는데, Custom Design을 통한 성능향상 시도에는 범용성, 확장성, 효용성이 저하하는 문제가 있었고, 하드웨어 업그레이드를 통한 성능향상 방안에는 고비용, 시장상황에 비현실적이었는데, 고성능 트랜잭션 처리 솔루션인 MMDBMS를 활용한 성능향상 방안을 최적의 대안으로 선택하였음
o 성능 요구사항 400만개의 레코드에서 조건에 맞는 약 15만개를 선택하는 클라이언트 20 개를 동시에 수행시킬 때 모두 1초 이내의 응답시간 만족.
o 기타 요구사항 - 파일시스템(MMF)기반 사용에 비해 개발기간 단축.
- 각 데이터 형식(GT, 보고서, 지형)의 쉬운 변환.
- 시스템 장애 등 에러 발생시 데이터 및 트랜잭션의 안전성 보장.
3) 개발 시스템 개요 다음은 MMDBMS를 구매하여 시스템에 적용할 때, 부딪히게 되는 문제들을 기술하였다. MMDBMS를 제대로 알고 기존 시스템에 적용하거나, 신규 시스템을 구축할 때 참조한다면 보약이 될 것이다. ㈜알티베이스의 MMDBMS 프로젝트 수행 시에 부딪혔던 대표적인 문제들의 예를 인용했다.
o 개요 - 사단 및 군단 군 지휘관 및 참모의 전투지휘훈련을 위한 모델
- 개발기관: 육군교육사령부
- 개발연도: 1999년 ~ 2004년
o 주요 기능 - 5만 개의 단위부대 수용가능
- 중대 및?? 자동 모의
- 게임 진행속도 조정가능
- 지형묘사는 100mX100m까지 지형형태, 도로, 하천 등의 지형정보D>
o 운영 환경 - 하드웨어
CPU : Xeon 2.4GHz * 2CPU
메모리 : 2GB
하드 디스크 : 100GB- 운영체제
Redhat 7.3
4) 시스템 구조
모의 엔진(워 게임) (지형, 보고서, GT 데이터) - 지형/보고서/GT서버(Kairos DBMS) - (보고서 검색, GT 데이터 검색)클라이언트
5.3 Base21(21세기형 종합증권업서비스시스템)에 MMDB를 사용하여 빠른 처리속도로 경쟁력 향상
증권전산이 국내외 고객 증권사를 위하여 2000년 7월부터 시작하여 2002년 초에 본 가동을 완료한 21세기형 종합 증권업 서비스 시스템으로서 신속한 처리속도를 위해 MMDBMS를 채택했다.
1) 하드웨어 구성 주식의 ‘사자팔자’ 주문과 매매체결 그리고 매매체결 결과의 빠른 송수신을 담당하는 BP(Branch Processor)에 MMDBMS가 사용이 되어 작업 부하(Work Load)를 감당하고 빠른 처리성능을 유지하게 하였다.
2) 소프트웨어 구성 DDBMS인 Oracle과 함께 사용되었는데, Oracle은 대용량 데이터베이스 및 MMDBMS의 Backup 데이터베이스로 활용이 되었다. MMDBMS는 DDBMS의 약점인 성능 문제를 보완해주는 DDBMS의 파트너로서의 역할을 훌륭하게 수행하고 있음을 알 수가 있다.
3) 업무 흐름도(Branch Processor) MMDBMS에는 단말 테이블, 사용자 테이블, 주문(TR, Transaction) Copy 테이블, 주문 Timer 테이블, RD(Real Data, 매매체결 결과) 테이블 등의 주요한 테이블들이 존재한다. 사용자가 매매체결 주문을 내면 MMDBMS가 주문을 받아 Host 컴퓨터로 송신하게 되며 주문한 결과(RD)는 사용자에게 전해지는데, MMDBMS에서 수신하여 매매체결 결과에 대한 내역은 Oracle에 저장하고, 체결에 대한 결과 내역은 주문한 사용자의 단말 등을 찾아 결과를 송신해 준다. 이때, MMDBMS는 DDBMS인 Oracle과 매매체결 데이터를 동시에 상호교환을 할 수가 있다.
5.4 통신서비스 시스템에의 MMDBMS 이용
다음은 MMDBMS가 사용된 통신 서비스 회사의 시스템 구성도이다. MMDBMS가 단독으로 서버로 구성(Attach Mode)된 시스템으로써, Active/Active 방식의 이중화(Replication) 구조와 확장성을 고려하여 MMDBMS, DDBMS, LDAP 인터페이스를 제공한다.
MMDBMS의 역할은 Authentication, Authorization, Accounting 기능을 수행하는데, 단말기로부터 서비스 요구가 들어오면, 통신기지국에서 필요한 정보를 요청받아 단말기 인증을 수행하고, 그 결과를 다시 기지국으로 송신하게 된다.
5.5 종돈개량 및 품질관리 시스템에의 MMDBMS 이용
다음은 종축개량협회에서 한우 안내하는 시스템에 MMDBMS가 Client/Server Mode로 사용된 사례이다. 전국에 가입되어 있는 우수 돼지의 품종 관리 및 생태현황을 관리하고, 이에 대하여 전국적으로 웹 기반의 데이터베이스를 구축하고, 웹 서비스를 실시하는 것을 목표로 한다.
특별한 것은 EA Server와 MMDBMS의 연동에 의한 데이터 처리를 가능하게 한 것인데, 클라이언트로서는 PowerBuilder9.0을 사용하고 있고, DDBMS는 Informix9.2.4를 사용하여 MMDBMS와 연동하고 있다.
다음은 해당 시스템의 구성도이다.다음은 MMDBMS를 시스템에 설치할 때의 Mode에 대한 특징을 설명한 표이다. 쉽게 설명해서 Attach Mode는 MMDBMS의 프로그램 모듈들이 단일 시스템(Local System)에만 위치하여 사용이 되는 반면에, Client/Server Mode는 클라이언트와 서버로 프로그램 모듈들이 분리되어 있어서, 클라이언트의 요청을 서버로 전달하고, 서버의 결과를 클라이언트로 전달해 준다.
구 분 Attach Mode C/S(Client/Server) Mode 비 고
설치 방법 셋업 용 실행파일을 수행 셋업 용 실행파일을 수행 설치방법은 동일함
운영 방법 사용자 응용프로그램은 shared memory에 직접 attach되며, 로컬(local) 시스템에서 운용됨 사용자 응용프로그램은 DBMS 서버와 분리되어 있으며, 서버와 클라이언트 사이에서 TCP/IP or IPC 통신을 함 Attach mode의 경우 로컬 시스템에서 수행되며, C/S mode의 경우 로컬 시스템 단독 혹은 원격 시스템이 있어야 함
개발 방법 사용자 응용프로그램은 ODBC, JDBC, Embedded SQL과 같은 산업표준 인터페이스를 통해 개발함 사용자 응용프로그램은 ODBC, JDBC, Embedded SQL과 같은 산업표준 인터페이스를 통해 개발함 개발 방법은 동일하나 C/S mode의 경우 시스템 환경과 전체 서비스 로직을 고려하여 개발해야 함. 환경에 따른 제약이 발생함
RDBMS 연동 운영 방법(Gateway 처리 방식의 차이점) RDBMS와 MMDBMS가 동일 시스템에 있거나 분리되어 있더라도 손쉽게 적용 가능함 RDBMS와 MMDBMS가 동일 시스템에 존재할 경우 CPU부하가 많이 발생함 C/S mode의 경우 RDBMS와 연동 시 시스템 및 네트워크 관리요소가 많아지고 비용이 증가함
Replication 운영 방법 Hot-Standby, Dual active, Multi & Propagation Replication 등 다양한 이중화를 유연하게 구성가능 DB 서버와 응용프로그램 서버가 분리되어 있을 경우, Dual active나 Multi Replication 구성이 복잡해짐 C/S mode의 경우 사용환경에 따라 제약이 발생함
장단점 장점
- 성능이 우수함
- CPU 부하가 적음
- 개발이 손쉽고 관리가 간단함
단점
- 기존 RDBMS 사용자들에게는 친숙하지 않음
장점
- 기존 RDBMS 구성방식
단점
- 성능이 떨어짐
- CPU 부하가 높음
- 개발제약사항이 많고 관리가 복잡함
- 시스템 비용이 크게 증가함
C/S mode의 경우 MMDBMS의 성격과는 다소 거리가 있으며, CPU 부하가 높기 때문에 CPU 개수가 많이 필요함. 그에 따라 비용이 증가함. 또한, 원격 시스템이 추가로 필요하기 때문에 시스템 비용이 과다하게 발생함.
이상과 같이 MMDBMS가 사용되는 사례를 분석해 보았다. MMDBMS는 DDBMS와 연동하여 DDBMS의 취약 부분인 성능을 향상시켜 주는 역할을 하고, DDBMS와 데이터 연동을 통한 상호교환 기능을 통하여 DDBMS와 협력관계를 유지한다. 또한 DDBMS가 사용되기 힘든 특정 제품에 적재(Embedded)되어, 데이터 저장과 빠른 처리성능을 내게 하는 등 본연의 임무를 충실히 수행함을 알 수 있었다.
지금까지 MMDBMS를 분석해 본 결과, MMDBMS가 DDBMS를 대체할 수 있게 모든 기능들이 모두 갖추어지게 될 때까지는 많은 시간이 소요될 것 같으며, 일견 불필요한 일이 되는 것으로 보인다. 오히려 MMDBMS가 DDBMS의 약점을 충실하게 보완하는 방향으로 나아가고, DDBMS가 해결할 수 없는 분야인 빠른 성능을 요하는 분야와 모바일 분야, 통신 분야 등의 우월한 지위를 활용할 수 있는 분야에 집중하는 것이 토종 MMDBMS 관련 산업을 육성하고, 더욱 더 발전시키는 길이라고 생각한다.