Postgres 与 MySQL:哪一个更难扩展?

Postgres 与 MySQL:哪一个更难扩展?

根据您的经验,哪种数据库服务更难扩展?MySQL 还是 Postgres?我知道 MySQL 有几个现成的扩展/集群功能,但 Postgres 没有现成的功能。CMIIW。

编辑

抱歉造成混淆,我的问题是指扩展(水平扩展),即集群、分片等。我知道两者都可以水平扩展,但哪一个更容易实现?

感谢你的分享。

答案1

MySQL 的扩展非常容易,集群和复制都是原生的,而且非常易于管理和实施(即使对于不具备数据库知识的人来说也是如此)。

PostgreSQL 目前仅支持基本复制,并且没有关于集群的官方支持(技术上您可以通过第三方工具实现,但管理起来非常困难)。

如果我打算扩展,我永远不会选择 Postgresql。

编辑:非常古老的答案,需要谨慎对待,因为自从回答这个问题以来,postgres 和 mysql 已经发生了很大的变化。

答案2

虽然这个问题似乎违背了该网站“避免询问主观或争论性问题”的宗旨,但我还是忍不住尝试回答。

这取决于。

您是在谈论可扩展到非常大的数据集的单服务器配置吗?
这两种配置都可以根据数据集在这种情况下工作,但如果没有自定义配置和适当的规划,它们的性能可能都不会很好。根据我的经验,在处理大量写入的大型数据集时,我发现 Postgres 导致阻塞的情况更少,整体性能更好。

您是在谈论可扩展到多个从服务器以用于多个读取器的多服务器配置吗?
MySQL 历来被认为是该领域的领导者,因为它内置了异步复制功能。如果您不反对使用最新的 DB 软件,情况就不再如此了;Postgres 现在也已在 9.0 版中内置了此功能。到目前为止,我对 MySQL 复制的体验已经足够了。

您是在谈论可扩展到多个主服务器以供多个写入器的多服务器配置吗?
这是迄今为止扩展任何产品最困难的方式,很多时候可以通过使用故障转移服务器来避免。如果您确实需要扩展主服务器的高可用性,则无法避免安装附加组件/备用组件。对于 MySQL,有 MySQL Cluster NDB,它具有开源选项商业版本对于 Postgres 来说有很多附加组件可以实现不同级别的 HA 和池化

从长远来看,数据库的扩展通常取决于设计规划。如果您的应用程序在设计时就考虑到了扩展,那么最适合您的开发人员的数据库系统通常是最佳选择。

答案3

PostGre 具有更多功能和配置选项。

因此,它可能更难扩展,但也可能会扩展得更好,也就是说,如果配置正确的话。

一般来说,MySQL 可能仍然会更快,另一方面,真正的问题是你有多重视数据完整性,你需要什么功能,以及你是否想依赖 Oracle(现在拥有 MySQL)?

此外,还有许可问题,比如,仅仅因为您不想在 GPL 下发布您的应用程序,您真的要购买 MySQL 许可证吗?
使用 PostGreSQL,这不是问题,这是一个非常大的优点。

相关内容