我在过去七年中经常使用MySQL,我的经验一般是“忽略存储过程并在数据库中放置任何逻辑。将业务逻辑保留在代码中并将数据库保存为哑数据存储。“
我正在构建一个新项目,目前使用Python + Flask + MySQL。 MySQL数据库主要处理读取。有一个主表 - 在Web应用程序上显示的项目列表。在最初创建它之后,我从不改变该表中的行。这个要显示的项目列表每天更新一次,通过一个抓取客户端数据源的cron脚本。
在这种情况下,PostgreSQL会比MySQL提供一些好处吗? (大量读取,写入限制为每天一批)
我目前使用ClearDB for MySQL在Heroku上托管它,如果这有任何区别的话。
答案 0 :(得分:3)
使用PostgreSQL而不是MySQL有很多优点,使用MySQL而不是PostgreSQL有很多优点。您选择哪一个完全取决于您要实现的目标以及您对项目的要求。
在你的情况下,如果数据库只是一个“哑数据存储”,你就不应该看到MySQL与PostgreSQL的行为方式有任何区别。 “坚持你所知道的”有很多话要说,所以如果你对MySQL和PostgreSQL比较熟悉......那就用MySQL吧。
此外,使用适当的数据库抽象层绝不是一个坏主意,因此如果将来需要更改数据库平台,则不必重写所有数据库代码。
答案 1 :(得分:1)
我经常使用MySQL,而PostreSQL中我最想念的一件事就是window functions的强大和简单。当然,我知道这不足以选择一个DBMS而不是另一个:)但你可以在这个link或者这个other link中阅读更多内容,并更详细地分析哪个DBMS更适合为了你的问题。
答案 2 :(得分:0)
您的应用设计非常适合MySQL。如果您担心可能的扩展问题,我建议您查看NoSQL解决方案而不是PostgreSQL。并不是说PostgreSQL有任何问题(远非如此!),但对于您的用例,高速分布式数据存储将是一个不错的选择,并且大多数NoSQL解决方案比尝试设置更容易设置和工作DBMS集群。
答案 3 :(得分:0)
“我在过去的七年里经常使用MySQL”
那是你的回答。如果没有令人信服的理由切换,请不要。