소프트웨어

큐브리드의 진화…마이SQL 넘어 오라클 DB 넘본다

심재석 기자

[디지털데일리 심재석기자] 네이버는 최근 클라우드 기반의 저장 서비스 N드라이브를 관리하는 DB관리시스템(DBMS)큐브리드 교체했다. 큐브리드는 네이버가 지난 2008년 인수해 발전시켜가고 있는 DBMS다. N드라이브는 과거에 오픈소스 DBMS마이SQL’ 사용하고 있었다.


이전에도 많은 네이버의 다양한 서비스에서 큐브리드를 사용하고 있었지만, N드라이브처럼 대규모 서비스에 큐브리드를 적용하는 것은 쉬운 결정이 아니다.


이는 큐브리드의 성능과 안정성이 어느 정도 수준에 올랐다는 점을 방증한다. 이미 잘 운영되고 있는 서비스의 DB를 교체한다는 것은 모험이기 때문이다.


N드라이브를 큐브리드로 교체하는데 성공한 네이버는 포토앨범 서비스에도 큐브리드를 적용했다. 현재 네이버 전체 서비스의 절반 이상이 이미 큐브리드를 기반으로 돌아가고 있는 것으로 전해졌다.


큐브리드는 조금씩 해외에서도 이름을 알려나가고 있다. 지난 2011 세계 최대 오픈소스 컨퍼런스 OSCON 참석한 이후지난 해에는 러시아에서 개최한 RIT, HighLoad++ 등의 국제 컨퍼런스에 초청을 받아 참가했다.


최근 네이버는 큐브리드에 대해 좀 더 포부를 밝히고 있다. 마이SQL 아니라 오라클 DB 대체할 있는 DBMS 발전시키겠다는 것이다. 오라클 DB는 세계 점유율 1위의 DBMS, 기업들은 가장 중요한 핵심 시스템에 오라클을 사용하고 있다.


네이버 오보명 글로벌 플랫폼 개발랩 차장으로부터 큐브리드의 현재와 발전 방향에 대해 이야기를 들어봤다. 인터뷰는 지난 20일 진행됐다.


- 오픈소스 DBMS 대표는 마이SQL이다. 마이SQL 비해 큐브리드의 강점이 있다면 무엇인가.


일단 라이선스 정책을 수가 있다. 마이SQL  엔진과 커넥터가 모두 GPL이다. 때문에 마이SQL 내장하고 있는 소프트웨어는 모두 소스코드를 공개해야 한다. 그것이 GPL 특징이다. 때문에 자신의 소스코드를 공개하면 안되는 회사들은 마이SQL를 사용하기 어렵다.


반면 큐브리드 엔진은 GPL,  인터페이스 드라이버는 BSD를 따르고 있다. BSD 라이선스는 아무나 개작할 있고, 수정한 것을 제한 없이 배포할 있도록 규정하고 있다. 때문에 큐브리드의 엔진을 수정했다면 그 소스코드를 오픈해야 하지만, 그렇지 않고 단순히 이용할 때는 아무런 제약이 없다.


샤드와 같은 미들웨어도 큐브리드의 강점이다. 샤드는 DB서버를 늘릴 때 애플리케이션 수정 없이 할 수 있도록 지원하는 소프트웨어다. 단순히 웹 페이지를 운영할 때는 이런 기능이 필요없지만 N드라이브와 같은 대형 시스템을 운영하기 위해서는 샤드와 같은 기능이 필요하다. 마이SQL도 이런 기능을 가지고 있지만, 상용 버전에서만 제공한다. 큐브리드는 샤드도 오픈소스로 공개했다. 샤드뿐 아니라 온라인 백업, 고가용성 등 마이SQL은 비용을 지불해야 쓸 수 있는 기능을 큐브리드는무상으로 제공한다.


- 최근 N드라이브와 포토앨범에 큐브리드를 적용했다. DB를 바꾸는 것은 큰 모험인데


지난 2008년 큐브리드를 인수한 이후 큐브리드가 마이SQL 을 대체할 수 있을 정도로 발전시키겠다는 계획을 세웠다. 이를 위해 마이SQL의 구문을 큐브리드에 담았다. 현재 90% 정도 구문이 호환된다. 덕분에 애플리케이션 수정을 최소화한 채 DB를 마이그레이션할 수 있었다. 물론 구문이 미묘하게 다르거나 예상한 것과 값이 달리 나오는 경우도 있었지만, 1~2개월 테스트하면서 체크한 결과 문제 없이 서비스가 운용될 수 있다는 점을 확신했다.”


- 큐브리드가 네이버의 주요 서비스에도 적용되나?


과거에는 서버 몇 대로 운영하는 소규모 서비스에만 들어갔다. 그런데 2010년부터 바뀌고 있다. 이제는 대규모 서비스에도 큐브리드가 들어간다. 대표적인 것이 네이버 메일이다. 네이버 메일은 250대의 서버로 운영되는 대규모 서비스이다. N드라이브와 포토앨범에도 큐브리드가 들어가있고, 블로그나 카페 서비스에도 덧글 쪽에도 적용돼 있다. 


우리의 계획은 오라클이나 MS SQL 서버 등 상용 DB를 쓰는 서비스도 큐브리드로 교체해 나가는 것이다.”


- 오라클 DB교체도 가능한가?


내부 사례가 있다. 운용 중인 모든 서버들로부터 로그를 수집해서 모니터링 하는 시스템이 있는데, 과거에 이 업무에 오라클 DB  10식이 들어가 있었다. 하지만 이제는 큐브리드에서 구동된다


- 큐브리드는 지금까지 웹 서비스를 위한 DB라고 스스로를 정의해 왔었다. 오라클 DB 교체를 염두에 둔다는 것은 미션크리티컬한 업무까지 큐브리드로 할 수 있다는 것인가?


물론 큐브리드는 여전히 웹 서비스에 활용하는 것이 가장 좋은 DBMS다. 그러나 웹에 대한 개념이 달라졌다. 과거에는 웹이라는 것이 블로그나 게시판처럼 간단한 것이었다. 하지만 지금 네이버 서비스를 보면 그렇게 간단한 시스템이 아니다. 10년 이상 데이터가 축적됐고, 서비스가 절대로 멈추면 안된다. 일반 기업IT와는 다르지만 그 수준의 성능과 안정성을 보장하는 DB가 필요하다


- 그렇다면 오라클 DB 교체를 위한 로드맵은?


지금까지는 마이SQL 구문을 큐브리드에 많이 담아왔다. 최근에는 오라클 DB 구문까지 큐브리드에 적용시키고 있다. 또 샤드를 통해 확장성도 담보하고 있다. 올해부터는 오라클 DB 전환에 적극 나설 것이다. 일단은 결제 및 아이템거래 등에 활용되는 것이 목표다


NHN 지난 2008 32억원에 큐브리드를 인수한 이후 해마다 40~50 가량의 투자를 단행해왔다. 초창기 네이버의 소규모 서비스 위주로 테스트를 시작한 이래로 무수히 많은 시행착오를 거쳐 현재는 네이버의 주요 DBMS로 자리잡았다. 그 동안 내부 임직원들의 전폭적인 지지가 없었다면 불가능한 일이다. 오라클 DB와 견주겠다는 큐브리드의 목표가 현실화 될 것인지 주목된다.


<심재석 기자>sjs@ddaily.co.kr

심재석 기자
webmaster@ddaily.co.kr
기자의 전체기사 보기 기자의 전체기사 보기
디지털데일리가 직접 편집한 뉴스 채널