为什么 PostgreSQL 最受喜爱?

2023年 11月 28日 66.5k 0

PostgreSQL 在 Stackoverflow 2022 开发人员调查中评为最受喜爱的数据库(见下图),超过了 MySQL。

为什么 PostgreSQL 是最受喜爱的呢?

简言之:一个数据库几乎囊括了开发人员需要的所有用例。并且开源的属性还培植了一个应用广泛的生态系统。

OLTP (Online Transaction Processing)

PostgreSQL 支持事务的 ACID 属性,可以进行 CRUD(创建-读取-更新-删除)操作。并且它还有一般关系数据库支持的 View, Materialized View, Trigger, 存储过程等。

OLAP (Online Analytical Processing)

我们可以使用 PostgreSQL 进行 OLAP 中常用的聚合处理。PostgreSQL 基于 HTAP(Hybrid transactional/analytical processing)架构,因此可以很好地在同一个数据库中运行 OLTP 和 OLAP 操作。

HTAP 是咨询公司 Gartner 在 2014 年的报告 Hybrid Transaction/Analytical Processing Will Foster Opportunities for Dramatic Business Innovation 中提出的一个名词,其定义为: 

HTAP 是一种新兴的应用程序架构,它“打破了事务处理和分析之间的壁垒”。它使人们能够做出更明智和更实时的商业决策。

传统的数据架构将事务系统和分析系统分开。我们需要构建大量批处理的任务从 OLTP 数据库拷贝数据到 OLAP 数据库(数据仓库),这个过程叫做 ETL(Extract-Transform-Load)。这种架构不但增加了系统的复杂度,带来了数据错误,还减慢了商业决策的速度。HTAP 大大提高了数据架构的及时性。 

FDW (Foreign Data Wrapper)

FDW 是 PostgreSQL 中的一个扩展,允许我们访问外部数据库中的表结构或数据。

SQL 标准在 2003 年的时候加入了 SQL/MED (SQL Management of External Data),用于处理从 SQL 数据库访问远程对象的标准化方法。2011 年, PostgreSQL 9.1 支持读取远程对象。2013 年,PostgreSQL 9.3 支持写入。现在,FDW 可以访问大部分关系型数据库,NoSQL 数据库和外部文本文件。

流式计算

PipelineDB 是用于高性能时间序列聚合的 PostgreSQL 扩展,旨在为实时报告和分析应用提供支持。

地理空间

PostGIS 是 PostgreSQL 对象关系数据库的空间扩展。它增加了对地理对象的支持,允许在 SQL 中查询位置信息。

时间序列

Timescale 扩展了 PostgreSQL 的时间序列和分析功能。例如,开发人员可以将金融数据流、市场数据与其他业务数据结合起来,构建新的应用程序并发现独特的见解。

分布式表

CitusData 是一个 PostgreSQL 的扩展,将 Postgres 转换为分布式数据库。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论