Atlas 提供两个数据库版本。这两个版本都运行 MongoDB,并使用相同的接口、驱动程序、API 和大多数操作工作流程。它们在预配计算和存储的方式上有所不同:
Atlas Core:计算和存储在同一节点上运行的Atlas 集群架构。它可用于免费集群、Flex 集群和专用集群层。
Atlas Infinite:一种将计算与存储分为独立层的架构,专为关键任务的高性能使用案例而设计。 Atlas Infinite 以公共预览版形式提供,在预览期间,产品及其文档都可能发生更改。
下图对这两个版本进行了比较。
Atlas Core 在每个节点上耦合计算和存储,而 Atlas Infinite 将计算和存储作为单独的层运行
比较版本
方面 | Atlas Core | Atlas Infinite |
|---|---|---|
架构 | 计算和存储在同一个节点上运行。每个承载数据的节点都在带有附加存储的虚拟机上运行。 | 计算和存储作为独立的层运行。MongoDB 将存储层与计算节点分开托管。 |
计算扩展 | 您可以通过选择不同的集群层来更改计算容量。当您更改层级时,Atlas 会重启集群的节点,专用集群不会出现停机。 | 您可以独立于存储扩展集群层。扩展不会移动您的数据,因此速度很快。 |
存储扩展 | 您可以独立于专用集群上的计算来扩展存储容量和每秒输入/输出操作数 (IOPS),最高可达集群层的最大值。要增加容量以超过该最大值,您扩展到更高的层级。 | 存储容量会根据使用情况自动增加,与集群层无关,且无需停机。 |
水平缩放 | 当数据接近存储容量时,您可以对集群分片片,并根据需要添加特定于工作负载的节点,例如只读或分析节点。 | |
恢复 | Atlas 会定期监控您的数据库,如果发现问题,会自动进行修复。如果它替换了节点,新节点会在提供查询服务之前执行初始同步。 | Atlas 定期监控您的数据库,并在发现问题时进行自动修复。如果它替换了一个节点,新节点会立即连接到存储层,无需进行初始同步。 |
云提供商和层级可用性 | AWS、Azure 和 Google Cloud 上的免费集群、Flex 集群和专用集群层级。 | 公开预览:在受支持的 Amazon Web Services 区域中通过 |
功能覆盖 | 支持完整的 Atlas 功能集。 | 某些 Atlas 功能在公开预览期间不受支持。 |
选择版本
在以下情况下,请考虑 Atlas Core:
您希望使用 Atlas 的完整功能集
您需要多区域或多云集群
您需要分片的集群
请在以下情况下考虑使用 Atlas Infinite:
您希望独立扩展计算和存储
您的工作负载会出现难以提前配置资源的峰值。
您希望在不扩展集群层的情况下增加存储容量
您想要更快的故障转移和恢复
首先确认您的工作负载符合 公开预览限制。
Atlas Infinite 架构描述了计算层和存储层如何交互。