You need to enable JavaScript to run this app.
文档中心
文档数据库 MongoDB 版

文档数据库 MongoDB 版

复制全文
下载 pdf
版本介绍
MongoDB 8.3 新特性概览
复制全文
下载 pdf
MongoDB 8.3 新特性概览
本文介绍 MongoDB 8.3 版本的主要新特性和优化项。
说明
  • 当前 MongoDB 8.3 版本正在灰度发布中,如需使用向量搜索功能,请提交工单联系技术申请使用。
分片集群增强
分片移除流程重构
弃用 removeShard 命令,引入startShardDrainingstopShardDrainingshardDrainingStatuscommitShardRemoval四个新命令,支持对分片移除和删除进程进行精细控制,有效降低误操作风险,提升分片移除操作的确定性和安全性。
DDL 操作路由限制
所有 DDL 操作applyOps 命令只能通过 mongos 执行,统一了分片集群的 DDL 操作入口,从而规避了绕过元数据管理规范的风险。
分片查询统计信息完善
启用 queryStats 后,Shard 会将源自 mongos 的查询包含在其统计信息中,便于在分片集群环境中进行完整的诊断分析。
孤儿文档清理优化
通过terminateSecondaryReadsOnOrphanCleanup 参数(默认启用)和orphanCleanupDelaySecs 参数(默认值 3600 秒),优化 Chunk 迁移后的孤儿文档清理机制,提升数据一致性。
性能与监控
执行中慢查询日志
引入执行中慢查询日志功能,支持在查询执行期间实时记录慢日志,无需等待查询完成。通过 --defaultSlowInProgMS 启动参数或db.setProfilingLevel()运行时设置阈值。日志中的 originalQueryShapeHash 字段便于将 Shard 慢日志与 mongos 原始请求关联,实现分片集群环境下的端到端诊断。
查询级内存追踪
新增 inUseTrackedMemBytespeakTrackedMemBytes 字段,用于追踪查询的当前内存和峰值消耗,便于定位内存消耗异常的操作,为优化查询语句或调整内存参数提供精确的数据依据。
serverStatus 按需输出
支持通过 none: 1 屏蔽所有可选字段,再按需选择性加入,简化监控数据采集,减少网络传输和客户端解析的负担。service 字段已被移除。
Explain 输出标准化
溢出到磁盘(spill to disk)阶段的 Explain 输出(Explain results)统一使用 spillsspilledBytes 等标准字段,便于分析高内存操作的磁盘使用情况。
queryStats 输出更多指标
$queryStats 的输出中新增逾期凭证(Delinquent tickets)相关指标,用于观测执行凭证获取过慢导致的资源争用和排队问题。
currentOp 输出更多字段
$currentOp聚合阶段的输出中新增 versionContext 字段,用于展示操作的特性兼容性版本信息,便于在升级过程中进行问题排查。
索引、聚合与检索
2dsphere 默认版本升级
2dsphereIndexVersion 默认值从 3 升级至 4,新创建的地理空间索引将默认采用更高效的存储和查询算法。
注意
如果需要将特征兼容性版本降级到 8.3 以下,必须首先删除 2dsphere 版本 4 索引。
数组索引访问增强
$map$filter$reduce 表达式现在支持直接获取当前元素的索引值。您可以通过 arrayIndexAs 字段为索引指定自定义变量名,或直接使用内置的 $IDX 变量进行引用。无需额外编码即可在数组处理逻辑中访问位置信息,简化了操作流程。
新增聚合表达式
引入了 $subtype$createObjectId$hash/$hexHash$serializeEJSON /$deserializeEJSON$scoreFusion (已正式可用)等新表达式,丰富了数据处理和类型转换的能力,减少了应用层的数据处理负担。
向量搜索与全文搜索
MongoDB 8.3 内置了向量搜索与全文搜索能力。向量搜索基于语义相似性,适用于 AI 应用中的非结构化数据搜索(例如,在图片库中搜索相似图片、在文档库中查找语义相关段落);全文搜索基于关键词匹配,适用于文档搜索和日志分析。您可以在控制台为集合创建向量索引或全文索引以加速检索。两种搜索方式可结合使用。
说明
检索功能目前仅适用于 MongoDB 8.3 及以上版本。
rankFusion 支持在视图上运行
用于混合搜索(Hybrid search)的$rankFusion 阶段支持直接在视图(view)上运行。
支持 $currentDate
aggregate()管道中,可使用 $currentDate 返回服务器当前时间。
连接与行为变更
性能调优新参数
  • 控制检查缓存压力的频率,检测到压力后自动中止最早的事务以释放缓存。
  • 启用后客户端收到 SystemOverloadedError 时会自动切换到其他节点重试,为应用提供“故障规避”能力,有效降低整体请求延迟和失败率
  • 允许指定应用豁免入口限流,确保关键业务应用在流量高峰时的可用性。
行为变更
  • Upsert 错误码变更
  • Upsert 产生超大 BSON 对象时,错误码变更为 10334(原为 17419/17420),使错误类型更准确,便于 客户端精确捕获和处理。
  • validate 命令更新
  • validate(full=true) 不再自动启用 checkBSONConformance,但新增了对超过 16 MB 文档的检查,使校验过程更可控。
最近更新时间:2026.07.24 19:08:20
这个页面对您有帮助吗?
有用
有用
无用
无用