我对 django 还没有那么丰富的经验,但是我们很快就会创建一个项目,我们想知道将哪个数据库用于我们的后端(Mongodb 或 PostgreSQL)。
我已经阅读了很多帖子,说明了两者之间的差异,但我仍然无法决定选择哪个。考虑到我以前从未使用过 Mongodb。
那我去干嘛??
非常感谢提前
我对 django 还没有那么丰富的经验,但是我们很快就会创建一个项目,我们想知道将哪个数据库用于我们的后端(Mongodb 或 PostgreSQL)。
我已经阅读了很多帖子,说明了两者之间的差异,但我仍然无法决定选择哪个。考虑到我以前从未使用过 Mongodb。
那我去干嘛??
非常感谢提前
MongoDB 是非关系型的,因此您不能执行连接等操作。因此,许多 django.contrib 应用程序和其他第 3 部分应用程序可能无法与 mongodb 一起使用。
但是,如果您需要存储不会直接进入 postgresql 的无模式复杂对象,mongodb 可能非常有用(当然您可以 json-serialize 并放入文本字段,但使用 mongodb 会更好,允许您进行搜索, ..)。
所以,最好的建议是使用两个数据库:
您可能还想使用raw_*
跳过 django orm 的大量(大部分是不必要的)验证的方法。
请记住,数据库,尤其是 sql 与 no-sql,不是相互替代的,而是它们有自己的特性、优点和缺点,所以你必须找出哪种最适合你的需求,在每种情况下,不只是选择一个并将其用于所有事情。
更新
我忘了说:记住你必须使用django-nonrel fork 才能使 django 支持非关系型数据库。它目前是 django 1.3 的一个分支,但基于 1.4 的版本正在开发中。