[기획/DB①] ‘관계형’VS‘비관계형’ DB 경쟁에서 융합의 시대로

데이터는 모든 업무의 토대이자 재료입니다. 적확한 방법으로 저장하고 관리하지 않으면 좋은 재료를 갖고도 맛있는 요리를 내놓을 수 없습니다. 데이터베이스는 그래서 중요합니다. 데이터를 제대로 다뤄야 업무가 제대로 돌아가겠죠. 데이터베이스의 뼈대는 무엇이고 지금의 흐름은 무엇일까요. 3회에 걸쳐 알아봅니다. <편집자주> 

데이터베이스(DB)의 뜻을 사전에서 찾아보자. ‘공유돼 사용할 목적으로 통합해 관리되는 데이터의 집합’ ‘처리를 효율적으로 하기 위해 서로 관련성을 가지며 중복이 없는 데이터의 집합’ 등의 뜻이 나온다. 표현이야 어찌됐던 처리·관리·집합이 키워드다. 이러한 목적으로 DB를 사용할 수 있게 만드는 솔루션을 데이터베이스관리시스템(RDBMS)이라고 한다.

DBMS의 형태는 크게 ‘관계형’과 ‘비관계형’으로 나뉜다. 이 중 개발자들에게 익숙한 SQL 언어를 통해 정형화된 데이터를 관리하는 관계형 DBMS(이하 RDBMS)가 기본으로 꼽힌다. 보통 DB라고 하면 RDBMS을 떠올릴 정도로 널리 쓰인다.

행(Row)과 열(Column)로 짜인 테이블에 데이터를 저장하는 RDBMS는 정확한 스키마로 구분돼 정합성이 뛰어나다. 예산, 금융거래 내역, 네트워크 접속 로그 등 많은 비즈니스 관련 정보가 스키마에 맞아 떨어지는 형태다. 전통의 오라클을 비롯해 마이크로소프트 SQL 서버, 마리아DB 등 한 번쯤 들어본 곳들은 모두 RDBMS를 제공한다.

하지만 기술이 발전하고 비즈니스 모델이 세분화하며 영상이나 사진 등 정형화된 틀로는 관리하기 힘든 비정형 데이터가 늘어났다. 이에 “Not Only SQL” 즉 SQL에 의존하지 않는다는 뜻의 ‘NoSQL’ 방식이 또 다른 해법으로 대두됐다. 스키마 구조를 탈피해 유연한 저장과 관리가 가능하고, 분산 처리가 용이해 빠른 분석을 원하는 이들은 NoSQL 진영으로 옮겨가기도 했다.

짚고 넘어갈 것은 온라인거래처리(OLTP)와 온라인분석처리(OLAP)의 차이다. 데이터를 기록하고 관리하는 트랜젝션 처리에 무게를 둔 것이 OLTP다. OLAP은 대량의 데이터를 다차원으로 분석하는 것으로 보면 쉽다. 과거에는 정형화 데이터를 처리하는 OLTP로 충분했지만, 지금은 형태가 딱 정해지지 않은 다양한 비정형 데이터 분석의 필요성이 커진 상황. 이에 NoSQL 기반의 비관계형 DBMS가 인기를 끄는 것이 자연스러운 수순이었다.

다시 관계형의 시대?…융합하는 DBMS

하지만 현재 시장은 다시 RDBMS의 시대라는 인식이 퍼지는 모습이다. 데이터플랫폼 기업 인젠트의 남재욱 전무는 “구조가 없는 데이터들이 최근에 많이 생산되고 있고, 그렇게 쌓인 데이터를 분석하는 기술이 NoSQL에 많이 들어가 있다”면서도 “그런데 다시 RDBMS의 인지도가 오히려 높아졌다. 실제로 업무 처리를 하다 보면 더 효용성이 높아 회귀하는 것으로 보인다”고 말했다.

김석 노브레이크 대표는 “데이터의 크기와 복잡도가 증가하면서 NoSQL의 요구가 많아졌다”면서도 “RDBMS를 대체할 수 있을 것이라고는 생각하지 않는다”고 말했다.

시장이 RDBMS를 다시 조명하는 것은 두 가지 이유로 풀이된다. 첫 번째는 핵심 기능이 현재 비즈니스 데이터의 뼈대를 관장해서다. 심층 분석이 필요하지 않은 데이터 저장 업무, 예컨대 고객 정보를 쌓거나 금융계좌 잔액을 체크하거나 자산을 확인하는 등 틀이 짜인 데이터가 업무의 기본인 경우가 대부분이다.  하나는 융합형 DBMS의 보급이다. 기존 트랜젝션 처리에 NoSQL이 상대적으로 강점을 가진 OLAP 기능을 덧붙인 RDBMS가 시장에 출시되고 있다.

이우상 마리아DB코리아 지사장은 “NoSQL 에서 다시 관계형으로 시장의 관심이 돌아온 건 확장성을 얻으면서부터”라며 “NoSQL 은 데이터 정합성 측면에서 희생을 감수해야 하는 면이 있다. 제약 사항을 모두 해결할 수 있다는 점에서 분산 SQL 이라고 불리우는 새로운 세대의 관계형 DBMS가 주목받고 있다”고 말했다.

하지만 관계형과 비관계형, 두 진영이 서로 적대시할 필요는 없다. 결국 환경에 따라 적합한 것을 선택하면 될 일이다. NoSQL 진영의 설명도 융합이라는 키워드는  비슷하다.

김준 몽고DB 기술총괄 전무는 “RDBMS가 주류인 것은 대부분 인정할 것”이라면서도 “왜 NoSQL이 나왔을까 질문을 던져야 한다”고 말했다. NoSQL 기반의 몽고DB는 스케일 아웃을 통해 대량의 데이터 관리가 가능하다고 설명한다. 실시간 분석이 가능한 것이 특징으로, 데이터셋을 개인화 시켜 속도를 높였다. 시스템이 커질수록 복잡해지고 스키마 때문에 데이터가 유연하지 못한 RDBMS의 단점을 보완한다는 게 회사 측의 설명이다.

마이클 카힐(Michael Cahill) 몽고DB랩스 부사장의 말도 주목할만 하다. 그는 몽고DB데이 키노트를 통해 RDBMS와 NoSQL이 서로 대치하는 것은 아니라고 되짚었다. 선택의 문제이긴 하지만 NoSQL로 옮겨오는 기업이 많다는 설명이다. 그는 “많은 기업이 몽고DB로 레거시 시스템의 현대화를 진행하고 있다”며 “경직된 아키텍처와 부족한 확장성으로 다양한 시스템이 연결돼야 해 복잡성과 비용이 증가한다”고 전해 NoSQL의 매력을 어필했다.

마찬가지로 비관계형 DBMS인 카우치베이스의 김희배 한국지사장은 “기업들은 단순한 트랜젝션 처리만 관심이 있었던 것에서, 나를 알고 고객을 알기 위한 빅데이터의 시대로 나아가고 있다”고 전해 갈수록 복잡한 데이터 분석이 필요한 시대에 NoSQL이 한 자리를 차지할 자격은 충분해 보인다.

글. 바이라인네트워크
<이진호 기자>jhlee26@byline.network

답글 남기기

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