基于 vCore 的 Azure Cosmos DB for MongoDB 的自动缩放(公共预览版)
适用对象: MongoDB vCore
使用波动工作负载管理数据库可能非常复杂且成本高昂,在不可预知的流量高峰需要过度预配资源时尤其如此。 为了应对这一挑战,Azure Cosmos DB for MongoDB 为其基于 vCore 的群集引入了自动缩放功能。 自动缩放旨在通过根据应用程序需求动态调整容量来处理可变工作负荷。
与其他托管的 MongoDB 解决方案不同,Azure Cosmos DB 的自动缩放提供即时可伸缩性,在纵向扩展超过 24 小时时,通常会遇到几个小时的延迟。 此功能可确保数据库立即适应不断变化的工作负荷,消除性能瓶颈并避免不必要的成本。
开始使用
按照本文档以创建新的 Azure Cosmos DB for MongoDB (vCore) 群集,然后选择“M200 自动缩放层(预览版)”复选框。 或者,也可以使用 Bicep 模板来预配资源。
好处
即时缩放
- 在不停机的情况下自动调整容量,在意外的工作负荷高峰期间保持性能。
- 无需手动缩放,从而降低服务中断的风险。
成本效益
- 仅在必要时防止过度预配、利用资源,从而减少开支。
- 即用即付定价可确保仅按实际使用情况计费,从而最大限度地利用资源。
可预测的定价
- 使用透明成本计算基于核心的定价可以简化预算和预测。
- 灵活的定价模型适应工作负载需求,避免意外的成本激增。
定价模型
为简单起见,它使用基于核心的定价模型,其中费用基于过去一小时内 CPU 或已提交的内存使用量较高,而利用率阈值为 35%。
- 利用率 35% 及以下:最低价格适用。
- 超过 35% 的利用率:最高价格适用。
- 由于其即时缩放功能,自动缩放群集相较于基本层会产生 50% 的额外费用。
- 计费频率:按小时计算和计费成本,确保只为使用的容量付费。
示例:
在应用程序遇到其运行时 10% 的使用率峰值的情况中:
- 如果没有自动缩放:预配过度的 M200 群集将花费 1,185.24 美元。
- 使用自动缩放:M200-Autoscale 群集的成本为 968.41 美元,节省了 18.29%。
这种灵活的定价模型有助于降低成本,同时在高峰需求期间保持最佳性能。
限制
- 目前,仅支持 M200 自动缩放层,允许在 M80 到 M200 层范围内缩放。
- 自动缩放仅适用于计算资源。 存储容量仍必须手动缩放。
- 目前不支持“常规层”和“自动缩放层”之间的升级或降级。
常见问题解答 (FAQ)
- 哪些群集支持自动缩放?
目前,自动缩放仅适用于 M200 层,其缩放功能从 M80 扩展到 M200。
- 自动缩放是否同时管理计算和存储缩放?
否,自动缩放仅管理计算资源。 必须手动缩放存储。
- 是否可以在常规层和自动缩放层之间切换?
否,目前不支持常规层和自动缩放层之间的升级或降级。
- 自动缩放调整容量时是否有停机?
否,自动缩放可以即时无缝地调整容量,而不会对性能造成任何停机或影响。
- 如果工作负荷超过 M200 层限制,会发生什么情况?
如果工作负荷一直超过 M200 限制,可能需要考虑更高的层或替代缩放策略,因为自动缩放目前仅支持 M200。
- 自动缩放是否在所有 Azure 区域中可用?
自动缩放支持可能因区域而异。 请查看 Azure 门户,了解首选区域中的可用性。
- 如何验证自动缩放产生的费用?
为了提供成本透明度,我们引入了一个名为“自动缩放利用率百分比”的新指标。 此指标显示一段时间内 CPU 或已提交的内存使用量上限,使你可以将其与产生的费用进行比较。
后续步骤
了解 Azure Cosmos DB for MongoDB (vCore) 中的自动缩放层的功能后,下一步是深入了解迁移过程。 这涉及到了解如何进行迁移评估和计划将现有 MongoDB 工作负载无缝传输到 Azure。