주니어 백엔드/DevOps의 우당탕탕 스토리

Story of Jr. Backend/DevOps Developer.
ko en

Mongodb Apac 2022 - MongoDB Developer Data Platform

원어(English) 세션

세션 스피커

Michael Cahill MongoDB Labs Vice President

세션 이름

MongoDB Developer Data Platform

전체적인 관점에서,

  • 코로나 상황으로 지난 2년간 Digital First Strategy 가 대두됨.
  • 리테일과 같은 카테고리의 산업 군, 게임 산업 군이 가장 빠르게 수면 위로 올라옴.

개발자 관점에서,

  • 정말 빠른 개발이 필요
    • 코로나 상황으로 Digital First Strategy가 대두되면서 코로나로 변화된 시장을 빠르게 잡아야 되었음.
    • 다가오는 새로운 위협에 빠르게 대응할 필요가 있었음.
  • MongoDB의 메인 Vision: Developer Productivity
    • A key to made MongoDB Popular.
      • 데이터 작업으로 인한 마찰(Friction)|어려움 을 없애기. 데이터 작업은 쉬워야 한다.
      • 혁신의 가속화 -> 개발자들은 혁신적인 어플리케이션을 설계/빌드 하는 것에 집중해야 한다.
  • A Document Model
    • Document Model은 MongoDB의 핵심적인 모델이며, 사용자 관점으로 보았을 때 12년동안 얻은 신규 사용자 보다 최근 12개월동안 얻은 신규 사용자가 훨씬 더 많음.

Atlas Cloud Service

A Fully Managed MongoDB Cloud Database Service

  • 처음 Atlas를 도입할 때, 많은 사람이 DB Cloud Service를 DB회사가 런칭하는 것은 미친 짓이라고 생각함.
  • 결국 Atlas는 Unified Platform for RealTime & In-App Analytics라고 정의할 수 있음.
  • 그러나,
    • 2014년도의 Paid(유료/기업) 고객 -> 1,100 기업 고객
    • 현재 Paid(유료/기업) 고객 -> 37,000+ 기업 고객
    • 대표적인 고객으로 Toyota Connected Cars 에서 사용한다고 함.(자율주행 실시간 처리)
    • 그 이외에 Billing Transaction을 다루는 은행 기업에서도 많이 쓰인다고 함.
  • Generally Available - Atlas Serverless MongoDB
    • Full Power of MongoDB, No Scaling Tradeoffs
    • 사용량에 따른 할인 정책 적용.
      • 다른 클라우드 프로바이더의 Serverless는 콜드부팅, 사용량 증가에 따른 선형적인(Linear) 가격 증가 가 문제였음.
      • Atlas는 사용량에 따른 추가 할인 정책을 적용해서 이러한 문제를 해결했다고 함.(가격 정책)

세션 회고

Overall

역시 개발자의 관점도 관점이지만, 시장을 전체적으로 확인하고 이에 맞추어 개발자를 생각하며 대응하는 것이 MongoDB의 Keys to Success가 아니었나 조심스럽게 추측합니다. 물론 NoSQL(Document Model)등의 니즈도 많아졌지만, 그러한 니즈를 어떻게 하면 쉽게풀어낼 수 있는지에 대해서 많은 고민을 하고, 최대한 개발자들이 다른 곳에 신경쓰지 않고 혁신에 신경쓰게 만들어내면서 시장 점유율을 계속 높여갈 수 있지 않았나 생각합니다.

MongoDB는 계속해서 시장의 상황과 개발자의 편의/문제점을 생각하면서 MongoDB를 발전시킬 것으로 보입니다. 3.x 버전대 -> 4.x버전대로 오기까지의 매우 많은 변경점이 있었던 것 처럼, 5.x -> 6.x 버전대도 정말 많이 변경될 것으로 예상됩니다. 특히 오늘 언급된 6.x에서 새로 Preview성 기능으로 나오는 SQL Migrator 기능은 유연한 NoSQL이 필요하지만, NoSQL 설계/운영에 어려움을 겪는 사람들을 위해서 아에 타겟팅해서 나온 제품이라고 볼 수도 있을 것 같네요.

이 세션은 제 개인적인 관점에서 기술적으로 많이 배워갈 수 있는 유용한 세션은 아니었습니다. 그러나, MongoDB가 어떠한 관점으로 개발자 시장과 현재 시장을 바라보고 있는지 알 수 있는 시간이었고, 제가 기존에 알고 있던 데이터베이스만 집중하는 것이 아니라, 데이터 개발 방법론까지 많이 신경쓰고 확장하고 있다는 사실이 매우 인상깊었습니다. 특히, Atlas플랫폼을 보면서요.

Atlas, First Look.

요건 살짝 머리 탕 맞은 느낌!

개인 사이드 프로젝트에서는 MongoDB를 메인 데이터베이스로 사용할 정도로 애용하는 데이터베이스인데, 사실 알고 있던 것은 빙산의 일각이라는 느낌을 아주 쎄게 받은 부분이었습니다. 사실 개인 프로젝트를 진행할 때는 별로 돈을 크게 쓸 이유는 없어서 로컬 K8s나 TestContainer, 혹은 docker-compose로 MongoDB를 컨테이너로 돌려서 쓰고, 공식 MongoDB PaaS는 쓸 생각을 안했는데요, 이번 세션을 들으면서 앞으로 PaaS 서비스도 충분히 많이 사용해 보아야 겠다는 생각을 많이 하게 되었던 세션이었습니다.

Atlas는 Fully Managed MongoDB를 제공해 주는 것은 물론, 기존의 Elasticsearch, Logstash, Kibana를 모두 대체시킬 하나의 데이터 플랫폼을 구축해 나가고 있었습니다. MongoDB팀은 데이터 저장소와, 데이터 검색 엔진이 서로 분리되어서 구축하는 과정 전체를 불편하다고 보고 있고, 그렇기 때문에 Atlas라는 플랫폼에서 MongoDB를 활용하면 빠르게 검색 인덱스를 구축할 수 있고, 검색 인덱스 싱크 또한 모두 자동으로 Atlas에서 맞춰준다고 합니다. 시각화를 위한 대시보드는 물론이구요.

Atlas, But

이때까지 몰랐던 사실이고, 사실 세션 내용을 들을 때 많이 놀랐지만, 생각해 보면 기존에 RDBMS를 사용하는 조직에서는 쉽게 사용할 수 없는 구조도 사실입니다. Atlas플랫폼은 MongoDB만을 위한 플랫폼입니다. 즉 MongoDB Collection이 있어야지 Search와 관련된 내용들이 유효한 것인데, 많은 조직에서 RDBMS를 NoSQL로 마이그레이션 하는 작업을 감수할 것이라고 생각되지는 않습니다.(그러나, 6.x에서 나오는 자동 Relational Migrator은 스키마 분석과 추천까지 해준다고 하니… 판세가 뒤집힐 수도 있다고 봅니다!)

즉, Atlas 플랫폼은 MongoDB를 쓰지 않으면 결국 Atlas에서 자랑하는 기능들을 사용할 수 없게 되는 것이죠. MongoDB도 이를 충분히 인지하고 있다고 하고, 그렇기 때문에 RDBMS를 자동으로 마이그레이션 하는 것을 제공한다고 하니, 앞으로 미래가 더 기대되는 바입니다!