我认为这取决于你的要求,这是一个只有你能回答的问题。我认为设置更容易的想法是愚蠢的。你是软件专业人士,使用有效的工具,学习工具。在ubuntu上,设置一个dev-postgres几乎就是一个应用程序。在
您应该问的第一个问题是SQL是否完全适合我们正在做的事情?如果没有,请使用其他东西(尽管您可能希望选择Django之外的其他东西,我以Django非rel的大量用户的身份这么说),如果是,继续。在
好的一面是,在Django中,如果您真的不想设置Postgres以便在您的开发环境中使用,您可以简单地使用设置文件在dev和production等环境之间交换数据库类型。当然,这是假设您没有在Django中执行任何Postgres特定的操作,也就是说,您只是在Django中使用与数据库无关的ORM和特性/库。对你来说,这听起来不是问题。在
免责声明:我强烈建议您在Postgres上进行大量测试,如果您也在dev中使用SQLite,那么您永远不知道会出现什么集成问题,当然性能特性也会有很大的不同。如果这能让你感觉更好,谷歌自己在googleappenginesdk中使用SQLite在开发时模拟appengine数据存储。在
总之,首先,ready SQLite official use-cases声明。此外,请参阅implementation limits,并查看是否有任何问题会导致您的需求出现问题。在
SQLite的一般优点:易于设置,重量轻,多为单用户或低容量数据库
可以很容易地嵌入到其他应用程序中,例如游戏
便携式
足够快,完成任务
一些简单的情况,如小系统或更换直接磁盘访问
Postgres是一个更健壮的数据库,旨在支持各种不同大小的应用程序,这些应用程序可以从使用关系数据库中获益。一般来说,它几乎具有SQLite的所有特性,但显然更难设置,并不是真正设计为快速嵌入,而且移植性也稍差。换句话说,不是那么简单:)
一般博士后专业人士:设计为多用户
链中有很多有用的工具,包括备份和复制等
为数据类型、在数据库中运行的操作(如过程)等提供全面的功能集
如果您有能力使用SQL,并且出于正确的原因使用SQL,则可以适当地扩展。在
ACID合规和交易受到重视并得到充分实施
;tldr-如果你想长远规划并自信满满,可以使用Postgres。如果你不在乎,那就用SQLite吧。如果您想使用Django通过设置来切换数据库,只要您不做任何特定于DB的操作,就可以享受这两个世界的最佳效果。在