30년 성숙된 DB시장에서 혁신을 꿈꾸는 ‘선재소프트’

지금으로부터 2년 추석 즈음, 선재소프트의 김기완 대표를 비롯해 핵심 엔지니어들이 한 자리에 모였다. 선재소프트는 메모리 기반 관계형 데이터베이스 관리 소프트웨어(DBMS)를 만드는 회사다.

이들은 막 ‘선DB 버전 2’라는 제품을 출시한 상태였다. 버전 2를 출시했으니 이제 버전 3을 개발해야 하는데, 어떤 방향으로 개발할 것인지 의논하는 자리였다.

이 자리에 모인 멤버들은 그야말로 국내 DB 소프트웨어 업계의 핵심 인재들이었다. 김기완 대표는 오라클부터 알티베이스, 선재소프트까지 20년 이상 DB산업에만 종사했다. 엔지니어들도 알티베이스 때부터 김 대표와 함께 했던 인물들로, DB를 엔진부터 기능까지 몇 차례씩 개발해 본 인재들이었다.

이날 회의의 핵심 어젠다는 두개였다. 하나는 “남들이 안 해본 것을 해보자”는 것이었고, 또 하나는 “개발자들이 재미있는 것을 하자”였다.

silhouettes-776666_960_720관계형 DB라는 소프트웨어 분야는 기술적인 면에서나 시장적인 면에서나 이미 성숙한 분야다. 남들이 안 하는 것은 어렵거나 시장성이 없는 것일 가능성이 높고, 엔지니어들이 재미있는 것은 언제나 그렇듯 돈이 안 될 가능성이 높다.

하지만 이같은 목표를 세운 김 대표와 동료들은 DB분야에도 새로우면서 재미있고, 시장성이 있는 분야가 있을 것이라고 믿었다.

이날 회의의 결론은 ‘분산형 관계형 DB’ 였다. 일명 클러스터 DB라 불리는 것이다. 이는 하나의 대형 서버가 아니라 조그만 다수의 서버가 데이터를 관리하는 아키텍처를 말한다. 최근 IT업계의 기술적 트렌드인 ‘분산처리’를 관계형 DB와 트랜잭션 처리에 적용해보자는 목표인 셈이다.

물론 클러스터 DB라는 것이 이전에 없던 것은 아니다. 오라클은 RAC(Real Application Cluster)이라는 클러스터링 기술을 제공하고, 국내 업체 티맥스소프트도 TAC(Tibero Active Cluster)라는 유사 기술을 가지고 있다.

하지만 이 기술들은 저장소(디스크)를 공유하는 모델이다. 다수의 DB서버를 운용할 수는 있지만, 데이터들은 하나의 저장소(디스크) 저장돼 있다. DB서버들은 이 저장소에 접속해 데이터를 처리한다. 저장소의 한계로 인해  데이터가 무한정 늘어날 수 없는 구조다. 이 때문에 RAC나 TAC는 데이터용량이나 성능을 높이는 용도가 아닌, 고가용성을 위한 도구로 사용된다. 서버 하나가 셧다운 되더라도 다른 서버를 통해 시스템 전체가 다운되는 사태를 방지하자는 것이 목표인 기술이다.

또다른 접근으로는 마이SQL이나 큐브리드 등 오픈소스 기반 DB들이 있다. 이들도 클러스터 기술을 활용해 여러 서버에서 분산처리할 수 있다. 하지만 이 역시 고가용성이 주된 목표다. 이 DB들은 마스터 컴퓨터와 슬레이브 컴퓨터를 구분한다. 마스터 컴퓨터가 작업을 슬레이브 컴퓨터에 나눠 주는 구조다. 쓰기는 마스터에서만 되지만, 읽기를 슬레이브에 분산하는 등의 방법론을 사용한다. 이 때문에 마스터노드에 트래픽 부하가 몰릴 수 있다.

sunje-ceo4반면 선재소프트가 만들고자 하는 것은 저장소를 공유하지 않으면서(Shared Nothing), 마스터와 슬레이브가 구분되지 않는 분산처리 DB시스템이다. 처리할 데이터 용량이 늘어나거나 시스템의 성능을 높일 필요가 있으면, 서버 컴퓨터 하나 더 추가하면 되는 아키텍처다.

이는 하둡과 유사하다고 볼 수 있다. 하둡은 여러 컴퓨터를 연결해 각 컴퓨터의 내부 저장소를 모아 커다란 가상 저장소를 만든다. 데이터가 늘어나면 컴퓨터를 하나 붙이면 된다. 계속 서버를 붙이면 데이터를 계속 늘려나갈 수 있다. 하둡은 저가의 비용으로 저장 데이터 저장소를 무제한 늘려나갈 수 있다는 점에서 각광을 받았고, 빅데이터 시대를 이끌었다.

하지만 하둡은 분석을 위한 도구다. 은행의 송금거래나 통신사의 결제와 같은 트랜잭션 처리에 하둡을 사용할 수는 없다. 트랜잭션 처리에는 오라클과 같은 관계형DB를 써야 한다.

김 대표와 동료 엔지니어들의 목표로 내세운 것은 하둡과 같은 분산처리 방식으로 트랜잭션 처리를 할 수 있는 관계형 DB를 만들자는 것이다. 이는 아직 다른 DB회사들이 시도하지 않았던 방식이다.

이론대로 개발된다면 성능과 안정성 면에서 획기적인 진보를 이룰 수 있다. 데이터의 양이 아무리 늘어나도 계속 서버를 추가하면 되기 때문에 성능 문제가 해결되고, 하둡처럼 분산저장, 분산처리 되기 때문에 시스템이 셧다운 될 가능성이 거의 없다. 개발에 성공해 상용화가 되고, 이론대로 작동한다면 DB업계의 새로운 진보가 될 것이다.

이날 회의 후 이들은 6개월동안 프로토타입을 만들어봤다. 그리고 다음 해 설날이 되기 전 개발이 가능하다고 판단했다. 그 후 1년 6개월 동안 개발에 매진했다.

그 결과 ‘선DB 3.0 맥스스케일’이라는 이름으로 출시를 앞두고 있다. 회사 측은 올 하반기 정식으로 제품을 출시할 계획이다.

김기완 선재소프트 대표는 “DB엔진 개발만 10년 넘게 한 사람들이 모여 마지막 작품이라는 마음가짐으로 개발했다”이라며 “시장에서 성공할 수 있을지 여부는 모르겠지만, 최고의 기술을 발휘했다는 점에서 자랑스럽게 생각한다”고 말했다.

글.바이라인네트워크
<심재석 기자> shimsky@byline.network

관련 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다