根据您的经验,哪个数据库服务更难扩展?MySQL还是Postgres?我知道MySQL具有几项现成的缩放/聚类功能,但是对于Postgres,没有现成的。CMIIW。
编辑:
抱歉,我的问题是横向扩展(水平扩展),即群集,分片等。我知道两者都可以水平扩展,但是哪一个更易于实现?
感谢你的分享。
根据您的经验,哪个数据库服务更难扩展?MySQL还是Postgres?我知道MySQL具有几项现成的缩放/聚类功能,但是对于Postgres,没有现成的。CMIIW。
编辑:
抱歉,我的问题是横向扩展(水平扩展),即群集,分片等。我知道两者都可以水平扩展,但是哪一个更易于实现?
感谢你的分享。
Answers:
MySQL可以轻松扩展,集群和复制都是本机的,并且非常易于管理和实现(即使对于不具备数据库知识的人也是如此)。
PostgreSQL目前仅支持基本复制,而集群方面还没有正式的技术支持(从技术上讲,您可以通过3rd party工具进行管理,但是管理起来很麻烦)。
如果计划扩展,我永远不会选择Postgresql。
编辑:很老的答案带着一粒盐,因为自从回答以来,postgres和mysql发生了很大变化。
尽管此问题似乎与网站的“避免提出主观或议论性问题”原则背道而驰,但我还是无法拒绝尝试回答。
这取决于。
在谈论可扩展到非常大的数据集的单个服务器配置吗?
两者都可以根据数据集在这种情况下工作,但是如果没有自定义配置和适当的计划,两者都可能无法很好地执行。根据我的经验,在处理具有大量写入操作的大型数据集时,我发现Postgres导致阻塞的条件较少,整体性能更好。
您是在谈论可扩展至许多读者的许多从属服务器的多服务器配置吗?
自从MySQL内置异步复制以来,它就一直被认为是该领域的领导者。如果您不反对使用最新的DB软件,则不再是这种情况。Postgres现在在9.0版本中也内置了该功能。到目前为止,我对MySQL复制的经验已经足够了。
您是否在谈论可扩展至许多作者的许多服务器的多服务器配置?
到目前为止,这是扩展任何一种产品的最困难的方法,并且可以通过使用故障转移服务器来避免很多次。如果确实需要扩展以实现主服务器的高可用性,则无法避免插件/替代安装。对于MySQL,有一个MySQL Cluster NDB,它具有开源选项或商业版本。对于Postgres,有许多插件可以使您获得不同级别的HA和池
从长远来看,数据库的扩展通常取决于设计计划。如果您的应用程序设计时考虑了规模,那么与开发人员最匹配的数据库系统通常是最佳选择。