降低MySQL在云端的成本随着经济放缓和通货膨胀在世界许多地方肆虐,如果您能找到降低运行MySQL数据库成本的方法,您的组织将会非常喜欢您。如果您在云中运行MySQL,这一点尤其正确,因为它通常允许您看到这些节省的即时效果,这就是本文将重点讨论的内容。

有这么多公司宣布裁员招聘冻结优化你的成本可能会腾出足够的预算来留住一些团队成员或雇佣你的团队非常需要的人。

1.优化您的模式和查询

虽然优化模式和查询只能在很大程度上帮助您节省云中的MySQL成本,但这是一个很好的开始。次优模式和查询可能需要更大的占用空间,这也是主要云供应商提供的“完全托管”数据库即服务(DBaaS)解决方案无法真正帮助您的地方。具有次优模式和查询的系统比优化的系统需要10倍或更多的资源来运行,这是很常见的。

在Pe雷竞技下载官网rcona,我们建造了雷竞技下载官网Praybet雷竞技竞猜在线官网ercona监测和管理(PMM),它可以帮助您发现哪些查询需要注意以及如何优化它。如果你需要更多帮助雷竞技下载官网Percona专业服务通常能够在几天内完成模式和查询,以非常合理的前期成本提供长期的节省机会。

2.调优MySQL配置

最佳的MySQL配置取决于工作负载,这就是为什么我建议首先调优查询和模式。虽然从MySQL配置调优中获得的收益通常小于从修正查询中获得的收益,但它仍然非常重要。我们有一篇古老但仍然非常相关的文章需要调优的MySQL设置,你可以去看看。你也可以考虑使用类似的工具ReleemOttertune帮助你为你的工作负载获得更好的MySQL配置。

更高级的调优可能包括探索替代存储引擎,例如MyRocks(包含在雷竞技下载官网MySQL的Percona发行版).MyRocks可以提供神奇的压缩并最大限度地减少所需的IO,从而大大降低存储成本。要更深入地了解MyRocks在云中的性能,请查看博客在云端为MySQL扩展io绑定的工作负载

3.实现缓存

缓存是一种欺骗——而且它工作得很好!最先进的MySQL缓存可以通过推出来获得ProxySQL。它可以提供一些额外的性能优势,比如连接池和读写分割,但我认为缓存通常对降低MySQL成本最有用。ProxySQL完全由Percona支持雷竞技下载官网雷竞技下载官网Percona平台订阅并包含在雷竞技下载官网MySQL的Percona发行版

为繁重的查询启用查询缓存真的很神奇——通常情况下,最繁重的查询不需要提供最新的信息,并且可以在很长一段时间内缓存其结果。

上配置ProxySQL缓存的详细信息雷竞技下载官网Percona博客,以及以下文章:

4.合理分配资源

一旦优化了模式和查询并调优了MySQL配置,就可以检查MySQL实例正在使用哪些资源,以及可以在不影响性能的情况下减少哪些资源。CPU、内存、磁盘和网络是影响MySQL性能的四个主要资源,通常可以在云中进行半独立管理。例如,如果工作负载需要大量CPU功率,但不需要大量内存用于缓存,则可以考虑CPU密集型实例。PMM有一些很好的工具来了解您的工作负载最需要哪些资源。

MySQL在云端的成本

您还可以阅读一些额外的特定于资源的技巧我关于MySQL性能的另一篇文章

根据我们的经验,由于“使用信用卡扩展”的简单性,随着时间的推移,云中的许多数据库变得严重过剩,并且通过减少实例大小可以节省很多机会!

5.放弃DBaaS,改用Kubernetes

DBaaS与可比资源之间的价差持续增长。使用最新的Graviton实例,与底层实例的成本相比,您将为Amazon RDS支付两倍的费用。亚马逊极光虽然提供了一些很棒的功能,但价格更贵。如果您只是部署几个小节点,那么额外的成本就胜过雇佣人员部署和管理“自己动手”的解决方案。如果您每月在DBaaS解决方案上花费数万美元,情况可能会有所不同。

几年前,使用EC2、EBS等构建块构建自己的数据库服务,或使用DBaaS解决方案(如Amazon RDS for MySQL)是唯一的解决方案。现在,另一个机会出现了——使用Kubernetes。

你可以得到Amazon EKS -托管Kubernetes服务谷歌Kubernetes Engine (GKE),或Azure Kubernetes服务(AKS)以相对较小的溢价作为基础设施成本。然后,你可以使用雷竞技下载官网Percona的MySQL操作符部署和管理数据库的复杂性仅为传统部署的一小部分。如果您已经在应用程序中使用Kubernetes,或者使用基础设施即代码(IaC)部署方法,它甚至可能比DBaaS解决方案和100%开源更方便。

需要帮忙吗?雷竞技下载官网Percona支持你雷竞技下载官网Percona平台

6.考虑低成本的替代品

几年前,只有主要的云提供商(在美国:AWS、GCP、Azure)有针对MySQL的DBaaS解决方案。现在情况已经发生了变化,MySQL DBaaS也可以从第二级提供商(通常成本更低)获得。MySQL DBaaS可以从Linode数字海洋,Vultr以更低的成本(尽管功能更少)。你也可以从独立的供应商那里获得MySQL,比如Aiven

如果考虑在不同于应用程序使用的云供应商上部署数据库,请确保使用较近的位置进行部署,并确保检查数据库和应用程序之间的网络延迟—糟糕的网络延迟或可靠性问题可能会抵消您所实现的所有节省。

7.让专家管理你的MySQL数据库

如果您每月在云数据库占用上的花费超过20,000美元,或者您的应用程序正在快速增长或变化,那么通过真正的“完全管理”而不是“云完全管理”,您通常会以更低的成本获得更好的数据库性能、安全性和可靠性。后者依赖于“共同责任”在MySQL最佳实践的许多关键领域。

“云完全管理”将确保数据库基础设施正常运行(如果使用信用卡扩展),但不能完全确保您拥有最佳的MySQL配置和优化的查询,遵循最佳的安全实践,或为您的MySQL部署选择了最佳性能和成本效益的实例。

雷竞技下载官网Percona Managed ServicesPercona提供了一个可以考虑的解决雷竞技下载官网方案,尽管市场上有许多其他专家可以比主要云上的DBaaS更好地照顾您的MySQL需求。

总结

如果你在云端的MySQL基础设施的成本开始产生影响,不要绝望。可能有很多省钱的机会,我希望上面的一些建议能适用于你的环境。

同样值得注意的是,我上面的建议不是理论,而是基于我们在Percona所做的实际工作。雷竞技下载官网我们已经帮助许多领先的公司在云中运行MySQL时实现了显著的成本节约,包括通过Percona, Patreon在云数据库基础设施成本上节省了50%以上。雷竞技下载官网

了解Patreon如何节省50%以上的数据库基础设施成本

订阅
通知的
客人

0评论
内联反馈
查看所有评论