MongoDB 6.0 릴리즈 소식

MongoDB 6.0 릴리즈 소식

MongoDB 5 버전을 사용중인 국내 기업은 거의 없을거라고 생각하는데, 벌써 6버전이 릴리즈 되었습니다. 전에 Naver Cloud에서 MongoDB DBA로 일하셨던(!) 현 AWS SA이신 이덕현님 말씀에 따르면, 마이너 버전이 12버전이 나오기 전에는 골치아픈 버그들이 존재하기 때문에 12버전 이상의 마이너 릴리즈가 나온 버전의 DB를 사용하거나, 버전업을 하라고 하셨는데 말이죠. MongoDB 5버전은 5.0.8 버전을 놔둔채 6버전이 출시되어 버렸습니다. 안정화가 되기도 전에 새버전 릴리즈라는 강수를 띄운 MongoDB 진영은 정말 공격적으로 개선하고 있다는 것을 보여주고 있습니다. 심지어 5.1, 5.2, 5.3은 나오지도 않은채, 어떤 기능을 개선한 버전 정도로만 공홈에 나와 있습니다.

그럼 MongoDB 6버전은 또 어떤 점이 달라졌는지, 어떤 기능들이 추가 되었는지 알아보겠습니다.

Event-driven architectures

  • 점점 더 많은 고객들이 실시간 이벤트 중심 경험을 기대하고 있으며 MongoDB는 이에 대응하고 있다.
  • Change stream이 최적화되어 더 효율적인 리소스 활용과 일부 집계 파이프라인 단계의 더 빠른 실행을 제공한다.
  • Change stream은 전체 시스템을 폴링해야 하는 높은 오버헤드 없이 MongoDB 데이터베이스, 클러스터 또는 컬렉션에 대한 변경 사항을 스트리밍하는 API를 제공한다.
  • 6.0 버전부터는 Change stream을 이용하여 변경 전후의 도큐먼트 버전을 출력할 수 있다.
  • DDL 작업도 이벤트로 표시할 수 있다.

Time-series collection

  • 성능과 정렬 개선, 전체 컬렉션을 스캔하는 것이 아닌 마지막 데이터를 반환하여 더 빠른 읽기 성능을 가짐
  • 보조 인덱스를 지원, 2dsphere 및 2d 인덱스를 포함하여 다양한 보조 인덱스 유형 추가 가능
  • 5.1부터 시계열 컬렉션에 업데이트와 삭제를 제한적으로 지원
  • 5.2부터 열 압축을 사용, 저장 공간 감소, 읽기 성능 개선
  • 5.3부터 시계열 컬렉션의 모든 필드에서 $greoNear의 파이프라인 연산자를 사용할 수 있음

capped collection

  • 기존에 capped collection의 옵션을 수정하기 위해서는 collection을 삭제하고 재생성 하는 방법 뿐이었으나 6버전부터는 명령어로 수정가능

Resilient Operations

  • 6.0부터는 파일 복사를 통한 initial sync를 지원하며, 기존보다 4배더 빠른 속도로 더 나은 프로비저닝이 가능
  • MongoDB의 분석 노드를 별도로 확장할 수 있음

Improved Shard Cluster

  • MongoDB 5.1 부터 $lookup 과 $graphlookup 이 from 파라미터를 이용해 샤딩된 클러스터에서도 지원가능
  • MongoDB 6.0부터 컬렉션을 샤딩하는데 더 이상 enableSharding명령이 필요하지 않음
  • 5.2 버전부터 기본 청크 크기가 64MB에서 128MB로 증가했음

Security

  • MongoDB 6.0 Enterprise부터 MongoDB 감사 로그를 암호화할 수 있음. 감사 로그를 구성하려면 KMIP 서버를 사용하여 MongoDB 감사 로그 암호화를 위한 키 관리를 참조
  • 클라이언트 측 필드 수준 암호화 CSFLE에는 이제 모든 KMIP 호환 키 관리 공급자에 대한 지원이 포함된다.
  • 새로운 표준인 KMIP는 암호화 개체의 저장, 조작 및 처리를 간소화한다.

Queryable Encryption

  • 암호화된 데이터를 쿼리하고, 전체 쿼리 트랜잭션을 암호화하는 기능.
  • DB 업계 최초이며, End-to-End 클라이언트 사이드의 암호화는 새롭게 암호화 된 인덱스 데이터 구조를 가지고, 검색되는 데이터는 메모리, CPU를 포함하여 데이터베이스에서 항상 암호화 된 상태로 유지

(예정) Column-stored Index

  • 올해 말에 추가될 컬럼 스토어 인덱싱을 사용하여, 도큐먼트 구조를 변경하고나 데이터를 다른 시스템으로 복사하지 않고도 분석 쿼리의 속도를 높일 수 있는 인덱스를 만들고 유지 관리 할 수 있음

 

MongoDB Cloud Atlas

  • 오픈 소스 Apache Lucene으로 구동되는 Atlas의 검색 기능은 사용자가 역 색인 기술을 구현하는 Search Facets라는 새로운 기능을 통해 다양한 차원에서 결과를 더 잘 탐색하고 구체화할 수 있도록 강화
  • Atlas Device Sync라는 새로운 기능은 Atlas의 완전 관리형 백엔드 데이터베이스를 인기 있는 모바일 개체 데이터베이스인 Realm에 연결하여 사용자 애플리케이션에 동기화된 데이터를 세부적으로 제어할 수 있도록 한다.

 

이 밖에도 몇몇 세세한 변경사항이 있습니다. 더 자세한 사항은 MongoDB 공홈의 릴리즈 노트를 참고하시기 바라며, 간단한 MongoDB 6버전 소개를 마칩니다.

미국쪽 파이는 이미 MongoDB가 엄청 커졌고, 계속 커지고 있습니다.

반면 한국은 아직도 많은 시스템이 RDBMS에 묶여 있고, 다른 나라에서는 이미 대세라는 MERN Stack이 APM을 대체하는 수단으로 아직 크게 영향력을 보여주지 못하고 있습니다.

시장 규모에 따라 데이터의 주고받는 양이 다르기 때문일지도 모르겠습니다. 일단 시작하면 금방 대규모가 되어 버리는 미국같은 나라에서는 많은 데이트를 처리할 수 있는 MongoDB 같은것이 시작 단계에도 좋은 DB로 자리 잡은것 같습니다.

그래서 많은 의견이 오갈테고, 시장의 의견을 반영하기 위해 빠른 버전업을 하는 것이 현실일 것이라고 생각이 드네요.

반면 버전업이 이렇게 빠를경우에는 사용하는 유저 입장에서 참으로 애매해 집니다. ‘과연 이 버전은 안정화 되었는가?’에 목매는 DBA나 관련 결정권자들에게는 분명 골치아픈 문제입니다.

이제 정말 시대의 흐름은 사람을 놔두질 않는것 같습니다. IT 기술들도 이렇게 빠르게 치고나가는 것을 보면 사람도 기술을 다루는 관점을 바꿔야하는 시대가 온것 같습니다.

MongoDB의 빠른 버전업과 변화는 환영할 만한 일이라고 생각을 하고, 저는 매니지드 서비스를 최대한 활용하면서, 유지보수는 밴더에 맡기고 설계나 데이터 구조, 데이터를 직접 다루는 파이를 더 키우자는 입장이기 때문에 빠른 버전을 환영합니다.

 

 

 

You may also like...

답글 남기기

이메일 주소는 공개되지 않습니다.