Atlas Infinite 是MongoDB Atlas版本,采用将计算与存储分离为独立层的架构构建,专为关键任务的高性能使用案例而设计,并内置安全控制。这种设计提供了高性能、可扩展性和弹性:您可以独立快速地扩展计算和存储,从故障中快速恢复,并简化操作工作流程。
架构
下图显示了Atlas Infinite 如何将计算与存储分开。
在Atlas Infinite 中,计算和存储作为独立的层
在Atlas Infinite 中,计算和存储是独立的层。应用程序的查询、事务和聚合在计算节点上运行。 MongoDB独立于计算层管理存储层,因此扩展集群层、添加只读节点以及从节点运行中恢复等操作无需移动或复制数据。您的应用程序使用MongoDB驱动程序和其他连接方法连接到Atlas Infinite集群。您还可以使用MongoDB编程工具访问权限和管理集群。
收益分析
通过将计算与存储分离, Atlas Infinite 可让您:
独立扩展:您可以独立扩展集群层和存储容量,因此扩展集群层不需要扩展存储容量。
快速扩展:垂直和水平扩展Atlas Infinite 的速度非常快,因此您不必针对峰值预先配置或在预期事件时预先计划扩展。
简化操作:在Atlas Infinite 中,您可以在不停机的情况下增加存储容量。
最大限度地提高吞吐量和性能: Atlas Infinite 在存储层运行备份、恢复和 时间点恢复 ,独立于计算层。这样可以卸载计算层的工作负载,从而留出更多容量来提供服务应用程序的工作负载。
性能
Atlas Infinite 架构针对性能进行了优化。许多工作负载在Atlas Infinite 上实现了高吞吐量。性能取决于工作负载,因此请使用自己的工作负载进行测试,以衡量影响。
弹性
Atlas Infinite 可以独立扩展计算和存储,因此您可以在不更改存储下增加计算容量以应对工作负载峰值。 Atlas Infinite 支持集群层的自动伸缩,并根据需求变化进行扩展和缩减。您可以通过添加只读节点来进行水平扩展,这些节点从存储层读取数据,并在几分钟内开始提供读取服务。
可扩展性
Atlas Infinite 可以独立于计算来扩展存储,因此您可以增加存储容量以支持不断增长的企业级应用程序,而无需扩展集群层。
在Atlas Infinite 中,您可以通过增加集群层来垂直扩展集群。层级越大,存储吞吐量和存储IOPS 越高。垂直扩展集群时, Atlas Infinite 不会移动数据。
当您将只读节点添加到Atlas Infinite集群时,它们会从存储层读取数据,并在几分钟内开始提供读取服务,而无需初始同步。
安全性
Atlas Infinite 旨在确保安全。它始终在您的数据离开计算节点之前对其进行加密,因此存储层无法读取应用程序的数据。加密是强制性的, Atlas Infinite 支持客户管理的数据加密密钥 (集合扫描/BYOK)。
Atlas Infinite 支持以下安全控制:
要学习;了解Atlas如何对静态数据加密以及应用了哪些安全控制,请参阅Atlas Infinite 上的静态加密。
弹性和恢复
在Atlas Infinite 中,存储层可保持数据持久性。 MongoDB不依赖计算节点来实现数据的持久性。 Atlas Infinite集群有两个可选计算节点,即主节点 (primary node in the replica set)和备用节点。它们共同形成一个高度可用的分片(HA分片),这是Atlas Infinite 特有的单位,有别于MongoDB分片。如果主节点 (primary node in the replica set)发生故障或重新启动,则备用节点将成主节点 (primary node in the replica set)。存储层协调从主节点 (primary node in the replica set)到备用节点的故障转移,而不是在集群节点之间选举,并保持最近的数据随时可用。备份、恢复和时间点恢复在存储层运行。
要学习;了解复制和故障转移在Atlas Infinite集群上的工作原理,请参阅复制和故障转移。要学习;了解备份和恢复,请参阅恢复Atlas无限集群。
运营经验
您的应用程序无需更改代码即可在Atlas Infinite 上运行。 Atlas Infinite 使用MongoDB传输协议,并支持完整的MongoDB查询API,包括查询、聚合、索引和事务。
Atlas Infinite 还可以与以下工具配合使用:
mongoshCompass
Atlas Administration API,以及某些特定于Atlas Infinite 的端点
Atlas CLI,其中包含一些特定于Atlas Infinite 的命令
Terraform Provider,其中包含一些特定于Atlas Infinite 的属性
在Atlas Infinite集群上,您可以直接在集群上启用SQL接口,而无需通过联合数据库实例。
Atlas提供特定于Atlas Infinite 的警报。
公共预览版可用性
公共预览版支持
Atlas Infinite 在公共预览版中支持以下功能:
在公开预览期间, Atlas Infinite 集群使用Atlas 用户界面中的 Latest Version With Auto Upgrades发布选项运行最新的MongoDB 9.x 版本。要学习;了解更多信息,请参阅Atlas中的MongoDB版本。
M10到M60General副本集,以及M40到M60Low-CPU副本集。每个副本集的存储容量高达 128 TB(逻辑)。
云提供商区域:在公共预览版中, Atlas Infinite 仅部署在 AWS 上。请参阅Amazon Web Services (AWS) 区域表中的Atlas无限支持列。每个集群都部署在这些区域之一。
客户通过 AWS KMS管理的数据加密密钥 (集合扫描 /BYOK) 。
公共预览版不支持
Atlas Infinite 在公共预览版中不支持以下功能。随着Atlas Infinite 增加对更多功能的支持,此列表可能会随着时间的推移而变化。请回来查看当前支持哪些功能。
多区域集群: Atlas Infinite集群中的所有节点都部署在同一地区中。
多云集群: Atlas Infinite 在公共预览版中不支持多云集群。在公共预览版中, Atlas Infinite 集群仅部署在 AWS 上。
M80+集群层: Atlas Infinite 在公开预览版中不支持General 或 Low-CPU集群类中的
M80及更大的集群层。分片集群: Atlas Infinite 在公共预览版中不支持分片的集群。
全局集群: Atlas Infinite 在公共预览版中不支持全局集群。全局写入需要Atlas全球集群,因此它们也不可用。
Atlas Search和 Vector Search:公开预览版的Atlas Infinite 集群不支持Atlas Search和 Vector Search。
Atlas Online Archive :公开预览版的Atlas Infinite 集群不支持Atlas Online Archive 。
Atlas Kubernetes Operator: Atlas Kubernetes Operator在公共预览版中不支持Atlas无限集群。
跨版本迁移和恢复: Atlas Infinite 不支持Atlas Core 和Atlas Infinite 集群之间的实时迁移或备份和恢复。
导入存档快照: Atlas Infinite 不支持在公共预览版中导入存档快照。
NVMe 存储: Atlas Infinite 在公共预览版中不支持本地连接的 NVMe 固态硬盘存储。
数据库版本更改:创建集群后,您无法在Atlas Core 和Atlas Infinite 之间双向更改集群的数据库版本。
无oplog重放: Atlas Infinite 不支持oplog重放。请勿对Atlas Infinite 集群使用
mongodump --oplog或mongorestore --oplogReplay选项。Azure Key Vault和 Google Cloud KMS:在公开预览版中, Atlas Infinite 仅支持通过 AWS KMS托管客户管理的密钥。
Atlas Charts: Atlas Infinite 在公共预览版中不支持MongoDB Charts 。
MongoDB for VS Code: Atlas Infinite 在公共预览版中不支持MongoDB for VS Code扩展。
MongoDB MCP 服务器: Atlas Infinite 不支持公共预览版的MongoDB MCP 服务器。
MongoDB 助手技能: Atlas Infinite 在公共预览版中不支持MongoDB 助手技能。
日志下载和日志同步: Atlas Infinite 不支持在公共预览版中下载MongoDB日志或将日志同步到外部服务。
集合级恢复: Atlas Infinite 不支持在公共预览中恢复单个集合。
快照分发: Atlas Infinite 不支持在公共预览中将快照复制到其他区域。
快照下载和本地恢复: Atlas Infinite 不支持在公开预览版中下载快照或将快照恢复到本地部署。
正常运行时间 SLA: Atlas Infinite 在公共预览版中不提供正常运行时间 SLA。
独立和不对称的分片自动伸缩: Atlas Infinite 在公共预览版中不支持独立或不对称的分片自动伸缩。
数据库分析器: Atlas Infinite 不支持在公共预览版中启用数据库分析器。
与Atlas Core 比较
Atlas提供两个数据库版本: Atlas Core(其中计算和存储耦合在同一节点上)和Atlas Infinite(一种每层独立扩展的解耦架构)。要详细比较这两个版本,请参阅数据库版本。
关于本文档
大多数Atlas文档同时适用于Atlas Core 和Atlas Infinite,因为不同版本的Atlas界面、驱动程序、API 和大多数操作工作流程都是相同的。文档描述了每个页面或部分适用的版本,如下所示:
适用于两个版本:除非页面另有说明,否则其内容适用于Atlas Core 和Atlas Infinite。
仅适用于一个版本:当内容适用于单个版本时,页面会在标题或文本中标识该版本。
Atlas Infinite 不支持:当公开预览期间某功能在Atlas Infinite 上不可用时,该页面会包含注释和受支持功能的链接。
在Atlas Infinite 上的行为不同:当不同版本之间的工作流程或选项不同时,该页面或部分会就地指出差异。
此页面是Atlas Infinite 的点。要查找有关特定功能的信息,请转到该功能的Atlas主题并查找Atlas Infinite 标注。