什么是 PostgreSQL?简介、优点与缺点

什么是 PostgreSQL?

PostgreSQL 是一种企业级开源数据库管理系统。它同时支持 SQL 和 JSON,用于关系型和非关系型查询,以实现可扩展性和 SQL 合规性。PostgreSQL 支持高级数据类型和性能优化功能,这些功能仅在 Oracle 和 SQL Server 等昂贵的商业数据库中可用。它也被称为 Postgres。

Introduction to PostgreSQL
PostgreSQL 简介

它由经验丰富的开发人员社区支持,他们为使其成为高度可靠的 DBMS 系统做出了巨大贡献。

PostgreSQL 历史

PostgreSQL(最初称为 Postgres)由计算机科学教授 Michael Stonebraker 和他的团队创建。如今,它已成为最受欢迎的开源数据库之一。

这是 PostgreSQL 的简要历史

  • INGRES 开发于 1977 年
  • Michael Stonebraker 和他的同事于 1986 年开发了 Postgres
  • 支持真正的 ACID 和 PL/pgSQL – 1990 年
  • 于 1995 年发布为 Postgres95
  • 于 1996 年将 Postgres95 重新发布为 PostgreSQL 6.0
  • 添加了 MVCC、GUC、Join 语法控件和过程语言加载器 – 1998-2001 年
  • 版本 7.2 至 8.2:包括模式支持、非阻塞 VACUUM、角色和 dblink 等功能 – 2002-2006 年
  • PostgreSQL 8.4 于 2009 年发布
  • PostgreSQL 9.0 于 2010 年发布
  • NYCPUG(纽约市 PostgreSQL 用户组)加入 PgUS(美国 PostgreSQL 协会)- 2013 年
  • 举办 PGconf - 2014 年

PostgreSQL 特性

以下是 PostgreSQL 的主要特性

  • 帮助开发人员构建应用程序。
  • 它允许管理员通过保护数据完整性来构建容错环境。
  • 与使用所有主要语言和中间件的各种平台兼容。
  • 它提供了最复杂的锁定机制。
  • 支持多版本并发控制
  • 成熟的服务器端编程功能。
  • 符合 ANSI SQL 标准。
  • 完全支持客户端-服务器网络架构。
  • 基于日志和基于触发器的复制 SSL。
  • 备用服务器和高可用性。
  • 面向对象且兼容 ANSI-SQL2008。
  • 对 JSON 的支持允许与 NoSQL 等其他数据存储链接,NoSQL 作为多语言数据库的联合中心。

PostgreSQL 优点

以下是 PostgreSQL 的主要优势/好处

  • PostgreSQL 可以作为 LAMP 堆栈选项运行动态网站和 Web 应用程序。
  • PostgreSQL 的预写日志使其成为高度容错的数据库。
  • PostgreSQL 源代码根据开源许可证免费提供。这使您可以自由地根据您的业务需求使用、修改和实施它。
  • PostgreSQL 支持地理对象,因此您可以将其用于基于位置的服务和地理信息系统。
  • PostgreSQL 支持地理对象,因此可以作为地理空间数据存储,用于基于位置的服务和地理信息系统。
  • 要学习 Postgres,您不需要太多培训,因为它易于使用。
  • PostgreSQL 的嵌入式和企业用途的维护和管理成本低。

PostgreSQL 缺点

以下是 PostgreSQL 的缺点/限制

  • Postgres 不属于任何一家公司。因此,尽管功能齐全且与其他 DBMS 系统相当,但它在推广其名称方面遇到了困难。
  • 为了提高速度而进行的更改比 MySQL 需要更多的工作,因为 PostgreSQL 侧重于兼容性。
  • 许多开源应用程序支持 MySQL,但可能不支持 PostgreSQL。
  • 在性能指标上,它比MySQL慢。

PostgreSQL 应用

以下是 PostgreSQL 的流行应用

金融行业

PostgreSQL 是金融行业的理想DBMS 系统。此外,它完全符合 ACID 标准,是 OLTP(在线事务处理)的理想选择。它还能够执行数据库分析。它可以与 Matlab 和 R 等数学软件集成。

政府 GIS 数据

PostGIS
PostGIS

PostgreSQL 提供强大的 GIS,称为“PostGIS”。此扩展提供了数百种函数来处理不同格式的几何数据。PostGIS 高度符合标准。此外,通过使用 QGIS 或 GeoServer,开源社区提供了处理地理数据的最简单方法。

制造业

如今,工业制造商还使用 PostgreSQL 来加快其整体业务流程。它还通过将此开源 DBMS 用作存储后端来帮助他们优化供应链绩效。它使公司能够降低其业务运营成本。

Web 技术和 NoSQL

如果您的网站需要处理每秒数百甚至数千个请求,那么可伸缩性无疑是一个大问题。在这里,Postgre 被证明是最佳解决方案。

PostgreSQL 与所有现代 Web 框架(如 Django、Node.js

Hibernate、PHP 等)配合良好。它还提供复制功能,允许您根据需要扩展任意数量的数据库服务器。

科学数据

如果您正在从事研究和科学项目,则需要生成 TB 级数据。因此,以尽可能有效的方式处理它非常重要。为此,PostgreSQL 提供了出色的分析功能和强大的 SQL 引擎。这有助于您轻松管理大量数据。

👉 还可以学习如何在 Ubuntu 上安装 PostgreSQL

MySQL vs PostgreSQL

以下是 MySQL 和 PostgreSQL 之间的主要区别

MYSQL PostgreSQL
MySQL 项目已根据 GNU 许可证和其他专有协议的条款发布其源代码。 PostgreSQL 在 PostgreSQL 许可证下发布。
它现在由 Oracle 公司拥有,并提供多个付费版本。 它是免费且开源的软件。
这意味着您将永远不需要为该服务支付任何费用。
MySQL 仅在使用 NDB 和 InnoDB Cluster 存储引擎时才符合 ACID 标准。 PostgreSQL 完全符合 ACID 标准。
MySQL 在仅读速度很重要的 OLAP 和 OLTP 系统中表现良好。 PostgreSQL 性能在需要执行复杂查询的系统中表现最佳。
MySQL 是可靠的,并且与 BI(商业智能)应用程序配合良好,这些应用程序难以读取。 PostgreSQL 与 BI 应用程序配合良好。但是,它更适合数据仓库和数据分析应用程序,这些应用程序需要快速的读写速度。

摘要

  • PostgreSQL 简介:PostgreSQL 是一种企业级开源数据库管理系统
  • PostgreSQL(最初称为 Postgres)由计算机科学教授 Michael Stonebraker 和他的团队创建
  • PostgreSQL 的好处之一是它与使用所有主要语言和中间件的各种平台兼容。
  • POSTGRES 服务器是免费且开源的软件,这意味着您将永远不需要为该服务支付任何费用。
  • PostgreSQL 的一个特点是它可以作为 LAMP 堆栈的选项运行动态网站和 Web 应用程序。
  • 它支持 JSON 数据。
  • Postgres 不属于任何一家公司。因此,尽管功能齐全且与其他 DBMS 系统相当,但它在推广其名称方面遇到了困难。
  • PostgreSQL 广泛用于金融行业、政府 GIS 数据、制造业、Web 技术和 NoSQL 以及科学数据收集工作。