이재성 셀파소프트 기술연구소장

[컴퓨터월드] 많은 기업들이 자사의 안정적인 서비스 제공과 데이터 손실 방지, 장애 예방 등을 위해 DB성능관리(Database Performance Management, DPM) 솔루션을 활용하고 있다. DPM은 편리한 대시보드 상에서 DB의 운영 현황을 실시간으로 파악할 수 있도록 지원한다. 실시간 서비스에 대한 기업과 고객의 요구가 강해질수록 DPM의 중요성이 강조되고 있는 이유다.

셀파소프트의 제품 개발 조직을 총괄하고 있는 이재성 기술연구소장을 만나 국내 DPM 시장에서의 입지를 확대해나가고 있는 셀파소프트의 미래상을 들어봤다.

▲ 이재성 셀파소프트 기술연구소장

셀파소프트는 2006년 설립된 DPM SW전문기업으로, 오라클·SQL서버·티베로·알티베이스·MySQL·마리아DB 등 다양한 DB들을 단일한 화면 내에서 통합 모니터링할 수 있는 DPM 솔루션 ‘셀파(Sherpa)’를 개발 및 공급하고 있다. 특히 해당 산업 분야의 후발주자로 뒤늦게 출발했음에도 불구하고 LG디스플레이나 KT와 같은 대형 고객사들에 제품을 공급하며 빠르게 성장, 2011년에 KT 중소기업 동반성장 프로젝트에 선정되며 해당 산업 분야 2위의 자리를 차지했다.

또한 자사의 DPM 분야 전문성에 애플리케이션 성능관리(Application Performance Management, APM) 전문기업인 제니퍼소프트의 기술력을 결합해 사용자 단에서 DB에 이르기까지 전 구간을 통합 모니터링할 수 있는 환경을 구축해나가고 있다. 기존의 통신 방식으로는 해결할 수 없었던 DPM-APM 간의 연결에 대해 새로운 방법론을 개발해 구현하는 데에 성공했으며, 고객은 상호연계된 양사의 제품들을 통해 WAS와 DB에 대한 모니터링을 단일한 접점에서 수행할 수 있게 됐다.

셀파소프트는 기업의 IT 인프라가 온프레미스에서 클라우드로 이동하고 있다는 점에 주목해 자사 제품들의 클라우드 적용에도 집중하고 있다. 이미 ‘셀파’ 제품은 아마존 컴퓨트 클라우드(Amazon Elastic Compute Cloud, EC2) 환경에 적용 및 검증이 완료됐으며, 올해 안에 아마존 관계형 DB 서비스(Amazon Relational Database Service, RDS) 환경에서도 모니터링이 가능한 제품을 출시할 예정이다. 이에 더해 인공지능(AI) 기술을 접목한 향상된 DB 장애 예측 기술의 개발 등 도전적인 과제를 설정하고 이를 자사 제품에 적극적으로 접목해나감으로써 뛰어난 기술 조직을 활용한 혁신을 멈추지 않고 있다.

이재성 셀파소프트 기술연구소장은 1993년부터 오라클 기반의 초대형 프로젝트인 C3I 프로젝트를 시작으로 대형 SI 프로젝트들을 경험한데 이어 2000년부터는 다수의 기업 애플리케이션 통합(Enterprise Application Integration, EAI) 프로젝트를 수행하면서 EAI 전문가로 활동해왔다. 이후 2008년 9월 셀파소프트에 합류, 그동안의 경험을 살려 다양한 OS에 이식 가능하고 최적의 성능을 발휘할 수 있는 기술 노하우를 살려 셀파소프트의 제품 개발 전략을 총괄하고 있다.

다음은 이재성 셀파소프트 기술연구소장과의 인터뷰 내용을 문답식으로 정리한 것이다.


Q. 셀파소프트의 연구 조직에 대해 설명해달라.
셀파소프트 기술연구소 조직은 UI 담당 13명, 서버담당 7명 등으로 구성돼 있다. 솔루션 업무 특성상 구성원 개개인의 역량이 매우 중요한데, 올해 입사한 2명의 신입사원을 제외하면 모두 대리급 이상이며 경력 이상의 역량을 발휘하고 있다. 또한 팀장급 3명 중 2명이 솔루션 분야의 경력을, 1명이 SI 분야의 오랜 경력을 보유하고 있어 솔루션 개발에 요구되는 깊이 있는 기술력과 애플리케이션에 필요한 DB기술이 조화를 이루고 있다.

특히 회사 대표도 오라클DB 컨설턴트 경력을 보유한 엔지니어 출신이기에 제품 기획부터 실제 구현 단계까지 원활한 소통이 이뤄져 보다 전문적인 제품 개발 로드맵을 구성할 수 있다. 회사 대표를 비롯해 연구조직 구성원까지 관련 기술에 대한 특화된 전문성을 갖추고 있다는 점이 셀파소프트가 보유한 기술력의 근간이다.

가령 지난 2008년 ‘셀파 오라클’ 제품을 기존의 2-tier 버전에서 DMA(Direct Menory Access, 직접 메모리 접근) 버전으로 전환하는 신규 프로젝트를 시작하게 됐다. 매뉴얼이 제공되지도 않는 오라클의 SGA를 분석해야 하는 상황에서 회사 대표와 연구원들이 머리를 맞대고 여러 날 동안 고민하며 방법론을 구상했으며, 결과적으로 3개월이라는 짧은 기간 안에 오라클 제품의 SGA를 분석하고 DMA 버전의 제품을 출시할 수 있었다. DMA 및 셀파소프트만의 독특한 메인화면 UI를 만들 때까지 여러 번의 고비를 넘었지만, 열정이 넘치는 개발자들과 현업에 대한 풍부한 지식을 보유한 회사 대표의 지원이 있었기에 가능했다고 생각한다.

▲ 셀파소프트의 DPM 솔루션 ‘셀파’ 아키텍처

Q. 셀파는 어떤 특징을 가진 DPM 솔루션인가?
DPM 솔루션이 제 기능을 하기 위해서는 DB가 설치돼 있는 시스템의 CPU를 사용해야 하는 관계로, 어쩔 수 없이 DB의 성능에 영향을 미칠 수 밖에 없다. 따라서 DPM을 개발하는 기업 고객사들의 관심은 모두 DB에 대한 영향을 최소화하면서도 충분한 제품 성능을 발휘하는 것이다.

셀파 제품은 DB 성능에 영향을 거의 주지 않으면서도 성능 모니터링과 사후분석을 위한 성능 데이터 수집이 가능한 구조를 목표로 설계·구현됐다. 가령 DB서버의 CPU와 메모리 사용량을 줄이면서도 필요한 기능 제공에 문제가 없도록 하기 위해 DB서버에 설치해야하는 에이전트 프로그램은 성능과 메모리를 제어하기 용이한 C언어로 개발했으며, 동일한 데이터의 경우 한 곳에서 집중해 처리하도록 설계했다.

특히 SQL도 하나의 랭귀지이기에 사용 시에 파싱 단계가 필요한데, 이 작업이 굉장히 무거운 작업이기에 DB에 많은 부하를 주게 된다. 또한 데이터 동기화를 위해 중복된 데이터에 대한 락(lock)도 필요하다. DB에 과다한 부하가 걸릴 경우 SQL 사용이 불가능해질 수 있으며, DB의 데이터 사전(Data Dictionary)을 조회해도 성능을 파악할 수 없게 된다. 하지만 셀파 제품들에 적용된 DMA 방식을 활용한다면 DB서버 CPU의 부담을 낮출 수 있는 것은 물론, 과다한 부하가 발생하는 상황에서도 원인을 파악하고 즉시 대처할 수 있다.

UI 측면에서는 많은 기업들이 사용 중인 도킹 방식과 달리 마그네틱 윈도우를 적용, 간단한 리사이징과 UI 배치를 통해 보다 편리하게 대시보드를 커스터마이징할 수 있도록 했다. 또한 운영 시스템의 업무 처리 현황을 모니터링하기 위해 사용자가 작성한 SQL을 다양한 형태의 컴포넌트(Line/Bar Chart, Grid)로 구성하거나, 관리 대상 인스턴스들을 동시에 단일한 화면에서 동시에 비교할 수 있다.

▲ 셀파는 단일한 화면에서 관리 대상 인스턴스들을 동시에 관리할 수 있는 멀티 인스턴스 기능을 지원한다.

Q. 셀파 제품의 향후 업데이트 전략은?
우선 양적인 측면에서 셀파 제품을 구성하는 다양한 화면의 추가 개발을 추진한다. 셀파 제품의 메인화면 UI 방식과 핵심 기능들을 놓고 보면 현재 국내에 유통되는 DPM 제품 중에서도 우수한 성능을 갖고 있다고 생각하지만, 후발주자이니만큼 보다 다양한 산업 분야의 요구를 반영할 수 있는 양적인 측면의 개발이 다소 부족했던 것이 사실이다. DPM 분야의 선배격 제품들은 ‘이런 것까지 필요할까’ 싶은 화면까지 보유하고 있어 고객사들이 고를 수 있는 선택지가 많다. 따라서 그들이 보유하고 있는 다양한 화면들을 셀파 역시도 구현할 수 있도록 양적인 측면을 강화해나갈 예정이다.

한편 기업의 IT 인프라가 온프레미스 환경에서 클라우드 환경으로 이동하는 것은 이미 거스를 수 없는 대세가 됐다. 만약 대부분의 기업들이 클라우드 플랫폼에 안착하게 된다면, 이를 지원할 수 없는 기업·제품들은 자연스럽게 도태될 것이다. 물론 업계 일각에서 얘기하는 것처럼 한 순간에 기존 전산실을 모두 없애버리고 클라우드 환경으로 대규모 이동을 벌이지는 않겠지만, 관리상의 용이함이나 효율적인 인력 배치 등에서 유리한 분야부터 조금씩 변화해 나갈 것으로 보인다.

따라서 DPM 솔루션 역시 클라우드 플랫폼 상에서의 호환이 당면 과제다. 셀파 제품은 아마존 EC2에 적용 및 검증을 마쳤고, 올해 안에 RDS 환경에서도 모니터링이 가능한 제품 출시를 준비 중이다. 현재는 AWS와의 호환을 첫 번째 목표로 하고 있으며 차차 대상 영역을 확대해 나갈 예정이다.


Q. 제니퍼소프트와의 협력을 강화하고 있는 이유는?

사용자 화면에서 이벤트가 발생했을 때 DB에서 데이터를 조회해 사용자 화면에 도달하기까지, 제니퍼소프트의 APM 제품이 모니터링하는 구간에서 치명적인 장애로 인하여 성능에 문제가 발생하는 경우보다는, DB 의 장애 및 성능 문제로 판명이 나는 경우가 더 많다. 이에 따라 UI 부터 DB까지 전체 구간(End to End)을 대상으로 하는 모니터링에 대해 고객들의 요청이 늘어나고 있다.

제니퍼(Jennifer) 제품과 셀파 제품의 연계를 통해 사용자는 단일한 화면에서 WAS와 DB 성능을 실시간으로 모니터링할 수 있으며, 제니퍼 제품으로 모니터링 중 DB 문제로 성능이 저하된 경우 클릭 한 번으로 셀파 연계화면에 접근할 수 있도록 했다. 이를 통해 고객은 문제가 된 구간을 손쉽게 파악하고 발빠른 대응에 나설 수 있다.

▲ 셀파소프트와 제니퍼소프트 제품의 연계를 통해 시스템 전 구간에 걸친 성능 모니터링을 구현할 수 있다

처음에는 모니터링 업계에서 사용하는 일반적인 연계방식 대로 양 제품 간의 통신 인터페이스를 통해 WAS의 서비스 타임에 셀파 에이전트에게 WAS 성능정보를 전달함으로써 WAS와 DB 성능 정보를 저장하는 방식부터 검토했다. 하지만 거의 같은 시간대에 발생한 이벤트를 순차적으로 처리한다고 해도, 이 연산이 너무 빨리 이뤄지다보니 오히려 성능값을 반환하기 전에 작업이 완료된다는 문제가 발생했다. 따라서 계속해서 변화하는 성능 정보를 정확하게 일치시키기 위해서는 다른 방법론이 필요하게 됐다.

양사 연구소는 두 제품의 성능정보를 정확히 일치시킬 수 있는 새로운 방법론에 대한 과제를 가지고 연구한 끝에, WAS와 DB 제품의 성능정보를 정확히 매핑시키면서도 성능에 거의 영향을 주지 않는 지금의 연계 방법론을 찾게 됐다. 각각의 제품이 모니터링을 수행하면서 동 시간대에 정보를 매핑시키기 위해 통신을 이용하려던 것을, WAS에서 발생한 SQL 수행 시작과 동시에 DB 세션 정보 중 이용할 수 있는 칼럼을 찾아냄으로써 정확한 매핑이 가능하면서도 성능에 영향을 주지 않을 수 있게 됐다. 제니퍼가 SQL 실행 단위로 매핑 가능한 키값을 마련하면, 셀파에서는 해당 키값을 같이 저장해 어떤 서비스인지를 파악할 수 있다는 것이다. 그래서 제니퍼 화면에서 조회하고자 하는 정보를 선택하면, 해당 정보와 매핑돼 있는 셀파 화면이 매칭돼 함께 파악할 수 있다. 해당 방법론은 현재 특허 출원 중에 있다.


AI 기술 접목 등 도전적 시도 이어가
한편 셀파소프트는 최근 자사 제품에 AI 기술을 접목한 예측 기능을 더한 사용자 친화적인 인터페이스 구현에 나서고 있다. 이미 기존의 DPM 제품들은 데이터 용량 증가 추세나 CPU 사용량 예측 등을 통계기법을 활용해 구현하고 있다. 셀파의 AI 기반 예측 기능은 여기에서 한 걸음 더 나아가, 양질의 데이터를 기반으로 DB의 미래 장애 예측까지 구현하겠다는 목표를 갖고 있다. 이러한 예측 기능은 현재 프로토타입 수준으로 개발돼 있지만, 성능 면에서도 매우 어려운 분야에 속하므로 아직 해결해야 할 과제가 산적해 있다. 이재성 기술연구소장은 올해 연말부터 CPU 사용량 예측 등 간단한 기능부터 AI 기반 기능을 적용해 나갈 예정이라고 밝혔다.

이를 통해 구현되는 사용자 친화적인 화면 구성은 DPM의 근본 목적과도 관련이 있다. DPM은 신입 개발자들이나 DB에 대한 이해가 부족한 개발자들은 사용하기 어려운, 다시 말해 전문가 집단이 다루는 분야다. 그렇다보니 셀파와 같은 DPM 제품들 역시 상대적으로 전문성을 갖춘 사용자에 맞춰 개발되고 있다. 셀파소프트 측은 전문가용 도구인 셀파 제품의 접근성을 개선함으로써, DB에 대한 전문성이 조금 부족하더라도 보다 직관적인 UI를 통해 실시간 성능을 파악하고 대처할 수 있도록 할 예정이다. 여기에 앞서 언급한 AI 기반의 장애 예측 기능까지 탑재함으로써 기업에서 보다 손쉽게 DPM을 활용할 수 있도록 하겠다는 전략이다.

저작권자 © 컴퓨터월드 무단전재 및 재배포 금지