PostgreSQL 不是 NoSQL 数据库
每个数据库都来自不同类别的数据库管理系统。有几种类型的数据库管理系统,它们如下:
- 关系型数据库
- 面向对象的数据库
- 分层数据库
- 网络数据库
- NoSQL 数据库
本教程将重点介绍关系数据库、分层数据库和 NoSQL 数据库。我们将介绍每个 DBMS 中使用的数据库以及它们之间的区别。
关系型数据库
关系数据库使用表来捕获记录中的数据,并且这些表具有使用主键和外键约束的关系。
下图显示了一个分为行和列的关系数据库表。列代表字段,行代表记录。
关系数据库包括:
- MariaDB
- SqLite
- MySQL
- PostgreSQL
分层数据库
分层数据库将数据存储为记录。这些记录被组织成树状或父子结构,父节点有许多通过链接连接的子节点。
下图显示了分层数据的组织方式。
分层数据库包括:
- IBM 的信息管理系统(IMS)
- RDM 移动
NoSQL 数据库
NoSQL 数据库在分布式系统中用于存储大量数据。这些数据库用于实时应用程序和大数据。
这些数据库最适合存储分层数据,它们以 JSON、XML 和 YAML 等格式存储数据。
NoSQL 数据库数据存储类型包括键值存储、文档存储、列存储和基于图形的存储。
下图显示了如何使用键值存储在 NoSQL 数据库中存储数据。
NoSQL 数据库包括:
- MongoDB
- Redis
PostgreSQL 不是 NoSQL 数据库
PostgreSQL 是一个可以使用 JSON 执行查询的关系数据库,JSON 是上述 NoSQL 数据库使用的一种格式。
JSON 格式是用于与半结构化数据交互的最常用方法,开发人员可能会因此推断 PostgreSQL 是 NoSQL 数据库,但事实并非如此。
请注意,即使你在使用 PostgreSQL 时使用 JSON 格式,数据也会记录在具有关系的表中。
下图显示了 JSON 数据结构,可以与支持 JSON 的数据库(如 PostgreSQL)和 NoSQL 数据库(如 MongoDB)一起使用。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。