도큐먼트DB가 몽고DB에 유리한 이유
컨텐츠 정보
- 조회 444
본문
몽고DB는 최근 우수한 분기 실적을 기록했다. 사실 몽고DB에 그보다 좋은 것은 일각에서 향후 이 회사의 실적에 위협이 될 수 있다고 보는 그것, 바로 리눅스 재단이 주관하는 새로운 프로젝트 도큐먼트DB(DocumentDB)다. “완전한 오픈소스이며 몽고DB와 호환되는 문서 데이터베이스”를 표방하는 도큐먼트DB는 개발자를 몽고DB에서 빼낼 잠재력을 갖고 있다.
그러나 그게 전부가 아니다. 몽고DB 입장에서는 도큐먼트DB의 데이터 모델링 접근 방식을 대중화하기 위한 업계 전반적인 움직임에 동참할 수 있는 기회가 되기도 된다. 이는 점점 더 인기를 높여가는 포스트그레스에 대응하기 위해 몽고DB에 필요한 일이기도 하다.
즉, 몽고DB의 오랜 전문가인 맷 킵의 말처럼 도큐먼트DB는 “몽고DB가 자사 API를 NoSQL 표준으로 확립할 수 있는 좋은 기회”다.
몽고DB의 독자적인 접근 방식은 커뮤니티를 중심으로 하는 포스트그레스의 기세에 밀려 동력을 잃고 있으며 포스트그레스의 위상은 여전히 굳건하다. 전체 시장 규모를 확대하면서 이식 가능한 개방형 기본 데이터베이스와 경쟁하기 위해서는 몽고DB 자체에도 이식 가능한 개방형 기본 데이터베이스가 필요하다. 그 역할을 할 수 있는 것이 바로 도큐먼트DB다.
도큐먼트DB와 그래비티
리눅스 재단의 도큐먼트DB는 마이크로소프트가 올해 초 새로운 오픈소스 프로젝트로 출범했다. 현재는 리눅스 재단에 기증된 상태다. 같은 이름의 아마존 도큐먼트DB 서비스와는 무관한데, 여기서 약간 혼란스러운 부분은 아마존 측이 관련성이 있기도 하고 없기도 한 이 도큐먼트DB 이니셔티브에 대한 지원을 약속했다는 점이다. 이 프로젝트는 몽고DB와 호환되며 포스트그레SQL 기반의 문서 데이터베이스를 자유로운 라이선스로 제공하는 것을 목표로 한다. 또한 문서 API와 동작에 대한 개방형 표준도 수립할 계획이다. AWS는 이미 이 프로젝트의 기술 운영 위원회에 참여했고 구글도 공개적으로 지지를 표명했다. 프로젝트 헌장에는 적합성(conformance)과 업체 간 이식성이 핵심 목표로 명시돼 있다. 리눅스 재단의 디렉터 짐 제믈린에 따르면 궁극적인 목표는 “문서 기반 애플리케이션을 위한 개방형 표준을 수립하는 것”이다. 관계형 데이터베이스에서 SQL의 역할과 같다고 생각하면 된다.
이정도면 작은 파생이 아니라 큰 울타리에 가깝다. 하지만 동시에 큰 문제이기도 하지 않을까?
몽고DB의 문제는 특정 클라우드 서비스 업체가 아니라 그래비티(gravity)다. 포스트그레스는 개발자 관점에서 ‘안전한’ 기본값으로 자리를 잡았다. 수십 년에 걸친 표준화(SQL/ISO 9075), 적합성에 대한 기대치, 그리고 포스트그레스를 기본 요소로 취급하는 대규모 툴체인이 주는 이점을 누리고 있다. 표준은 위험과 전환 비용을 낮춰주고, 생태계는 표준을 중심으로 성장한다. 몽고DB가 포스트그레스의 시장 잠식을 저지하기 위해서는 몽고DB 클라우드 서비스(아틀라스)로의 전환 비용만이 아니라 몽고DB 방식으로의 전환 비용도 낮춰야 한다.
이 부분에 있어서는 사실 논쟁의 여지가 없다. 역사로 남아 있기 때문이다. 80년대와 90년대에 애플리케이션을 개발한 사람이라면 알겠지만 SQL이 ANSI 표준과 ISO 표준으로 부상하면서 개발자와 기업에 다음과 같은 중요한 3가지 변화가 일어났다.
- 기술과 코드의 이식성 : SELECT, JOIN, 트랜잭션에 대한 지식은 업체를 위한 투자가 아니라 자신의 경력을 위한 투자가 됐다. 기본적인 요소를 다시 배우지 않고도 여러 업체 사이를 자유롭게 오갈 수 있기 때문이다. 기업도 특정 업체의 X DSL이 아닌 SQL을 조건으로 인력을 채용할 수 있게 됐다.
- 업체 간 예측 가능성 : 표준이 나왔다고 해서 차이가 완전히 사라지지는 않았지만 설계자가 업체 종속 위험을 낮추면서 장기간 운영되는 시스템을 계획하기에 충분한 공유 기반이 만들어졌다. ‘중심’이 안정화되면서 툴이 폭발적으로 증가했다.
- 차별화 여지 : 업체는 GROUP BY의 유무가 아니라 성능, 운영, 보안, 생태계, 관리 툴을 두고 경쟁한다.
오라클도 이 대세에 역행하지 않았다. 오히려 주도하고 동참했다. (참고로 현재 필자는 오라클에서 일하고 있으며 몽고DB에서도 두 번에 걸쳐 일한 적이 있다.) 오라클은 최초의 상용 SQL RDBMS를 출시한 후 기업 요구에 맞춰 크로스 플랫폼 이식성, 성능, 그리고 운영 측면에서 앞서 나갔다. 표준을 통해 시장이 더 확대되는 가운데 SQL 표준의 중심인 오라클은 최적의 관리형 환경과 이를 중심으로 하는 생태계를 제공함으로써 막대한 시장 점유율을 확보했다. 몽고DB는 이 사례를 참고해야 한다.
다른 사람들 도우면 나에게도 이득
표준은 모두를 위해 장벽을 낮춘다. 기존에 독점적인 통제력에 의존하는 전략을 사용해 온 기업이라면 장벽이 낮아지는 상황이 불편하게 느껴질 수 있다. 그러나 표준 장려는 자신에게 가장 유리한 범주 자체를 성장시키는 방법이다. 몽고DB는 연구개발에 수억 달러를 투자했지만, 업계 전반적으로 볼 때 포스트그레스의 투자 규모는 그보다 몇 배 더 크다. 더 강력한 시장 전반의 문서 표준은 이런 투자 불균형을 해소하고 전체 문서 데이터베이스 파이를 확대하는 데 도움이 될 것이다. 몽고DB는 브랜드와 제품에 대한 투자를 통해 여기서 큰 지분을 차지할 수 있다.
좀 더 직설적으로 말하자면, 통제는 유한하지만 영향력은 계속 쌓인다. SQL은 오라클이나 SQL 서버를 고사시킨 것이 아니라 오히려 더 큰 비즈니스로 만들었다. 쿠버네티스는 클라우드를 획일적인 상품으로 만든 것이 아니라 경쟁의 방향을 관리형 경험, 보안, 안정성으로 전환했다. 몽고DB에도 동일한 역학 관계가 적용된다.
물론 그 혜택을 몽고DB만 얻는 것은 아니지만 이는 긍정적인 현상이다. AWS, 구글을 비롯한 여러 기업 역시 수혜를 바라고 도규먼트DB에 뛰어들고 있으며, 그 기대 수익에 상응하는 투자를 할 것이다. 필자가 속한 오라클의 경우 아직 이 표준에 대한 지원을 발표하지는 않았지만 마차가지로 표준의 수혜를 볼 것이다.
오라클 데이터베이스 23ai는 JSON 관계형 이원성(Relational Duality)을 도입했다. 이 기능은 개발자가 데이터를 복제하지 않고도 동일한 기반 관계형 데이터를 업데이트 가능한 JSON 문서로 표현하고 업데이트하고 몽고DB 호환 API, REST, SQL을 통해 액세스할 수 있게 해준다. 아주 좋은 기능이다. 표준은 이와 같은 ‘양방향성’을 실현하는 경향이 있고, 생태계는 이런 경향성을 증폭시킨다. 중립적인 문서 표준이 API 동작과 의미 체계를 확립해주면 업체는 그 API 아래에서 데이터를 저장하고 최적화하는 방법을 혁신할 수 있다. 오라클이 문서와 관계형을 하나의 엔진으로 통합해서 하고 있는 일도 바로 이것이다.
즉, 표면적인 영역(개발자 경험과 API)에서 예측 가능성이 담보되면 구매자는 운영 측면의 이점, 확장성, 거버넌스, 그리고 인접 기능(분석, AI, 보안)을 기준으로 선택하게 된다. 이는 몽고DB가 아틀라스를 통해 10년 동안 투자한 부분이다. 표준은 이것을 없애는 것이 아니라, 오히려 더 부각시킨다.
그게 아니라면 라이선스를 통해 그래비티와 계속 싸우는 방법이 있다. 그러나 배포 범위와 호감도 측면에서 분명히 좋지 않은 길이다. DB-Engines의 추세를 보면 포스트그레스는 지속적으로 상승세인 반면 몽고DB는 오픈소스에서 서버 사이드 퍼블릭 라이선스(SSPL)로 전환한 이후 비교적 정체된 모습이다. 몽고DB가 수익화 전략을 아주 잘 실행했다는 점도 별 도움이 되지 않았다. 즉, 수익 전쟁에서 이기고도 플랫폼 전쟁에서는 질 수 있다.
표준으로 얻는 이익
표준화의 혜택을 얻기 위해 몽고DB가 로드맵에 대한 통제력을 포기할 필요는 없다. 사실 몽고DB는 통제력을 조금 넘겨주는 대신 큰 영향력을 돌려받을 수 있다.
사양과 테스트에 호환성 집중. 몽고DB는 이미 내부적으로 심층적인 적합성 테스트 모음을 운영하고 있다. 이 중 일부를 핵심 CRUD, 쿼리 의미 체계, 인덱싱 동작, 오류 처리에 중점을 둔 업체 중립적인 적합성 테스트에 기부하면 몽고DB를 표준의 중심으로 위치시키는 동시에 상업적 차별화(예를 들어 고급 집계, 아틀라스 서치, 온라인 아카이빙, 벡터 기능 등)를 위한 여지도 확보할 수 있다. 계층화된 적합성 프로그램(코어, 확장, 엔터프라이즈)은 클라우드 네이티브 컴퓨팅 재단이나 SQL 표준이 실제로 작동하는 방식과 유사하게 작동할 수 있다.
드라이버 스토리. 리눅스 재단의 이 프로젝트는 ‘몽고DB 드라이버와의 100% 호환성’을 목표로 한다. 몽고DB는 드라이버에 대한 기대 사항을 명확히 하고(와이어 프로토콜의 세부적인 의미, 재시도 의미 체계, 변경 스트림) 중립적인 드라이버 적합성 문서를 공동 작성하는 방식으로 이 목표를 달성하는 데 도움이 될 수 있다. 이를 통해 개발자는 모호한 비호환성으로부터 보호받는 동시에 ‘몽고DB 방식을 구현하는 기준으로서 몽고DB의 역할을 강화할 수 있다.
마이그레이션 친화적인 기준을 지지. 시장이 안정성을 요구하는 영역(ID, BSON 타입, 인덱스 동작, 오류 코드 등)에서 몽고DB는 기교보다 예측 가능성을 우선할 수 있다. 표준은 몽고DB의 혁신을 저해하지 않으면서 이런 요소를 정의할 수 있다. ANSI SQL의 역사가 이미 보여주고 있다. 즉, 80%는 표준화하고 20%는 혁신하고 최고의 아이디어를 표준에 다시 반영하거나 부가 가치 확장으로 유지하는 방식이다.
중립성 활용. 개발자는 업체 중립적인 거버넌스를 신뢰한다. 리눅스 재단은 여러 업체가 참여하는 공동 관리와 투명한 의사 결정을 장려하는 기술 운영 위원회와 헌장을 두고 있다. 몽고DB는 여기에 참여할 방법을 모색하고, 명확한 범위의 아티팩트(테스트 및 사양)를 기여하고, 실용성과 몽고DB 모델에 대한 충실성을 균형 있게 반영하는 호환성 ‘프로파일’을 마련하는 데 힘을 보태야 한다. 다시 한번 말하지만 통제보다 영향력의 힘이 더 크다.
고객이 느낄 수 있는 부분을 차별화. 표준은 시장을 성장시키고 경험은 거래를 성사시킨다. 아틀라스의 뛰어난 운영 편의성과 보안, AI 통합, 데이터 계층화, 다중 지역을 사용한 회복탄력성, 그리고 문서 모델 기반의 ‘전체 앱’ 툴에 더욱 집중해야 한다. 목표는 다른 사람들이 ‘몽고DB의 언어로 말하는 것’을 막는 것이 아니라, 그렇게 하더라도 아틀라스가 여전히 더 나은 경험을 제공하도록 하는 것이다.
도큐먼트DB가 문서 데이터베이스에 대해 신뢰할 수 있고 중립적인 표준을 성공적으로 확립한다면 두 가지 일이 일어날 것이다. 첫째, 문서 우선 설계(document-first design) 시장이 성장한다. 설계자들은 원하는 예측 가능성을 얻고 팀이 요구하는 기술 이식성도 확보하게 된다. 이렇게 되면 SQL/관계형 데이터베이스가 당연한 듯이 차지해왔던 워크로드를 가져오게 된다. 둘째, 몽고DB의 상대적 강점이 더욱 강화된다. 문서 모델링을 시도하는 데 따르는 마찰이 줄어들면서 더 많은 팀이 몽고DB 아틀라스를 평가하게 될 것이다.
몽고DB는 오랜 기간 동안 기존 문서 데이터베이스 파이의 대부분을 차지하기 위해 노력해왔다. 도큐먼트DB의 움직임은 그 시장 자체를 키울 수 있는 기회다. 표준을 받아들이고 그 표준을 만드는 일을 돕고 이끌어야 한다. 그리고 몽고DB가 대규모 환경에서 제공할 수 있는 경험을 바탕으로 자신 있게 경쟁해야 한다.
몽고DB가 개방형 문서 표준을 정의하는 일을 돕지 않는다면 포스트그레스는 개발자를 SQL/관계형 캠프에 단단히 묶어 둘 것이다. 그것이야말로 몽고DB가 감당할 수 없는 결과다.
dl-itworldkorea@foundryco.com
관련자료
-
링크
-
이전
-
다음





