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

它由经验丰富的开发人员社区支持,他们为使其成为高度可靠的 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 数据
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 以及科学数据收集工作。