公共云回迁的经济学

The Economics of Public Cloud Repatriation

在过去的几年中,一个越来越清晰的趋势是,尽管公有云拥有诸多优势,但它并没有在规模化应用中实现成本节约。它确实在一定程度上提高了生产力,但并不能降低成本。公有云的确有其可取之处,它提供了一个非常强大的价值主张——即时获取基础设施,并根据业务需求进行精确扩展,从而在运营和经济效益方面实现效率提升。云计算还有助于培养创新,因为企业可以腾出资源专注于开发新产品和推动增长。然而,仅仅是与数据交互就会产生出站成本,而这些成本已被证明是极具掠夺性的。当应用和工作负载具有持久性、一致性和数据密集性(大量/高速/多样的读写调用),或者涉及高性能分析时,这种情况尤为明显——这些应用和工作负载在规模增长时,在公有云环境中根本无法维持。

“随着企业对云计算的经验日益成熟,以及我们对云计算生命周期对企业经济效益的更全面了解,越来越明显的是,虽然云计算在企业发展初期可以很好地兑现其承诺,但随着企业规模的扩大和增长放缓,它对利润率的压力可能会超过其带来的益处。”- Sara Wang & Martin Casado, Andreessen-Horowitz, 2021

尽管这段话非常具有预见性,但它出自 2021 年。到了 2024 年,数据量已经增长(根据 2022 年的一项 IDC 研究,平均每年增长约 20%),工作负载也越来越大,规模已经成为问题。问题不在于扩展技术,而在于成本,特别是公有云中的扩展成本。根据 David Linthicum 的说法,公有云正在被 “踢到路边”,主要有三个原因。

成本 - 对于某些工作负载来说,在云中运行它们成本太高。过去几年,商品硬件价格大幅下降,因此硬件不再像以前那样是巨大的资本支出。

迁移失败 - 那些没有经过最佳重构或调整为云原生工作负载的工作负载,最终的成本约为最初预计成本的 2.5 倍。原本效率低下的本地应用在云中也变得效率低下。提高其效率的成本太高,最终得不偿失。

需求下降 - 原本需要快速、高效地启动并能够扩展的应用,已经在云中实现了扩展,但现在仅仅变成了重复性任务和数据存储的机器。这些应用不再能从云提供的快速可扩展性中获益,现在只是在消耗大量的昂贵存储。对灵活、快速可扩展模型的需求不再存在。硬件商品化已经出现了一种新的、经济高效的方式来运行这些工作负载。根据最近巴克莱银行的一项 首席信息官调查,许多首席信息官都同意这一点。

来自同一篇 a16z 文章 -

 “2017 年,Dropbox 在其 S-1 文件 中详细说明了,在 IPO 前的两年中,由于其基础设施优化改造,累计节省了高达 7500 万美元,其中大部分是将工作负载从公有云迁移回本地。”

当你的云计算成本开始占到收入成本的 50% 或以上时(例如 Asana、Datadog、Prerender.io 等等),就该开始审视你的工作负载在公有云中的运行情况了。组织和业务领导层需要意识到这一点,以便做出调整。某些工作负载,例如运行数据分析立方体、内存数据库或数据分析集群,更适合在本地基础设施上运行。但这仅仅是几个例子。

为了更深入地了解受这种规模问题影响的特定趋势,让我们看一下 AI/ML,特别是 LLM(大型语言模型)。如果你的当前 AI 项目涉及构建自己的 LLM 或基础模型,请考虑在公有云中执行此操作的缺点。

  1. 高昂的扩展成本 - 在规模化情况下训练和运行 LLM 非常昂贵,随着 LLM 的规模越来越大,公有云的成本也会相应增加。
  2. 失去控制 - 你对实施、基础设施和性能的控制和可见性较低。
  3. 供应商锁定 - 如果你在某个云平台上训练了 LLM,那么将其移植到其他平台将非常困难。此外,完全依赖单个云提供商会带来固有的风险,特别是关于政策和价格波动的风险。
  4. 数据隐私和安全 - 我还要在这里提到数据主权。底线是,你将数据交托给一个在全球多个地区拥有服务器的提供商。

如果你的企业处理的是 PB 级数据或正在向这种规模发展,那么私有云更具经济效益。没错,这意味着构建基础设施(或从 Equinix 等公司租赁),包括房地产、硬件、电力/冷却,但经济效益仍然非常有利。公有云是学习云原生方法和访问云原生应用组合的绝佳场所,但它不是扩展的理想场所。

经济效益示例

那么,经济效益如何呢?为了说明,让我们以一个 10PB 的现代数据湖为例,它使用 Kubernetes 来管理 Apache Spark 和 Dremio,用于持久性和一致性的分析工作负载。这些类型的工作负载需要频繁地从对象存储中读取和写入数据,以进行分析、更新、刷新和展示。从成本结构的角度来看,我们将对主要成本驱动因素做出一些假设。

  • 如果我们无法使用数据,那么这些数据湖和工作负载的效用就有限。数据提供了洞察力,为其他应用程序提供服务,并且可能需要在存储环境之外进行处理。这需要将数据从存储中传输出去。如果我们假设每月访问 500TB 数据,则这仅代表每月访问的数据量为 5%。

  • 对于数据/对象请求(PUT、GET、HEAD 等),我们已经与类似一致性和持久性工作负载的客户合作,他们每月看到超过 100 亿个对象请求。因此,我们可以将 100 亿作为这种工作负载的保守估计。

  • 同样,那些客户也会看到大约相同的对象加密请求数量,因此我们再次将 100 亿作为我们示例中的保守估计。

在这些假设下,公有云的成本可能如下所示。

成本驱动因素

年度成本

存储 

(标准,无分层,无折扣)

260 万美元

(0.022 美元/GB/月)

数据传输/出站

35.4 万美元

对象请求

64.8 万美元

对象加密

360 万美元

支持(5%)

13 万美元

10PB 的年度公有云成本 = 730 万美元或 0.061 美元/GB/月

上面的假设仅仅是假设,并且有如此多的假设表明,成本根据具体的使用情况和工作负载因素会有很大差异。这在预算制定方面带来了重大挑战。此外,没有分层或任何数据生命周期活动的情况也比较罕见,因为组织通常会将数据移至更冷的层级,如果数据变得不那么“活跃”。但这只会增加成本,因为不同的层级有不同的 GB/月价格,以及将对象自动移至这些层级的成本。

MinIO 允许你在私有云(托管数据中心或数据中心)上进行扩展,使用与公有云中相同的技术:与 S3 API 兼容的对象存储、密集型计算、高速网络、Kubernetes、容器和微服务。一个主要的区别是,对象请求(GET、PUT 等)没有成本,而且对请求数量也没有限制,只要基础设施支持即可。此外,加密包含在 MinIO Enterprise 和 Community 版本中,并且对加密对象的请求数量没有限制。

这种可选性提供了运营成本、灵活性和控制力的理想组合。的确,你将承担硬件的资本支出,但通过从小规模开始,并利用关键的云计算经验教训(弹性、按组件扩展、将计算与存储分离),企业可以最大限度地减少初始支出,并最大限度地提高运营节约。

当与商品硬件结合使用,并在托管数据中心或私有数据中心运行时,MinIO 可以将公有云成本(以及管理这些云计算成本相关的成本)降低 50% 到 70%,在某些情况下甚至更高。

成本驱动因素

公有云年度成本

MinIO 年度成本

存储

260 万美元

(标准,无分层,无折扣)

130 万美元

MinIO 企业版 许可证

(10PB 可用容量)

数据传输/出站

35.4 万美元

$0

对象请求

64.8 万美元

$0

对象加密

360 万美元

$0

支持(5%)

13 万美元

$0

商用硬件

n/a

20 万美元

(所有 NVMe 存储,10PB @ 0.10 美元/GB)

100 万美元,分摊到 5 年

机房成本

n/a

20 万美元

(互连、机架、电源、维护等)

10PB 的年度机房/MinIO 成本 = 每年 170 万美元,或每月 0.014 美元/GB

这相当于与公有云相比,10PB 存储的存储成本降低了约 77%。即使对于更小的存储容量需求(200TB - 2PB),节省的成本也值得探索。更不用说您将获得业界最佳的存储性能、用于桶级别安全性的内置防火墙、专为对象存储设计的可观测性以及 许多其他增值功能,这些功能在公有云中将需要额外付费。

资源因素

另一个值得快速分析的因素是资源(人力资源)。我们从客户那里了解到,管理公有云基础设施所需的资源数量可能在 5-10 个 FTE 之间,具体取决于云基础设施的大小。其中包括云工程师、云团队负责人、DevOps 工程师和云项目经理。根据 Glassdoor 的薪资范围和中位数,这些 FTE 成本每年可能在 70 万美元到 150 万美元之间,包含全部费用。

我们还从客户那里了解到(在最近的一项调查中,有 76% 的客户表示),MinIO 的关键价值驱动因素之一是其易用性和可管理性。同一项调查发现,他们中有 60% 的人提到了 MinIO 能够提供 改进的运营效率

"MinIO...已经降低了我们的支持和维护成本."

  • 专业服务公司

"MinIO 作为一种产品,是一个非常好的存储解决方案,它已经...将资源成本降低了 50% 以上."

  • 一家专注于端到端 DevOps 产品的领先技术解决方案提供商

在内部,我们使用 MinIO 来处理各种不同的工作负载、存储需求、测试等,我们的估计是,MinIO 可以由 1 个 FTE 到 3 个 FTE 来管理,用于 PB+ 级别的基础设施。这使得能够以最小的资源实现大规模的庞大基础设施。

入门

既然您已经了解了私有云的运作方式和原因,那么您一定想知道如何开始走这条路。我的同事已经在 这里这里 写过这方面的文章,我建议您的云团队和 DevOps 团队查看这些博客,了解有关从公有云迁移的详细信息。

我们已经看到数十家客户使用商用硬件以及他们自己的数据中心或机房将数据迁移回来,并从 MinIO 高性能、简单的对象存储解决方案中获得了真正的节省和益处。

如上分析所示,企业可以通过将数据迁移回数据中心或托管服务中的自有硬件,实现显著的成本节省,超过其现有隐含的年度公有云 S3 账单的 50%。在上述情况下,只有 10PB,您的企业在未来五年内可以节省大约 650 万美元。

事实是,公有云在大规模情况下成本过高。公有云的本质上可扩展的特性使其扩展似乎很有吸引力,但从经济角度来看,它几乎总是错误的选择。对于像 AI/ML 这样对数据密集型任务来说尤其如此,因为公有云的成本和控制力损失可能是巨大的。随着数据规模的扩大,使用 MinIO 的私有云解决方案在经济上变得更加优越,以更低的成本提供等效(可能更好)的技术。通过利用商用硬件和私有云基础设施,企业可以实现显著的成本节省和性能优势,与公有云相比,有时可高达 70%。我们建议探索将工作负载从公有云迁移出去,并使用 MinIO 来现代化和扩展您的关键业务应用程序。

如果您想了解更多信息,并利用我们的价值工程功能来运行您自己的模型,请通过 hello@min.io 与我们联系,我们可以开始对话。