PostgreSQL 不是 NoSQL 数据库

David Mbochi Njonge 2024年2月16日
  1. 关系型数据库
  2. 分层数据库
  3. NoSQL 数据库
  4. PostgreSQL 不是 NoSQL 数据库
PostgreSQL 不是 NoSQL 数据库

每个数据库都来自不同类别的数据库管理系统。有几种类型的数据库管理系统,它们如下:

  1. 关系型数据库
  2. 面向对象的数据库
  3. 分层数据库
  4. 网络数据库
  5. NoSQL 数据库

本教程将重点介绍关系数据库、分层数据库和 NoSQL 数据库。我们将介绍每个 DBMS 中使用的数据库以及它们之间的区别。

关系型数据库

关系数据库使用表来捕获记录中的数据,并且这些表具有使用主键和外键约束的关系。

下图显示了一个分为行和列的关系数据库表。列代表字段,行代表记录。

关系数据库表

关系数据库包括:

  1. MariaDB
  2. SqLite
  3. MySQL
  4. PostgreSQL

分层数据库

分层数据库将数据存储为记录。这些记录被组织成树状或父子结构,父节点有许多通过链接连接的子节点。

下图显示了分层数据的组织方式。

分层数据图像

分层数据库包括:

  1. IBM 的信息管理系统(IMS)
  2. RDM 移动

NoSQL 数据库

NoSQL 数据库在分布式系统中用于存储大量数据。这些数据库用于实时应用程序和大数据。

这些数据库最适合存储分层数据,它们以 JSON、XML 和 YAML 等格式存储数据。

NoSQL 数据库数据存储类型包括键值存储、文档存储、列存储和基于图形的存储。

下图显示了如何使用键值存储在 NoSQL 数据库中存储数据。

键值数据存储图像

NoSQL 数据库包括:

  1. MongoDB
  2. Redis

PostgreSQL 不是 NoSQL 数据库

PostgreSQL 是一个可以使用 JSON 执行查询的关系数据库,JSON 是上述 NoSQL 数据库使用的一种格式。

JSON 格式是用于与半结构化数据交互的最常用方法,开发人员可能会因此推断 PostgreSQL 是 NoSQL 数据库,但事实并非如此。

请注意,即使你在使用 PostgreSQL 时使用 JSON 格式,数据也会记录在具有关系的表中。

下图显示了 JSON 数据结构,可以与支持 JSON 的数据库(如 PostgreSQL)和 NoSQL 数据库(如 MongoDB)一起使用。

JSON 结构

David Mbochi Njonge avatar David Mbochi Njonge avatar

David is a back end developer with a major in computer science. He loves to solve problems using technology, learning new things, and making new friends. David is currently a technical writer who enjoys making hard concepts easier for other developers to understand and his work has been published on multiple sites.

LinkedIn GitHub