새로운 기능
다음 버전의 MongoDB Rust 드라이버에 도입된 새로운 기능, 개선 사항 및 수정 사항에 대해 알아보세요.
3.1의 새로운 기능
Rust 운전자 v3.1 출시하다 에는 다음과 같은 기능, 개선 사항 및 수정 사항이 포함되어 있습니다.
동일한 유형의 둘 이상의 KMS (KMS) 제공자 에 대한 지원 을 추가합니다. KMS 제공자에 학습 보려면 MongoDB Server 매뉴얼의 Queryable Encryption 을 참조하세요.
Queryable Encryption 범위 프로토콜 의 v2 에 대한 지원 을 추가합니다. Queryable Encryption 에 대한 범위 인덱스가 정식 출시되었습니다.
인덱스를 생성할 때
type
필드 에 대한 지원 을 추가합니다. 인덱스 생성에 학습 보려면 MongoDB Server 매뉴얼의 인덱스 를 참조하세요.TCP 연결을 관리하기 위한 해피 아이볼 알고리즘 을 구현합니다. 이 알고리즘 에 학습 보려면 에 대한 Rust 설명서를 참조하세요.{ 크레이트.
운전자 는 토폴로지 가 닫힐 때
TopologyDescriptionChangedEvent
이벤트 를 게시합니다.
이 출시하다 에 학습 보려면 v 릴리스 노트3.1 를 Github 참조하세요. 에서 .
3.0.1의 새로운 기능
Rust 운전자 v3.0.1 출시하다 에는 다음과 같은 기능, 개선 사항 및 수정 사항이 포함되어 있습니다.
애그리게이션이 명시적 세션 및 사용자 지정 유형 구현 내에서 실행 때 컴파일되지 않는 문제를 수정합니다.
Collection::watch()
메서드가 실행 된Collection
인스턴스 의 유형 매개변수를 사용하지 않던 문제를 수정합니다.
이 릴리스에 대해 자세히 알아보려면 Github에서 v3.0.1 릴리스 노트를 참조하세요.
3.0의 새로운 기능
Rust 운전자 v3.0 출시하다 에는 다음과 같은 기능, 개선 사항 및 수정 사항이 포함되어 있습니다.
옵션을 전달하고 세션을 시작할 때 다음과 같은 구문 변경을 도입하는 유창한 API 를 구현합니다.
비동기 메서드 옵션을 설정하다 하려면 options 구조체 매개변수를 전달하는 대신 옵션 빌더 메서드를 메서드 호출에 직접 연결합니다.
동기 메서드 옵션을 설정하다 하려면 옵션 빌더 메서드를 메서드 호출에 연결한 다음
run()
메서드를 호출합니다.별도의 options 구조체를 구성해야 하는 경우
with_options()
메서드를 메서드 호출에 연결하고 options 구조체를 매개 변수로 전달합니다.세션을 시작하려면 접미사가
_with_session
인 별도의 메서드를 사용하는 대신session()
메서드를 메서드 호출에 연결합니다.
대량 쓰기 (write) 작업에 대한 지원 을 추가합니다. 이러한 작업에 학습 보려면 대량 작업 가이드 를 참조하세요.
이벤트 모니터링 에 필요한 상용구 코드의 양을 줄이기 위해
EventHandler
유형을 도입합니다.EventHandler
유형을 사용하는 예는 모니터링 가이드를 참조하세요.async-std
비동기 런타임에 대한 지원 을 제거합니다. 이 변경 사항에 학습 보려면 비동기 및 동기 API 가이드 의 비동기 런타임 구성 섹션을 참조하세요.Rust 운전자 애플리케이션 이
no-default-features
명령줄 플래그로 컴파일되는 경우compat
기능 을 사용해야 합니다.rustls
및dns-resolution
기능은 이제 선택 사항입니다.bson-*
운전자 기능에 대한 지원 을 제거합니다. 애플리케이션 에bson
을(를) 직접 종속성으로 포함하여 이러한 기능을 선택할 수 있습니다.읽기 및 쓰기 고려 (write concern) 상수에 대한 지원 을 제거합니다. 대신 헬퍼 메서드를 사용하여
ReadConcern
및WriteConcern
값을 설정하다 합니다.Collection<T>
유형에Send + Sync
제약 조건을 추가합니다.압축기 기능이 활성화되지 않은 경우
ClientOptions::compressor
필드 를 제거합니다.ReadPreferenceOptions
필드의 유형을 변경합니다. 이제 이러한 필드에는Option<ReadPreferenceOptions>
유형이 있습니다.CollectionOptions::human_readable_serialization
옵션을 제거합니다. 대신bson::HumanReadable
래퍼 유형을 사용하여 사용자 데이터를 사람이 읽을 수 있는 형식으로 직렬화합니다.모든 옵션 구조체 빌더 에 대해
Into
트레이트를 통한 값 변환에 대한 지원 을 추가합니다.AggregateOptions
,FindOptions
및FindOneOptions
구조체에 대해comment_bson
필드 의 이름을comment
로 변경합니다.
이 출시하다 에 학습 보려면 v 마이그레이션 가이드3.0 를 Github 참조하세요. 에서 .
2.8의 새로운 기능
Rust 드라이버 v2.8 릴리스에는 다음과 같은 기능, 개선 사항 및 수정 사항이 포함되어 있습니다.
MongoDB Atlas Search 검색 인덱스 관리 메서드를 추가합니다. 이러한 메서드에 대해 자세히 알아보려면 Atlas Search 인덱스 가이드를 참조하세요.
다음 동작을 구현하여 네트워크 연결 및 운영 안정성을 개선합니다.
드라이버에 발생하는 더 넓은 범위의 오류 유형에 대해 재시도를 수행합니다.
네트워크 연결 문제가 발생한
mongos
인스턴스에 대한 재시도를 방지합니다.
이 릴리스에 대해 자세히 알아보려면 Github에서 v2.8.0 릴리스 하이라이트를 참조하세요.
2.7의 새로운 기능
Rust 드라이버 v2.7 릴리스에는 다음과 같은 기능, 개선 사항 및 수정 사항이 포함되어 있습니다.
CollectionOptions
구조체에human_readable_serialization
옵션을 추가합니다. 이 옵션은 드라이버가 CRUD 메서드에 전달된 값을 사람이 읽을 수 있는 형식으로 직렬화하도록 지시합니다. 이 옵션의 기본값은false
입니다.경고
human_readable_serialization
값을true
로 설정하면 삽입 작업이 더 느리게 실행될 수 있습니다.데이터베이스 명령을 실행하고 응답을
Cursor
유형으로 검색하는run_cursor_command()
메서드를 추가합니다. 자세한 내용 은 명령 실행 가이드를 참조하세요.tracing-unstable
기능 플래그를 사용할 때 SDAM 이벤트 로깅을 추가합니다.Client
및 연결 관리를 위해 다음 구성을 추가합니다:max_connecting
: 병렬로 설정할 수 있는 연결 수를 지정하기 위해ClientOptions
구조체에 설정할 수 있는 옵션입니다. 이 옵션에 대해 자세히 알아보려면 성능 고려 사항 가이드의 연결 풀 을 참조하세요.Client::warm_connection_pool()
: 더 예측 가능한 성능을 제공하기 위해 연결 풀에 새 연결을 생성하는 데 사용할 수 있는 메서드입니다. 이 방법을 사용하면 드라이버는min_pool_size
설정에 지정된 수까지 연결을 생성하려고 시도합니다.Client::shutdown()
: 백그라운드 작업을 중지하고 핸들러가 삭제될 때까지 기다리는 데 사용할 수 있는 메서드입니다. 이 메서드는 이벤트 핸들러를 사용하여 외부 리소스를 참고하는 경우 유용할 수 있습니다. 이러한 핸들러는Client
가 닫힌 후에도 작업에서 사용될 수 있기 때문입니다.
이 릴리스에 대해 자세히 알아보려면 Github에서 v2.7.0 릴리스 하이라이트를 참조하세요.
2.6의 새로운 기능
Rust 드라이버 v2.6 릴리스에는 다음과 같은 기능, 개선 사항 및 수정 사항이 포함되어 있습니다.
Elastic Kubernetes Service(EKS) 계정과 같은 서비스 계정에 대한 Amazon Web Services Identity and Access Management(IAM) 역할을 지원합니다.
cloud KMS(키 관리 시스템)를 사용할 때 GCP 연결 서비스 계정을 지원합니다.
Azure KMS에서 온디맨드 CSFLE 자격 증명 가져오기를 지원합니다.
Namespace
구조체에 대한FromStr
특성을 구현합니다. 이 변경을 통해 데이터베이스 및 collection 이름을 포함하는 문자열(예:"testdb.testcollection"
Namespace
을 인스턴스로 구문 분석할 수 있습니다.ConnectionInfo
구조체의server_id
을i64
유형으로 포함합니다.Cursor
에서 참고하는 값에 대한 대부분의 유형 제약 조건을 제거합니다.동등 쿼리와 함께 Queryable Encryption 기능을 사용하려면 드라이버 의존성의
libmongocrypt
버전을 업데이트합니다.
이 릴리스에 대해 자세히 알아보려면 Github에서 v2.6.0 릴리스 하이라이트를 참조하세요.