문서 메뉴

문서 홈애플리케이션 개발MongoDB 매뉴얼

MongoDB 7.0 릴리스 노트

이 페이지의 내용

  • 패치 릴리스
  • Atlas 검색 인덱스 관리
  • 일반 변경 사항
  • 보안
  • 집계
  • 시계열
  • 샤딩
  • 6.X-시리즈 신속 릴리스에 도입된 변경 사항
  • 플랫폼 지원
  • 업그레이드 절차
  • 다운그레이드 고려 사항
  • 다운로드
  • 이슈 신고하기

이 페이지에서는 MongoDB 7.0에 도입된 변경 사항과 새로운 기능에 대해 설명합니다.

MongoDB 7.0 은 메이저 릴리스이므로 MongoDB Atlas와 온프레미스 배포 모두에서 지원됩니다. MongoDB 7.0 에는 MongoDB Rapid Release 6 에 도입된 변경 사항이 포함되어 있습니다.1, 6.2 및 6.3. 이러한 Rapid Release에 도입된 변경 사항을 확인하려면 6.X-시리즈 Rapid Release에 도입된 변경 사항을 참조하세요.

Major Release와 Rapid Release의 차이점은 MongoDB 버전 설명을 참조하세요.

경고

과거 릴리스 제한 사항

아래의 중요 공지는 일부 이전 MongoDB 버전에 영향을 미칩니다. 배포가 중요 주의보의 영향을 받는 기능에 따라 달라지는 경우 사용 가능한 최신 패치 릴리스로 업그레이드하십시오.

이슈
영향을 받는 버전
서버-77506
7.0.0 - 7.0.2
7.0.0 - 7.0.2 (메타필드 임베디드 개체에 의해 샤딩된 시계열 컬렉션)
7.0.0 - 7.0.5
7.0.0 - 7.0.6
7.0.0 - 7.0.6

수정된 문제:

  • 서버-79637 잘못된 쿼리로 인해 상관관계가 있는 술어를 사용하여 TS 외부 컬렉션으로 $lookup이 발생합니다.

  • 서버- 컬렉션 UUID 없이 applyOps 인덱스 삭제/삭제시82349 Mongo 가 충돌합니다.7

  • 서버-86407 유효성 검사는 다음과 같은 경우에 완전한 결과를 생성하지 않습니다.

  • 서버-88173 BinData 비트 비교는 많은 경우에 잘못된 결과를 제공합니다.

  • WT-10807 트리 워크의 일부로 메모리 내 삭제된 페이지 건너뛰기

  • 7.0.9에서 모든 JIRA 문제가 종료됨

  • 7.0.9 변경 로그

수정된 문제:

수정된 문제:

  • 서버-84368 비어 있지 않은 샤드 컬렉션에 대해 오래된 mongos에서 실행되는 경우 CreateIndex가 StaleConfig로 실패합니다.

  • 서버-84628 읽기/쓰기 고려에 대한 mongos의 시작 경고

  • 서버-85459 [v7.0] bucketRoundingSeconds 매개 변수는 fCV 6 의 노드에서 허용됩니다.0,7 바이너리 .0

  • 서버-85869 구성 샤드에서 전체 찾기는 오래된 데이터를 반환할 수 있습니다.

  • 서버-87061 샤딩된 다중 문서 트랜잭션은 동시 리샤딩 작업의 부분적인 효과를 관찰할 수 있습니다.

  • 7.0.7에서 모든 JIRA 문제가 종료됨

  • 7.0.7 변경 로그

중요

MongoDB Server가 신뢰할 수 없는 연결에 성공할 수 있는 문제를 수정했습니다.

MongoDB 7 에서 CVE-2024-1351 로 인해.0 이전의 {3 7.0.6 --tlsCAFileCAFile 의 특정 구성에서 MongoDB Server는 피어 인증서 유효성 검사를 건너뛰어 신뢰할 수 없는 연결이 성공할 수 있습니다.

이렇게 하면 인증서 유효성 검사 실패로 인해 닫혔어야 하는 연결 및 TLS에서 제공하는 보안 보장을 효과적으로 줄일 수 있습니다. 이 문제는 다음 MongoDB Server 버전에 영향을 미칩니다.

  • 7.0.0 - 7.0.5

  • 6.0.0 - 6.0.13

  • 5.0.0 - 5.0.24

  • 4.4.0 - 4.4.28

CVSS 점수: 8.8

CWE: CWE-295: 부적절한 인증서 유효성 검사

수정된 문제:

  • 서버-72703 $out의 db lock을 MODE_IX로 다운그레이드합니다.

  • 서버-82353 다중 문서 트랜잭션은 movePrimary가 동시에 실행될 때 문서를 놓칠 수 있습니다.

  • 서버-84338 최상위 $or 쿼리로 인해 잘못된 결과를 반환하는 잘못된 SBE 계획 캐시 항목이 발생할 수 있습니다.

  • 서버-84723 샤딩된 다중 문서 트랜잭션은 동시 DDL 작업의 부분적인 효과를 관찰할 수 있습니다.

  • WT-11062 ref addr를 안전하게 해제하여 동시 액세스를 허용합니다.

  • 7.0.6에서 모든 Jira 이슈 종료

  • 7.0.6 변경 로그

수정된 문제:

  • 서버-33494 WT SizeStorer는 이전 항목을 삭제하지 않습니다.

  • 서버-80363 wtimeout이 설정되면 서버 기본 writeConcern이 적용되지 않습니다.

  • 서버-83091 $or 쿼리는 계획 열거 중에 무한 루프를 트리거할 수 있습니다.

  • 서버-83830 엔터프라이즈 빌드에서 storageEngine.inMemory 옵션을 사용하여 복제본 세트에 컬렉션을 생성하면 세컨더리가 중단됩니다.

  • WT-7929 체크포인트 중 FTDC 중단을 방지하는 솔루션 조사

  • 7.0.5에서 모든 Jira 이슈 종료

  • 7.0.5 변경 로그

수정된 문제:

수정된 문제:

수정된 문제:

  • 서버-74954 $를 포함하거나 $elemMatch 추가 조건을 다시 작성할 때 잘못된 결과

  • 서버-79771 NetworkInterfaceExceededTimeLimit에 대한 리샤딩 작업 복원력 만들기

  • 서버-79912 CheckReplDBHash가 잘못된 BSON으로 인한 system.buckets 컬렉션 실패를 보고합니다.

  • 서버-79982 일괄 카탈로그 작성자는 HistoricalCatalogIdTracker::cleanup()과 동시에 실행되어 잘못된 PIT 찾기 결과를 초래할 수 있습니다.

  • 서버-80488 밸런서 분할 청크 정책에서 라우팅 테이블 트래버스 방지

  • 7.0.2에서 모든 Jira 이슈 종료

  • 7.0.2 ChangeLog

수정된 문제:

  • 서버-71627 캐시된 컬렉션 경로 정보를 새로 고치면 1 백만 청크가 있는 클러스터에 대한 모든 클라이언트 요청이 심각하게 차단됩니다.

  • 서버-77183 $project 뒤에 $group이 오는 경우 때때로 잘못된 결과가 표시됨

  • 서버-80256 QueryPlannerAnalysis::explodeForSort는 인덱스 스캔이 연결되지 않은 결과를 생성한다고 가정해서는 안 됩니다.

  • 7.0.1에서 모든 Jira 이슈 종료

  • 7.0.1 변경 로그

이 페이지의 나머지 부분에서는 MongoDB 7.0에 도입된 변경 사항과 새로운 기능에 대해 설명합니다.

MongoDB 7 부터 시작.0, mongosh 메서드 및 데이터베이스 명령을 사용하여 Atlas Search 인덱스 를 관리할 수 있습니다. Atlas Search 인덱스 명령은 MongoDB Atlas 에서 호스팅되는 배포에만 사용할 수 있으며, Atlas 클러스터 계층이 M10 이상이어야 합니다.

Atlas Search 인덱스를 관리하려면 다음 명령을 사용하세요:

이름
설명

지정된 컬렉션에 Atlas Search 인덱스를 만듭니다.

기존 Atlas Search 인덱스를 삭제합니다.

지정된 컬렉션의 기존 Atlas Search 인덱스에 대한 정보를 반환합니다.

기존의 Atlas Search 인덱스를 업데이트합니다.

이름
설명

지정된 컬렉션에 하나 이상의 Atlas Search 인덱스를 만듭니다.

기존 Atlas Search 인덱스를 삭제합니다.

기존의 Atlas Search 인덱스를 업데이트합니다.

이름
설명
모든 컬렉션 또는 특정 컬렉션에 대한 샘플링된 쿼리 나열

지정된 컬렉션의 기존 Atlas Search 인덱스에 대한 정보를 반환합니다.

MongoDB 7.0.3부터 (및 6.0.12 및 5.0.22), 해시 샤드 키에 대한 인덱스를 삭제할 수 있습니다.

이렇게 하면 해시 샤드 키로 샤딩된 컬렉션에 대한 데이터 삽입 속도를 높일 수 있습니다. 또한 mongosync를 사용하면 데이터 수집 속도를 높일 수 있습니다.

자세한 내용은 해시된 샤드 키 인덱스 삭제를 참조하세요.

MongoDB 7.0부터는 저속 쿼리에 대한 로그 메시지에 새로운 캐시 새로 고침 시간 필드가 포함됩니다.

버전 7 부터 시작됩니다.0, MongoDB는 기본 알고리즘을 사용하여 최대 동시 스토리지 엔진 트랜잭션 수(읽기 및 쓰기 티켓 모두 포함)를 동적으로 조정하여 과부하 시 데이터베이스 처리량을 최적화합니다.

다음 표에는 MongoDB 7.0과 이전 릴리스의 오버로드 시나리오를 식별하는 방법이 요약되어 있습니다.

버전
과부하 시나리오 진단
7.0

많은 수의 작업의 대기 중인 상황이 오랫동안 지속되면 과부하가 걸렸을 가능성이 높습니다.

장시간 동안 동시 스토리지 엔진 트랜잭션(티켓) 가용성이 0이라고 해서 과부하가 발생한 것은 아닙니다.

6.0 및 이전 버전

많은 수의 작업의 대기 중인 상황이 오랫동안 지속되면 과부하가 걸렸을 가능성이 높습니다.

오랜 시간 동안 현재의 스토리지 엔진 트랜잭션(티켓)의 가용성이 0인 경우에도 과부하가 걸렸을 가능성이 높습니다.

자세한 내용은 다음을 참조하세요.

MongoDB 7.0부터 currentOp 명령과 db.currentOp() 메서드에 이러한 새로운 필드가 포함됩니다.

MongoDB 7.0부터 currentOp 집계 단계에 이러한 새로운 필드가 포함됩니다.

MongoDB 7.0부터 복합 와일드카드 인덱스를 만들 수 있습니다. 복합 와일드카드 색인에는 하나의 와일드카드 용어와 하나 이상의 추가 색인 용어가 있습니다.

알려진 패턴에 대한 쿼리를 지원하고 컬렉션 내 총 인덱스 수를 제한하려면 복합 와일드카드 인덱스를 사용하세요.

MongoDB 7.0부터 16MB보다 큰 변경 스트림 이벤트가 있는 경우, 새로운 $changeStreamSplitLargeEvent 단계를 사용하여 이벤트를 더 작은 조각으로 분할할 수 있습니다.

다음의 새 지표는 대규모 변경 스트림 이벤트에 관한 정보를 보고합니다.

serverStatus 출력에 다음과 같은 새로운 필드가 포함됩니다.

계획 캐시 메트릭
queryAnalyzer 메트릭

MongoDB 7.0부터 슬롯 기반 쿼리 실행 엔진은 광범위한 찾기 및 집계 쿼리의 성능을 개선합니다.

이제 느린 쿼리 로그 메시지에는 쿼리를 완료한 쿼리 엔진을 나타내는 queryFramework 필드가 포함됩니다.

  • queryFramework: "classic" 은 클래식 엔진이 쿼리를 완료했음을 나타냅니다.

  • queryFramework: "sbe" 는 슬롯 기반 쿼리 실행 엔진이 쿼리를 완료했음을 나타냅니다.

MongoDB 7.0부터는 새로운 USER_ROLES 시스템 변수를 사용하여 현재 사용자의 역할을 반환할 수 있습니다.

USER_ROLES 이 포함된 사용 사례에 대해서는, 찾기, 집계, 보기, updateOne, updateManyfindAndModify 예제를 참조하세요.

MongoDB 7.1(및 7.0, 6.3.2, 6.0.6 및 5.0.18)부터 사용할 수 있습니다.

MongoDB에 다음과 같은 청크 마이그레이션에 관한 새로운 샤딩 통계가 포함되었습니다.

MongoDB 7 부터 시작.0 ( 6.0.13, 5.0.24), 느린 쿼리 로그 메시지의 totalOplogSlotDurationMicros 은(는) 쓰기 작업이 커밋되기까지의 시간을 보여줍니다. 타임스탬프를 사용하여 스토리지 엔진 쓰기 및 실제로 커밋할 수 있습니다. mongod 는 병렬 쓰기를 지원합니다. 그러나 커밋 타임스탬프가 있는 쓰기 작업은 순서에 관계없이 커밋합니다.

자세한 내용은 저속 작업 로깅을 참조하세요.

MongoDB 7.0에는 analyzeShardKey 명령과 관련된 매개 변수가 추가되었습니다.

MongoDB 7.0은 AutoMerger가 활성화되면 자동 병합 라운드 사이의 시간을 초 단위로 지정하는 autoMergerIntervalSecs 매개 변수를 추가합니다. autoMergerIntervalSecs 는 샤드 클러스터의 config 서버에서만 설정할 수 있습니다.

MongoDB 7.0은 자동 병합이 활성화된 경우 동일한 컬렉션에서 자동 병합에 의해 시작된 병합 사이의 최소 시간(밀리초)을 지정하는 autoMergerThrottlingMS 추가합니다. autoMergerThrottlingMS 는 샤드 클러스터의 config 서버에서만 설정할 수 있습니다.

MongoDB 7.0은 밸런싱 속도를 조절할 수 있는 balancerMigrationsThrottlingMs 매개변수를 추가했습니다.

MongoDB 7.0에는 클러스터 연결 상태 메트릭과 관련된 gEnableDetailedConnectionHealthMetricLogLines 로그 메시지 집합이 로그에 표시되는지 여부를 지정할 수 있는 매개 변수가 추가되었습니다.

MongoDB 7.0은 OpenID oidcIdentityProviders Connect 인증을 사용할 때 ID 공급자(IDP) 구성을 지정할 수 있는 매개 변수를 추가합니다.

MongoDB 7.0에는 configureQueryAnalysis 명령과 관련된 매개 변수가 추가되었습니다.

MongoDB 7.0에서는 동등 쿼리를 포함한 Queryable Encryption이 정식 출시되었습니다. 정식 출시 버전이 개선되면서 이제 Queryable Encryption Public Preview와는 호환되지 않으며, 이 기능은 이제 정식 출시 버전의 기능이므로 사용할 수 . 자세한 내용은 MongoDB 7.0의 호환성 변경을 참조하세요.

MongoDB 7.0(및 6.0.6) useLegacyProtocol 설정을 추가합니다. 이 설정은 MongoDB 서버와 KMIP 프로토콜 버전 1.0 또는 1.1을 사용하는 KMIP 서버의 연결을 허용합니다.

MongoDB 7.0 및 6.0.7부터 시작됩니다, MongoDB는 이러한 운영 체제에서 OpenSSL 3.0 및 OpenSSL FIPS 공급자를 지원합니다.

  • 레드햇 엔터프라이즈 리눅스 9

  • Amazon Linux 2023

  • 우분투 리눅스 22.04

자세한 내용은 TLS/SSL(전송 암호화)을 참조하세요.

7.0 버전부터 MongoDB Enterprise는 OpenID Connect 인증을 지원합니다. OpenID Connect는 OAuth2를 기반으로 구축된 인증 계층입니다. OpenID Connect를 사용하여 MongoDB 데이터베이스와 타사 ID 공급자 간에 Single Sign-On을 구성할 수 있습니다.

새 운영자:

이름
설명

중앙값, 즉 50번째 백분위수의 근사치를 스칼라 값으로 반환합니다.

이 연산자는 축적자와 애그리게이션 표현식으로 사용할 수 있습니다.

지정된 백분위수 값에 해당하는 스칼라 값의 배열을 반환합니다.

이 연산자는 축적자와 애그리게이션 표현식으로 사용할 수 있습니다.

MongoDB 7.0에는 $dateToString 연산자와 함께 사용할 수 있는 다음 형식 지정자가 추가되었습니다.

지정자
설명
가능한 값
%b
월 이름 축약형(3글자)
jan-dec
%B
월 이름 전체
january-december

MongoDB 7.0은 명령에 delete 기반한 이러한 작업에서 대부분의 시계열 제한을 제거합니다.

MongoDB 7.0부터는 checkMetadataConsistency 명령을 사용하여 클러스터, 데이터베이스, 컬렉션 수준에서 샤딩 메타데이터의 불일치 여부를 확인할 수 있습니다. 이러한 불일치는 다음과 같은 경우에 발생할 수 있습니다.

  • MongoDB 이전 릴리스를 실행하는 동안 클러스터에 버그가 발생해 업그레이드를 하는 경우

  • 클러스터 카탈로그를 손상시키는 수동 개입

이제 mongosh 를 통해 다음 헬퍼 메서드를 사용할 수 있습니다.

명령이 확인하는 불일치에 대한 자세한 내용은 불일치 유형을 참조하세요.

MongoDB 7.0부터 mergeAllChunksOnShard 명령은 주어진 컬렉션에 대해 샤드가 소유하고 있는 병합 가능한 청크를 모두 찾아서 병합합니다.

MongoDB 7.0부터 자동 병합 기능은 병합성 요구 사항을 충족하는 청크를 자동으로 병합할 수 있습니다. 자동 병합은 기본적으로 활성화되어 있습니다.

MongoDB 7.0부터는 다음 메서드를 사용해 AutoMerger 동작을 제어할 수 있습니다.

MongoDB 7.0부터 configureCollectionBalancing명령은 enableAutoMerger 파라미터를 받아들입니다. AutoMerger에서 이 컬렉션을 고려할지 여부를 설정하려면 enableAutoMerger 를 사용하십시오.

MongoDB 7.0부터는 매개변수를 사용하여 사용자 작업보다 고아 문서 정리의 우선순위를 rangeDeleterHighPriority 정하거나 우선순위를 낮출 수 있습니다.

MongoDB 7.0에서는 카탈로그 캐시 새로 operationsBlockedByRefresh 고침 활동에 의해 차단된 작업에 대한 통계를 포함하는 문서가 제거되었습니다. 그 이유는 operationsBlockedByRefresh mongos 작업이 카탈로그 새로 고침 활동에 의해 차단되지 않은 경우에도 에서 컬렉션 라우팅 정보를 사용하는 모든 작업의 카운터가 증가했기 때문입니다.

MongoDB 7.0에는 샤드 키 평가를 위한 메트릭을 계산할 수 있는 analyzeShardKey 명령과 db.collection.analyzeShardKey() 메서드가 추가되었습니다.

MongoDB 7.0에는 컬렉션에 대한 쿼리 샘플링을 구성할 수 있는 configureQueryAnalyzer 명령이 추가되었습니다. MongoDB 7.0은 configureQueryAnalyzer 명령을 감싸는 db.collection.configureQueryAnalyzer() 추가했습니다. 샘플링된 쿼리는 analyzeShardKey 샤드 키의 읽기 및 쓰기 분배에 관한 지표를 계산할 수 있도록 에 정보를 제공합니다.

MongoDB 7.0에는 다음 Rapid Release의 변경 사항과 기능이 포함되어 있습니다.

MongoDB 7.0은 PPC64LEs390x 아키텍처에서 RHEL 7 / CentOS 7 / Oracle 7에 대한 지원을 제거합니다.

중요

기능 호환성 버전

6.0 배포에서 MongoDB 7.0으로 업그레이드하려면 6.0 배포에 featureCompatibilityVersion 로 설정된 6.0 이 있어야 합니다. 버전을 확인하려면 다음을 입력하세요.

db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )

MongoDB 7.0으로 업그레이드하는 방법은 사용 중인 MongoDB 배포 관련 업그레이드 지침을 참조하세요.

7 으)로의 업그레이드에 대한 지침이 필요한 경우.0, MongoDB 전문 서비스는 MongoDB 애플리케이션의 중단 없이 원활하게 전환할 수 있도록 주요 버전 업그레이드 지원을 제공합니다. 자세한 내용은 MongoDB 컨설팅을 참조하세요.

MongoDB는 단일 버전 다운그레이드만 지원합니다. 현재 릴리스보다 이전 버전인 릴리스로 다운그레이드할 수 없습니다.

예를 들어, 7.0 시리즈를 6.0 시리즈 배포로 다운그레이드할 수 있습니다. 하지만 6.0 시리즈 배포를 5.0 시리즈 배포로 한 단계 더 다운그레이드하는 것은 지원되지 않습니다.

MongoDB 7.0부터 시작:

  • 바이너리 다운그레이드는 더 이상 MongoDB 커뮤니티 에디션에서 지원되지 않습니다.

  • 배포서버의 fCV를 MongoDB Rapid Release 버전으로부터 또는 해당 버전으로 다운그레이드할 수는 없습니다.

  • 2} 명령에는 추가 매개 변수 setFeatureCompatibilityVersionconfirm 필요하며, 이 매개 변수를 로 설정해야 true fCV를 업그레이드하거나 다운그레이드할 수 있습니다.

  • 배포의 FCV 업그레이드하거나 다운그레이드하는 경우 지원팀의 지원 없이는 Enterprise 배포의 2진법 버전을 다운그레이드할 수 없습니다.

MongoDB 7.0에는 이전 릴리스와 호환되지 않는 기능이 포함되어 있습니다. 7.0에서 이전 릴리스로 다운그레이드하려면 이러한 기능을 사용하는 데이터를 제거해야 합니다.

자세한 내용은 이전 버전과 호환되지 않는 기능을 참조하세요.

MongoDB 7 을(를) 다운로드합니다.0, MongoDB 다운로드 센터로 이동합니다.

문제를 보고하려면 MongoDB GitHub 리포지토리 를 참조하세요. MongoDB 서버 또는 관련 프로젝트 중 하나에 대한 JIRA 티켓을 제출하는 방법에 대한 지침을 참조하세요.

← 7.1 변경 로그