首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django应用程序中执行python功能的PostgreSQL和MongoDB

在Django应用程序中执行python功能的PostgreSQL和MongoDB
EN

Stack Overflow用户
提问于 2021-02-13 17:57:26
回答 1查看 229关注 0票数 0

我正在尝试构建一个Django web应用程序,我不知道要使用什么数据库。真正重要的是能够对数据执行python功能,并具有高度的数据操作可能性,使用变化相对较快的数据(每天或每隔一天)。在做了之前的研究之后,PostgreSQL和MongoDB似乎是竞争者,但我真的很想听听你的意见。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-17 09:53:52

数据库结构呢?

PostgreSQL:

PostgreSQL是一个对象-关系型数据库管理系统(ORDBMS),强调可扩展性和标准遵从性。PostgreSQL是符合ACID的,事务性的,具有可更新和物化的视图、触发器和外键.它还支持函数和存储过程。

PostgreSQL使用表、约束、触发器、角色、存储过程和视图作为您使用的核心组件。表由行组成,每一行包含一组相同的列。PostgreSQL使用主键唯一地标识表中的每一行(即记录),使用外键来确保两个相关表之间的引用完整性。

PostgreSQL还支持许多NoSQL特性。

MongoDB:

MongoDB使用类似JSON的文档来存储无模式的数据。在MongoDB中,文档集合不需要预定义的结构,不同文档的列可能有所不同。

MongoDB具有关系数据库的许多特性,包括表达性查询语言和很强的一致性。但是,由于它是无模式的,所以MongoDB允许您创建文档,而不必首先为文档创建结构。

与关系数据库管理系统(RDBMS)进行了有益的比较,在RDBMS中有:

Table | Column | Value | Records.

相比之下,在MongoDB中有:

Collection | Key | Value | Document.

这意味着MongoDB中的集合类似于关系数据库管理系统中的表。

文档就像RDBMS中的记录。可以轻松地通过添加或删除字段来修改文档,而不必重构整个文档。

哪个数据库适合您的业务?

PostgreSQL : PostgreSQL似乎越来越受欢迎。如果您正在寻找一个标准兼容、事务性和ACID兼容的解决方案,并且对NoSQL特性有广泛的支持,那么您应该查看PostgreSQL。

MongoDB :如果您需要实时分析的可伸缩性和缓存,MongoDB是一个很好的选择;但是,它不是为事务性数据(记帐系统等)构建的。MongoDB经常用于移动应用、内容管理、实时分析以及涉及物联网的应用程序。如果您没有明确的模式定义,MongoDB可以是一个很好的选择。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66188203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档