|

몽고DB의 제언, ‘똑똑한’ 애플리케이션 데이터 플랫폼 구축 방안

이 기사는 지난 5월 12일 진행된 바이라인플러스 웨비나 <최신 클라우드 데이터베이스 기술과 동향>의 발표 세션을 기사화한 것입니다. 

디지털전환(DT)이 화두인 요즘은 기업이 데이터를 이용해 소프트웨어를 얼마나 잘 구축하는지가 중요하다. 아직까지 많은 기업들은 최신 애플리케이션, 고객 경험을 위해 기본 데이터 인프라에 전적으로 의존하고 있다. 이때 문제는 데이터를 사용하는 방식은 근본적으로 바뀌었지만, 애플리케이션의 데이터 인프라는 바뀌지 않았다는 점이다. 여전히 많은 기업들이 40년 이상의 기술 기반 인프라를 사용하고 있다.

결국 현대화된 애플리케이션 데이터베이스를 사용해야 개발자 입장에선 효율적으로 일을 할 수 있고, 기업의 데이터 활용이 원활해질 수 있다는 것이 몽고DB의 주장이다.

몽고DB는 지난 12일 <바이라인 네트워크>가 주최한 ‘최신 클라우드 데이터베이스 기술과 동향’ 웨비나에서 현대화된 애플리케이션 데이터 플랫폼 구축 방안을 설명했다.

먼저, 몽고DB는 세 가지 이유에서 기업이 디지털 혁신에 어려움을 겪고 있다고 지적했다. 첫째, 대부분의 기업에서 사용하는 관계형 데이터베이스는 서로 다른 문제를 해결하기 위해 설계됐다. 과거에는 스토리지 가격이 비싸고 인력 비용이 저렴했으나, 지금은 반대의 상황이기 때문에 기업이 데이터베이스 문제를 해결하기 위해 비용 측면에서 어려움을 겪고 있다.

둘째, 기업이 지금까지 만들어 온 데이터 구조는 최신 데이터와 개발자가 작업하는 객체와 충돌한다. 셋째, 데이터 구조의 경직성으로 응용 프로그램에 대한 실험, 반복 작업이 어렵다.

이런 상황에서 추가적인 사용자 경험을 구축하기 위해 기업은 관계형 데이터베이스 관리시스템(RDBMS) 주변에 저장소를 추가해야 한다. 김동욱 이사는 “RDBMS의 공백을 메우기 위한 NoSQL 데이터 저장소와 연관검색을 위한 검색엔진이 필요하다”며 “디바이스에서 데이터를 관리하고 백엔드와 동기화하기 위한 모바일, 엣지 데이터베이스를 구축해야 한다”고 해결방안을 제시했다.

풍부한 애플리케이션 경험을 지원하기 위해서는 전용 분석 시스템이 필요하다. 그러나 많은 기업들이 데이터 배포 시 유연성이나 마이그레이션 방법이 없는 단일 공급업체의 제품에 종속되어 있다. 이 경우 개발자 경험의 비효율, 데이터 통합 작업 어려움, 데이터 중복 등의 문제가 발생한다.

김동욱 이사는 “확장할 수 있는 현대적인 분산 데이터베이스가 필요하다”며 “비용을 들여 새로운 데이터 파이프라인을 만들지 않고 기존에 있는 데이터를 기반으로 검색 기능 지원, 데이터 동기화 지원, 데이터 실시간 분석 및 시각화 등의 기능을 지원할 수 있어야 한다”고 말했다. 그는 이어 “클라우드 간 데이터 마이그레이션이 자유로워야 하며, 애플리케이션 코드로 어느 환경에서나 실행할 수 있어야 한다”고 강조했다.

왼쪽은 일반적 데이터 모델, 오른쪽은 몽고DB를 활용한 다큐먼트 데이터 모델

몽고DB의 글로벌 멀티클라우드 데이터베이스인 ‘몽고DB 아틀라스’는 이러한 기능을 포함하고 있다. 몽고DB 아틀라스는 크게 세 가지 특징이 있다.

먼저, 직관적이고 유연한 다큐먼트 데이터 모델을 보유하고 있다. 다큐먼트 데이터 모델을 기반으로 쿼리 엔진과 애플리케이션 프로그래밍 인터페이스(API)를 제공한다. 마지막으로 복원, 확장을 위한 분산 시스템 아키텍처를 가지고 있다.

이때 다큐먼트 데이터 모델은 이렇다. 일반적으로 데이터 모델은 여러 개의 테이블로 이뤄진 복잡한 관계로 얽혀있다. 이런 테이블 설계는 관계형 테이터베이스의 저장 구조 한계에서 비롯된다는 것이 몽고DB의 설명이다.

고객이라는 객체에서 다양한 관계가 발생하고 이를 효율적으로 저장하기 위해 일반적으로 기업은 여러 개의 테이블로 분리해 저장한다. 실제 애플리케이션에는 고객이라는 하나의 객체가 존재하지만, 관계형DB로 저장할 때 여러 개의 테이블로 나눠 저장할 수밖에 없다.

몽고DB 아틀라스를 통해 기업은 원하는 방식대로 데이터를 모델링할 수 있다.

김동욱 이사는 “반면 몽고DB는 애플리케이션의 객체를 그대로 DB에 저장하는 것이 가능하다”며 “몽고DB는 고객의 모든 정보를 제이슨(JSON) 기반 다큐먼트에 저장하고 RDB에서 테이블과 구성 정보를 하나의 다큐먼트 안에 저장할 수 있다”고 전했다.

이밖에도 몽고DB는 코드 객체를 자연스럽게 매핑할 수 있다는 것이 김 이사의 주장이다. ORM 사용에 대한 요구사항과 개발자와 DBA팀 간의 복잡한 상호 의존성을 제거한다.

또 모든 구조의 데이터 표현이 가능하다. 각 다큐먼트가 서로 다른 필드를 포함할 수 있으며, 스키마를 언제든지 변경할 수 있다. 쉬운 데이터 처리를 위해 20개 이상의 마이너리 인코딩된 제이슨 데이터 타입을 지원한다. 모든 주요 프로그래밍 언어의 드라이버로 접근할 수 있다는 것이 회사 측의 설명이다.

아틀라스 데이터 플랫폼은 어디서나 실행할 수 있다. 아마존웹서비스(AWS), 구글 클라우드, 마이크로소프트 애저 등 고객이 클라우드 환경을 선택할 수 있다. 클라우드 간 이중화로 고가용성을 향상하고, 클러스터를 다른 클라우드로 마이그레이션할 수 있다. 글로벌 사용자에게 서비스를 제공하는데도 활용할 수 있다.

김동욱 이사는 “전통적으로 묶여있고 극도로 이동하기 어려운 애플리케이션 핵심 부분을 처리할 수 있다”며 “아틀라스가 각 노드 데이터를 한 클라우드에서 다른 클라우드로 자동 마이그레이션 해서 다운타임이 발생하지 않으며, 모든 것이 자동화되고 추가 작업이 필요없는 완전 관리형”이라고 설명했다.

이밖에도 몽고DB 아틀라스에는 개발자나 데이터 관리자가 사용할 수 있는 서비스가 있다. 데이터베이스, 검색 및 데이터 레이크에서 단일 API, 트랜잭션·운영 및 분석 워크로드 지원, 탄력적인 인프라·서버리스, 데이터 접근·개인정보 제어, 글로벌 클러스터, 데이터 동기화 등의 기능을 지원한다.

글. 바이라인네트워크
<홍하나 기자>0626hhn@byline.network

관련 글

답글 남기기

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