最新的DB-Engines的排名,可以看到有个DB的上升趋势非常的猛,那就是PostgreSQL。今天我们就来看看这个数据库。
“The world's most advanced Open Source Database”
这简介比较霸气:世界上最先进的开源数据库
发展史
PostgreSQL,简称PG,是一个开源的对象关系型数据库管理系统(ORDBMS),其起源可以追溯到1986年的加州大学伯克利分校。由Michael Stonebraker教授领导的POSTGRES项目,旨在探索数据库技术的新领域。
1986年:PostgreSQL的前身是加州大学伯克利分校的POSTGRES项目,由Michael Stonebraker教授领导,他后来因此获得了图灵奖。
1989年:发布了Postgres的第一个版本,这是一个探索对象关系数据库概念的重要步骤。
1995年:Postgres项目经过重大改进,引入了SQL语言,从而成为了PostgreSQL。
2000年代初:PostgreSQL开始支持高级功能,如GIS数据类型和索引,以及窗口查询和递归查询。
9.0版本:引入了异步流复制,提高了数据库的可靠性和灾难恢复能力¹。
9.1版本:增加了同步流复制和KNN查询索引支持,进一步提升了性能和功能¹。
9.4版本:引入了JSONB数据类型和多主复制功能,使得PostgreSQL在处理JSON数据和高可用性方面更加强大¹近年来:PostgreSQL社区继续活跃,不断推出新版本,每个版本都带来性能提升和新功能。
特点
PostgreSQL以其高级功能和可扩展性而著称。它支持复杂的数据类型、多版本并发控制(MVCC)、异步复制、GIS数据处理等。此外,PG的可扩展性允许用户通过添加扩展如PostGIS来增强其功能。
功能丰富:PostgreSQL提供了许多其他开源数据库系统所不具备的特性,如复杂数据类型、触发器、表继承、函数索引等。
扩展性:通过其插件架构,用户可以添加新的数据类型、函数、操作符、聚合函数等。
数据完整性:PostgreSQL提供了强大的数据完整性支持,包括外键、唯一约束、检查约束等。
MVCC:多版本并发控制支持,允许在不锁定资源的情况下进行读取操作,从而提高并发性能。
全文检索:内置的全文检索功能,支持多种语言。
地理空间数据:通过PostGIS扩展,PostgreSQL支持地理空间数据存储和查询。
安全性:提供行级安全性和角色管理,确保数据安全。
市场使用现状
尽管PostgreSQL在技术上具有许多优势,但根据最新的市场占有率数据,MySQL的市场份额为52%,而PostgreSQL的市场份额为36%,MySQL仍然是市场上最受欢迎的数据库系统之一。
上图是2023年Stack Overflow关于最受欢迎的数据库的调查排名。
PostgreSQL在全球范围内也得到了广泛的应用,从小型企业到大型互联网公司。如Apple、Red Hat、IMDb等都在使用PostgreSQL。
开源背后的力量
可以看出有多家知名公司支持PostgreSQL项目。这些公司包括:
- Amazon Web Services (AWS)
- Microsoft
- Red Hat
- Fujitsu
- ....
这些公司的支持对PostgreSQL社区的发展至关重要,它们提供的资金和资源有助于推动项目的持续创新和改进。如果您想了解更多关于PostgreSQL赞助商的详细信息,可以访问PostgreSQL的官方网站,那里有一个完整的赞助商列表和相关信息。这些赞助商的贡献确保了PostgreSQL作为一个开源项目能够维持其活力和竞争力。
客户端工具
PostgreSQL客户端工具有多种。以下是一些流行的PostgreSQL客户端工具:
- PgAdmin: 是PostgreSQL用户最流行的GUI之一,支持所有PostgreSQL功能的开源项目。
- Navicat: 是一个付费工具,支持多种SQL语言,包括MongoDB、MySQL和PostgreSQL。
- DBeaver: 是一个基于Java开发的免费开源通用数据库管理和开发工具,支持多种不同类型的数据库。
基本与mysql类似。
PostgreSQL 的广泛应用和深远影响力不容小觑。企业在选择数据库技术时,必须全面考量多方面因素,包括技术团队的专长、企业的业务需求、技术架构的兼容性以及未来的扩展性等。这些因素共同决定了 PostgreSQL 在企业中的角色是作为现有技术的补充还是替代。未来企业在不断变化的技术环境中如何做出最合适的选择,我们拭目以待。