这是本节的多页打印视图。 .
同类对比
与 RDS 对比
Pigsty 是使用 Apache-2.0 开源的本地优先 RDS 替代,可以部署在您自己的物理机/虚拟机上,也可以部署在云服务器上。
因此,我们选择了全球份额第一的亚马逊云 AWS RDS for PostgreSQL,以及中国市场份额第一的阿里云 RDS for PostgreSQL 作为参照对象。
阿里云 RDS 与 AWS RDS 均为闭源云数据库服务,通过租赁模式,仅在公有云上对外提供。以下云厂商信息是 2024 年 2 月的存档,基于当时的 PostgreSQL 16 主干版本;“功能特性”表中的 Pigsty 列按当前口径维护,后续“重要扩展”版本表整体保留为同期历史快照。
功能特性
| 指标 | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|
| 大版本支持 | 14 - 18 | 13 - 18 | 13 - 18 |
| 只读从库 | 支持任意数量只读从库 | 备实例不对用户开放 | 备实例不对用户开放 |
| 读写分离 | 支持端口区分读写流量 | 独立收费组件 | 独立收费组件 |
| 快慢分离 | 支持离线 ETL 实例 | 未见相关特性 | 未见相关特性 |
| 异地灾备 | 支持备份集群 | 支持多可用区部署 | 支持多可用区部署 |
| 延迟从库 | 支持延迟实例 | 未见相关特性 | 未见相关特性 |
| 负载均衡 | HAProxy / LVS | 独立收费组件 | 独立收费组件 |
| 连接池 | Pgbouncer | 独立收费组件:RDS | 独立收费组件:RDS Proxy |
| 高可用 | Patroni / etcd | 需高可用版提供支持 | 需高可用版提供支持 |
| 时间点恢复 | pgBackRest / Silo | 提供备份支持 | 提供备份支持 |
| 指标监控 | VictoriaMetrics / Exporter | 免费基础版/收费进阶版 | 免费基础版/收费进阶版 |
| 日志采集 | VictoriaLogs / Vector | 基础支持 | 基础支持 |
| 可视化系统 | Grafana / Echarts | 提供基本监控 | 提供基本监控 |
| 告警聚合通知 | Alertmanager | 基础支持 | 基础支持 |
重要扩展
这里保留了一份基于 2024-02-28 可见信息的 PostgreSQL 16 扩展支持历史快照。表内版本与项目(包括后来归档并从目录移除的 pg_analytics)不代表 Pigsty v4.5.0 或云厂商的当前支持矩阵;当前 Pigsty 能力请以 扩展目录 为准,云服务能力请重新核对厂商文档。
| 扩展名称 | Pigsty RDS / PGDG 官方仓库 | 阿里云 RDS | AWS RDS |
|---|---|---|---|
| 加装扩展 | 自由加装 | 不允许 | 不允许 |
| 地理空间 | PostGIS 3.4.2 | PostGIS 3.3.4 / Ganos 6.1 | PostGIS 3.4.1 |
| 雷达点云 | PG PointCloud 1.2.5 | Ganos PointCloud 6.1 | |
| 向量嵌入 | PGVector 0.6.1 / Svector 0.5.6 | pase 0.0.1 | PGVector 0.6 |
| 机器学习 | PostgresML 2.8.1 | ||
| 时序扩展 | TimescaleDB 2.14.2 | ||
| 水平分布式 | Citus 12.1 | ||
| 列存扩展 | Hydra 1.1.1 | ||
| 全文检索 | pg_bm25 0.5.6 |
||
| 图数据库 | Apache AGE 1.5.0 | ||
| GraphQL | PG GraphQL 1.5.0 | ||
| OLAP | pg_analytics 0.5.6 | ||
| 消息队列 | pgq 3.5.0 | ||
| DuckDB | duckdb_fdw 1.1 | ||
| 模糊分词 | zhparser 1.1 / pg_bigm 1.2 | zhparser 1.0 / pg_jieba | pg_bigm 1.2 |
| CDC 抽取 | wal2json 2.5.3 | wal2json 2.5 | |
| 膨胀治理 | pg_repack 1.5.0 | pg_repack 1.4.8 | pg_repack 1.5.0 |
AWS RDS for PostgreSQL 16 可用扩展(已刨除 PG 自带扩展)
| name | pg16 | pg15 | pg14 | pg13 | pg12 | pg11 | pg10 |
|---|---|---|---|---|---|---|---|
| amcheck | 1.3 | 1.3 | 1.3 | 1.2 | 1.2 | yes | 1 |
| auto_explain | yes | yes | yes | yes | yes | yes | yes |
| autoinc | 1 | 1 | 1 | 1 | null | null | null |
| bloom | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| bool_plperl | 1 | 1 | 1 | 1 | null | null | null |
| btree_gin | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.2 |
| btree_gist | 1.7 | 1.7 | 1.6 | 1.5 | 1.5 | 1.5 | 1.5 |
| citext | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 | 1.5 | 1.4 |
| cube | 1.5 | 1.5 | 1.5 | 1.4 | 1.4 | 1.4 | 1.2 |
| dblink | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| dict_int | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| dict_xsyn | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| earthdistance | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
| fuzzystrmatch | 1.2 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
| hstore | 1.8 | 1.8 | 1.8 | 1.7 | 1.6 | 1.5 | 1.4 |
| hstore_plperl | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| insert_username | 1 | 1 | 1 | 1 | null | null | null |
| intagg | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
| intarray | 1.5 | 1.5 | 1.5 | 1.3 | 1.2 | 1.2 | 1.2 |
| isn | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 |
| jsonb_plperl | 1 | 1 | 1 | 1 | 1 | null | null |
| lo | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
| ltree | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | 1.1 | 1.1 |
| moddatetime | 1 | 1 | 1 | 1 | null | null | null |
| old_snapshot | 1 | 1 | 1 | null | null | null | null |
| pageinspect | 1.12 | 1.11 | 1.9 | 1.8 | 1.7 | 1.7 | 1.6 |
| pg_buffercache | 1.4 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
| pg_freespacemap | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pg_prewarm | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 |
| pg_stat_statements | 1.1 | 1.1 | 1.9 | 1.8 | 1.7 | 1.6 | 1.6 |
| pg_trgm | 1.6 | 1.6 | 1.6 | 1.5 | 1.4 | 1.4 | 1.3 |
| pg_visibility | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pg_walinspect | 1.1 | 1 | null | null | null | null | null |
| pgcrypto | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
| pgrowlocks | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pgstattuple | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 |
| plperl | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| plpgsql | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| pltcl | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| postgres_fdw | 1.1 | 1.1 | 1.1 | 1 | 1 | 1 | 1 |
| refint | 1 | 1 | 1 | 1 | null | null | null |
| seg | 1.4 | 1.4 | 1.4 | 1.3 | 1.3 | 1.3 | 1.1 |
| sslinfo | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| tablefunc | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| tcn | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| tsm_system_rows | 1 | 1 | 1 | 1 | 1 | 1 | 1.1 |
| tsm_system_time | 1 | 1 | 1 | 1 | 1 | 1 | 1.1 |
| unaccent | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
| uuid-ossp | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
阿里云 RDS for PostgreSQL 16 可用扩展(已刨除 PG 自带扩展)
| name | pg16 | pg15 | pg14 | pg13 | pg12 | pg11 | pg10 | ali_desc |
|---|---|---|---|---|---|---|---|---|
| bloom | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 提供一种基于布鲁姆过滤器的索引访问方法。 |
| btree_gin | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.2 | 提供一个为多种数据类型和所有 enum 类型实现 B 树等价行为的 GIN 操作符类示例。 |
| btree_gist | 1.7 | 1.7 | 1.6 | 1.5 | 1.5 | 1.5 | 1.5 | 提供一个为多种数据类型和所有 enum 类型实现 B 树等价行为的 GiST 操作符类示例。 |
| citext | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 | 1.5 | 1.4 | 提供一种大小写不敏感的字符串类型。 |
| cube | 1.5 | 1.5 | 1.5 | 1.4 | 1.4 | 1.4 | 1.2 | 提供一种数据类型来表示多维立方体。 |
| dblink | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 跨库操作表。 |
| dict_int | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 附加全文搜索词典模板的示例。 |
| earthdistance | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 提供两种不同的方法来计算地球表面的大圆距离。 |
| fuzzystrmatch | 1.2 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 判断字符串之间的相似性和距离。 |
| hstore | 1.8 | 1.8 | 1.8 | 1.7 | 1.6 | 1.5 | 1.4 | 在单一 PostgreSQL 值中存储键值对。 |
| intagg | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 提供一个整数聚集器和一个枚举器。 |
| intarray | 1.5 | 1.5 | 1.5 | 1.3 | 1.2 | 1.2 | 1.2 | 提供一些有用的函数和操作符来操纵不含空值的整数数组。 |
| isn | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | 按照一个硬编码的前缀列表对输入进行验证,也被用来在输出时连接号码。 |
| ltree | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | 1.1 | 1.1 | 用于表示存储在一个层次树状结构中的数据的标签。 |
| pg_buffercache | 1.4 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 提供一种方法实时检查共享缓冲区。 |
| pg_freespacemap | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 检查空闲空间映射(FSM)。 |
| pg_prewarm | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | 提供一种方便的方法把数据载入到操作系统缓冲区或者 PostgreSQL 缓冲区。 |
| pg_stat_statements | 1.1 | 1.1 | 1.9 | 1.8 | 1.7 | 1.6 | 1.6 | 提供一种方法追踪服务器执行的所有 SQL 语句的执行统计信息。 |
| pg_trgm | 1.6 | 1.6 | 1.6 | 1.5 | 1.4 | 1.4 | 1.3 | 提供字母数字文本相似度的函数和操作符,以及支持快速搜索相似字符串的索引操作符类。 |
| pgcrypto | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 为 PostgreSQL 提供了密码函数。 |
| pgrowlocks | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 提供一个函数来显示一个指定表的行锁定信息。 |
| pgstattuple | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 提供多种函数来获得元组层的统计信息。 |
| plperl | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 提供 perl 过程语言。 |
| plpgsql | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 提供 SQL 过程语言。 |
| pltcl | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 提供 tcl 过程语言。 |
| postgres_fdw | 1.1 | 1.1 | 1.1 | 1 | 1 | 1 | 1 | 跨库操作表。 |
| sslinfo | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 提供当前客户端提供的 SSL 证书的有关信息。 |
| tablefunc | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 包括多个返回表的函数。 |
| tsm_system_rows | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 提供表采样方法 SYSTEM_ROWS。 |
| tsm_system_time | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 提供了表采样方法 SYSTEM_TIME。 |
| unaccent | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 文本搜索字典,它能从词位中移除重音(附加符号)。 |
| uuid-ossp | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 提供函数使用几种标准算法之一产生通用唯一标识符(UUID)。 |
| xml2 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 提供 XPath 查询和 XSLT 功能。 |
性能对比
| 指标 | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|
| 最佳性能 | PGTPC on NVME SSD 评测 sysbench oltp_rw | RDS PG 性能白皮书 sysbench oltp 场景 每核 QPS 4000 ~ 8000 | |
| 存储规格:最高档容量 | 32TB / NVME SSD | 32 TB / ESSD PL3 | 64 TB / io2 EBS Block Express |
| 存储规格:最高档 IOPS | 4K 随机读:最大3M,随机写 2000~350K | 4K 随机读:最大 1M | 16K 随机 IOPS: 256K |
| 存储规格:最高档延迟 | 4K 随机读:75µs,随机写 15µs | 4K 随机读:200µs | 500µs / 推断为16K 随机 IO |
| 存储规格:最高档可靠性 | UBER < 1e-18,折合18个9 MTBF: 200万小时 5DWPD,持续三年 | 可靠性 9个9, 合 UBER 1e-9 存储与数据可靠性 | 持久性:99.999%,5个9 (0.001% 年故障率) io2 说明 |
| 存储规格:最高档成本 | 31.5 ¥/TB·月 ( 5年质保均摊 / 3.2T / 企业级 / MLC ) | 3200¥/TB·月 (原价 6400¥,包月4000¥) 3年预付整体打5折才有此价格 | 1900 ¥/TB·月 使用最大规格 65536GB / 256K IOPS 最大优惠 |
可观测性
Pigsty 提供近 3000 类监控指标与 50+ 监控面板,覆盖数据库、主机、连接池、负载均衡等对象,提供完整的可观测性能力。

Pigsty 提供了 638 与 PostgreSQL 有关的监控指标,而 AWS RDS 只有 99 个,阿里云 RDS 更是只有个位数指标:

此外,也有一些项目提供了监控 PostgreSQL 的能力,但都相对比较简单初级:
- pgwatch: 123 类指标
- pgmonitor: 156 类指标
- datadog: 69 类指标
- pgDash
- ClusterControl
- pganalyze
- Aliyun RDS: 8 类指标
- AWS RDS: 99 类指标
- Azure RDS
可维护性
| 指标 | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|
| 系统易用性 | 简单 | 简单 | 简单 |
| 配置管理 | 配置文件 / CMDB 基于 Ansible Inventory | 可使用 Terraform | 可使用 Terraform |
| 变更方式 | 幂等剧本 基于 Ansible Playbook | 控制台点击操作 | 控制台点击操作 |
| 参数调优 | 自动根据节点适配 四种预置模板 OLTP, OLAP, TINY, CRIT | ||
| Infra as Code | 原生支持 | 可使用 Terraform | 可使用 Terraform |
| 可定制参数点 | Pigsty Parameters 283 个 | ||
| 服务与支持 | 提供商业订阅支持兜底 | 提供售后工单支持 | 提供售后工单支持 |
| 无互联网部署 | 可离线安装部署 | N/A | N/A |
| 数据库迁移 | 提供从现有 v10+ PG 实例基于逻辑复制不停机迁移至 Pigsty 托管实例的剧本 | 提供上云辅助迁移 Aliyun RDS 数据同步 |
成本
经验上看,软硬件资源的部分 RDS 单位成本是自建的 5 ~ 15 倍,租售比通常在一个月。详情请参考 成本分析。
| 要素 | 指标 | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|---|
| 成本 | 软件授权/服务费用 | 免费,硬件约 20 - 40 ¥/核·月 | 200 ~ 400 ¥/核·月 | 400 ~ 1300 ¥/核·月 |
| 服务支持费用 | 服务约 100 ¥/ 核·月 | 包含在 RDS 成本中 |
其他本地数据库管控软件
一些提供管理 PostgreSQL 能力的软件与供应商
- Aiven: 闭源商业云托管方案
- Percona: 商业咨询,简易 PG 发行版
- ClusterControl:商业数据库管控软件
其他 Kubernetes Operator
Pigsty 拒绝在生产环境中使用 Kubernetes 管理数据库,因此与这些方案在生态位上存在差异。
- PGO
- StackGres
- CloudNativePG
- TemboOperator
- PostgresOperator
- PerconaOperator
- Kubegres
- KubeDB
- KubeBlocks
更多信息请参阅:
1 - 成本对比
总体概览
以下成本数据用于说明量级差异,云厂商价格与折扣会随时间、区域、实例规格和采购方式变化。
| EC2 | 核·月 | RDS | 核·月 |
|---|---|---|---|
| DHH 自建核月价格(192C 384G) | 25.32 | 初级开源数据库 DBA 参考工资 | 15K/人·月 |
| IDC 自建机房(独占物理机: 64C384G) | 19.53 | 中级开源数据库 DBA 参考工资 | 30K/人·月 |
| IDC 自建机房(容器,超卖500%) | 7 | 高级开源数据库 DBA 参考工资 | 60K/人·月 |
| UCloud 弹性虚拟机(8C16G,有超卖) | 25 | ORACLE 数据库授权 | 10000 |
| 阿里云 弹性服务器 2x 内存(独占无超卖) | 107 | 阿里云 RDS PG 2x 内存(独占) | 260 |
| 阿里云 弹性服务器 4x 内存(独占无超卖) | 138 | 阿里云 RDS PG 4x 内存(独占) | 320 |
| 阿里云 弹性服务器 8x 内存(独占无超卖) | 180 | 阿里云 RDS PG 8x 内存(独占) | 410 |
| AWS C5D.METAL 96C 200G (按月无预付) | 100 | AWS RDS PostgreSQL db.T2 (2x) | 440 |
| AWS C5D.METAL 96C 200G (预付三年) | 80 | AWS RDS PostgreSQL db.M5 (4x) | 611 |
| AWS C7A.METAL 192C 384G (预付三年) | 104.8 | AWS RDS PostgreSQL db.R6G (8x) | 786 |
RDS成本参考
| 付费模式 | 价格 | 折合每年(万¥) |
|---|---|---|
| IDC 自建(单物理机) | ¥7.5w / 5年 | 1.5 |
| IDC 自建(2~3台组 HA) | ¥15w / 5年 | 3.0 ~ 4.5 |
| 阿里云 RDS 按需 | ¥87.36/时 | 76.5 |
| 阿里云 RDS 月付(基准) | ¥4.2w / 月 | 50 |
| 阿里云 RDS 年付(85折) | ¥425095 / 年 | 42.5 |
| 阿里云 RDS 3年付(5折) | ¥750168 / 3年 | 25 |
| AWS 按需 | $25,817 / 月 | 217 |
| AWS 1年不预付 | $22,827 / 月 | 191.7 |
| AWS 3年全预付 | 12w$ + 17.5k$/月 | 175 |
| AWS 中国/宁夏按需 | ¥197,489 / 月 | 237 |
| AWS 中国/宁夏1年不预付 | ¥143,176 / 月 | 171 |
| AWS 中国/宁夏3年全预付 | ¥647k + 116k/月 | 160.6 |
我们可以对比一下自建与云数据库的成本差异:
| 方式 | 折合每年(万元) |
|---|---|
| IDC 托管服务器 64C / 384G / 3.2TB NVME SSD 660K IOPS (2~3台) | 3.0 ~ 4.5 |
| 阿里云 RDS PG 高可用版 pg.x4m.8xlarge.2c, 64C / 256GB / 3.2TB ESSD PL3 | 25 ~ 50 |
| AWS RDS PG 高可用版 db.m5.16xlarge, 64C / 256GB / 3.2TB io1 x 80k IOPS | 160 ~ 217 |
ECS 成本参考
排除 NVMe SSD / ESSD PL3 后的纯算力价格对比
以阿里云为例,纯算力包月模式的价格是自建基准的 5 ~ 7 倍,预付五年的价格是自建的 2 倍
| 付费模式 | 单价(¥/核·月) | 相对于标准价格 | 自建溢价倍率 |
|---|---|---|---|
| 按量付费(1.5倍) | ¥ 202 | 160 % | 9.2 ~ 11.2 |
| 包月(标准价格) | ¥ 126 | 100 % | 5.7 ~ 7.0 |
| 预付一年(65折) | ¥ 83.7 | 66 % | 3.8 ~ 4.7 |
| 预付二年(55折) | ¥ 70.6 | 56 % | 3.2 ~ 3.9 |
| 预付三年(44折) | ¥ 55.1 | 44 % | 2.5 ~ 3.1 |
| 预付四年(35折) | ¥ 45 | 35 % | 2.0 ~ 2.5 |
| 预付五年(30折) | ¥ 38.5 | 30 % | 1.8 ~ 2.1 |
| DHH @ 2023 | ¥ 22.0 | ||
| 探探 IDC 自建 | ¥ 18.0 |
含 NVMe SSD / ESSD PL3 情况下的等效价格对比
包含常用规格后的 NVMe SSD 规格之后,纯算力包月模式的价格是自建基准的 11 ~ 14 倍,预付五年的价格是自建的 9 倍左右。
| 付费模式 | 单价(¥/核·月) | + 40GB ESSD PL3 | 自建溢价比例 |
|---|---|---|---|
| 按量付费(1.5倍) | ¥ 202 | ¥ 362 | 14.3 ~ 18.6 |
| 包月(标准价格) | ¥ 126 | ¥ 286 | 11.3 ~ 14.7 |
| 预付一年(65折) | ¥ 83.7 | ¥ 244 | 9.6 ~ 12.5 |
| 预付二年(55折) | ¥ 70.6 | ¥ 230 | 9.1 ~ 11.8 |
| 预付三年(44折) | ¥ 55.1 | ¥ 215 | 8.5 ~ 11.0 |
| 预付四年(35折) | ¥ 45 | ¥ 205 | 8.1 ~ 10.5 |
| 预付五年(30折) | ¥ 38.5 | ¥ 199 | 7.9 ~ 10.2 |
| DHH @ 2023 | ¥ 25.3 | ||
| 探探 IDC 自建 | ¥ 19.5 |
DHH 案例:192核配12.8TB Gen4 SSD (1c:66);探探案例: 64核配3.2T Gen3 MLC SSD (1c:50)。
云上价格每核配比40GB ESSD PL3(1核:4x 内存:40x 磁盘)计算。
EBS成本参考
| 评估因素 | 本地 PCI-E NVME SSD | Aliyun ESSD PL3 | AWS io2 Block Express |
|---|---|---|---|
| 容量 | 32TB | 32 TB | 64 TB |
| IOPS | 4K 随机读:600K ~ 1.1M 4K 随机写 200K ~ 350K | 4K 随机读:最大 1M | 16K 随机 IOPS: 256K |
| 延迟 | 4K 随机读:75µs 4K 随机写:15µs | 4K 随机读: 200µs | 随机 IO:500µs 上下文推断为16K |
| 可靠性 | UBER < 1e-18,折合18个9 MTBF: 200万小时 5DWPD,持续三年 | 数据可靠性 9个9 存储与数据可靠性 | 持久性:99.999%,5个9 (0.001% 年故障率) io2 说明 |
| 成本 | 16 ¥/TB· 月 ( 5年均摊 / 3.2T MLC ) 5 年质保,¥3000 零售 | 3200¥/TB· 月 (原价 6400¥,包月4000¥) 3年预付整体打5折才有此价格 | 1900 ¥/TB· 月 使用最大规格 65536GB 256K IOPS 最优惠状态 |
| SLA | 5年质保 出问题直接换新 | Aliyun RDS SLA 可用性 99.99%: 月费 15% 99%: 月费 30% 95%: 月费 100% | Amazon RDS SLA 可用性 99.95%: 月费 15% 99%: 月费 25% 95%: 月费 100% |
S3成本参考
| Date | $/GB·月 | ¥/TB·5年 | HDD ¥/TB | SSD ¥/TB |
|---|---|---|---|---|
| 2006.03 | 0.150 | 63000 | 2800 | |
| 2010.11 | 0.140 | 58800 | 1680 | |
| 2012.12 | 0.095 | 39900 | 420 | 15400 |
| 2014.04 | 0.030 | 12600 | 371 | 9051 |
| 2016.12 | 0.023 | 9660 | 245 | 3766 |
| 2023.12 | 0.023 | 9660 | 105 | 280 |
| 其他参考价 | 高性能存储 | 顶配底折价 | 与采购 NVMe SSD | 价格参考 |
| S3 Express | 0.160 | 67200 | DHH 12T | 1400 |
| EBS io2 | 0.125 + IOPS | 114000 | Shannon 3.2T | 900 |
下云合集
曾几何时,“上云”近乎成为技术圈的政治正确,整整一代应用开发者的视野被云遮蔽。就让我们用实打实的数据分析与亲身经历,讲清楚公有云租赁模式的价值与陷阱 —— 在这个降本增效的时代中,供您借鉴与参考 —— 请看 《云计算泥石流:合订本》
云基础资源篇
云商业模式篇
下云奥德赛篇
云故障复盘篇
RDS 翻车篇
云厂商画像篇
-
互联网技术大师速成班【转载】
-
门内的国企如何看门外的云厂商【转载】
-
卡在政企客户门口的阿里云【转载】
-
互联网故障背后的草台班子们【转载】
-
云厂商眼中的客户:又穷又闲又缺爱【转载】
2 - 开源影响力
中国 PostgreSQL 生态项目影响力
GitHub Star 数降序排列,最后更新时间为北京时间 2026-08-13。
| 项目 | Star | 作者 | 类型 | 简介 |
|---|---|---|---|---|
pgsty/pigsty |
5521 | 冯若航 @ PGSTY | 发行版 | 开箱即用的 PostgreSQL 发行版 |
polardb/PolarDB-for-PostgreSQL |
3191 | 阿里云 | 内核 | 阿里云开源 PolarDB for PostgreSQL 内核 |
tensorchord/pgvecto.rs |
2181 | TensorChord | 扩展 | Rust 编写的向量检索扩展 |
tensorchord/VectorChord |
1770 | TensorChord | 扩展 | 下一代向量检索扩展 |
Tencent/TBase |
1439 | 腾讯云 | 内核 | 腾讯分布式 HTAP 数据库内核 |
apache/cloudberry |
1315 | HashData | 内核 | 开源 MPP 数据仓库内核 |
IvorySQL/IvorySQL |
1051 | 济南瀚高 | 内核 | Oracle 兼容 PostgreSQL 分支 |
pgplex/pgschema |
995 | 陈天舟 | 工具 | 声明式 Postgres Schema 迁移 CLI |
amutu/zhparser |
869 | Jov | 扩展 | 基于 SCWS 的中文全文分词扩展 |
opengauss-mirror/openGauss-server |
784 | 华为 | 内核 | 早期 PG 9.2 内核分叉 |
HaloTech-Co-Ltd/openHalo |
437 | 易景羲和 | 内核 | MySQL 协议兼容的 PostgreSQL 内核 |
jaiminpan/pg_jieba |
417 | Pan Jiamin | 扩展 | 基于结巴分词的中文全文检索扩展 |
alitrack/duckdb_fdw |
409 | 李红艳 | 扩展 | DuckDB 外部数据源包装器 |
tensorchord/VectorChord-bm25 |
375 | TensorChord | 扩展 | PostgreSQL 原生 BM25 排序索引 |
pgsty/pg_exporter |
359 | 冯若航 @ PGSTY | 工具 | PostgreSQL 与 Pgbouncer 指标采集器 |
ChenHuajun/pg_roaringbitmap |
286 | 陈华军 @ 苏宁 | 扩展 | PostgreSQL RoaringBitmap 位图扩展 |
pgsty/pig |
199 | 冯若航 @ PGSTY | 工具 | PostgreSQL 扩展包管理器 |
tensorchord/pg_bestmatch.rs |
101 | TensorChord | 扩展 | 在 PostgreSQL 内生成 BM25 稀疏向量 |
wublabdubdub/PDU-PostgreSQLDataUnloader |
101 | 张晨 | 工具 | PostgreSQL 数据库救援与数据卸载工具 |
tensorchord/pg_tokenizer.rs |
45 | TensorChord | 扩展 | 全文检索 tokenizer 扩展 |
jaiminpan/pg_scws |
41 | Pan Jiamin | 扩展 | 基于 SCWS 的中文分词扩展 |
pgsty/pgext |
31 | 冯若航 @ PGSTY | 工具 | PG 扩展目录与元数据工具 |
tooltip:
trigger: axis
axisPointer: { type: shadow }
formatter: $fn:tipfmt
grid: { left: 320, right: 72, top: 20, bottom: 26 }
xAxis:
type: value
max: 5600
name: GitHub Star
nameLocation: middle
nameGap: 24
axisLabel: { formatter: $fn:fnum }
splitLine: { show: true, lineStyle: { type: dashed, opacity: 0.45 } }
yAxis:
type: category
inverse: true
axisLabel:
align: right
margin: 8
width: 300
overflow: truncate
fontSize: 11
fontFamily: monospace
data:
- 'pgsty/pigsty'
- 'polardb/PolarDB-for-PostgreSQL'
- 'tensorchord/pgvecto.rs'
- 'tensorchord/VectorChord'
- 'Tencent/TBase'
- 'apache/cloudberry'
- 'IvorySQL/IvorySQL'
- 'pgplex/pgschema'
- 'amutu/zhparser'
- 'opengauss-mirror/openGauss-server'
- 'HaloTech-Co-Ltd/openHalo'
- 'jaiminpan/pg_jieba'
- 'alitrack/duckdb_fdw'
- 'tensorchord/VectorChord-bm25'
- 'pgsty/pg_exporter'
- 'ChenHuajun/pg_roaringbitmap'
- 'pgsty/pig'
- 'tensorchord/pg_bestmatch.rs'
- 'wublabdubdub/PDU-PostgreSQLDataUnloader'
- 'tensorchord/pg_tokenizer.rs'
- 'jaiminpan/pg_scws'
- 'pgsty/pgext'
series:
- name: Star
type: bar
barWidth: 20
showBackground: true
backgroundStyle: { color: "rgba(148, 163, 184, 0.16)" }
itemStyle:
color: $fn:barclr
borderRadius: [0, 5, 5, 0]
label:
show: true
position: right
formatter: $fn:labfmt
color: '#334155'
fontWeight: 600
data: [5521, 3191, 2181, 1770, 1439, 1315, 1051, 995, 869, 784, 437, 417, 409, 375, 359, 286, 199, 101, 101, 45, 41, 31]PostgreSQL 发行版影响力指标
按 GitHub Star 数降序排列(商业产品无公开 Star 的统一置后),最后更新时间为北京时间 2026-08-13。
| 项目 | Star | 供应商 | 类型 | 许可证 | 简介 |
|---|---|---|---|---|---|
| CloudNativePG | 9133 | EDB | K8S 云原生 | Apache-2.0 | 不依赖 Patroni 的主流 PG Operator。 |
| Pigsty | 5521 | PGSTY | Linux 原生 | Apache-2.0 | Ansible 驱动的一体化 PG 发行版。 |
| Zalando Postgres Operator | 5222 | Zalando | K8S 云原生 | MIT | 老牌 Patroni/Spilo 架构 PG Operator。 |
| PGO | 4436 | Crunchy Data | K8S 云原生 | Apache-2.0 | 生产级 Operator,集成备份与监控。 |
| Autobase | 4332 | vitabaks | Linux 原生 | MIT | 支持 Patroni/etcd/Consul 自动化部署。 |
| KubeBlocks | 3102 | ApeCloud | K8S 云原生 | AGPL-3.0 | 多数据库统一 Operator 平台。 |
| StackGres | 1426 | OnGres | K8S 云原生 | AGPL-3.0 | CRD/CLI/Web UI 一体化 PG Operator。 |
| Kubegres | 1350 | Reactive Tech | K8S 云原生 | Apache-2.0 | 极简 Operator,基于原生流复制。 |
| Tembo Operator | 1263 | Tembo | K8S 云原生 | 未声明 | 场景化 Stacks 交付的 PG Operator。 |
| pgEdge | 744 | pgEdge | Linux 原生 | PostgreSQL | 分布式 PG 发行版,主打 Spock 多主复制。 |
| KubeDB | 733 | AppsCode | K8S 云原生 | ACL-1.0 | 多数据库 Operator,配套 kubectl 插件。 |
| Percona Operator for PostgreSQL | 381 | Percona | K8S 云原生 | Apache-2.0 | Percona 生态内的 PG Operator。 |
| EDB TPA | 86 | EDB | Linux 原生 | GPL-3.0 | EDB 官方 Ansible 编排交付工具。 |
| Percona Distribution for PostgreSQL | - | Percona | Linux 原生 | 多种 | 整合 PG 与常用组件的发行版方案。 |
| ClusterControl | - | ServerNines | Linux 原生 | 商业 | 多数据库部署、监控、备份与切换平台。 |
| CYBERTEC PGEE | - | CYBERTEC | Linux 原生 | 商业 | 企业增强 PG 发行版,侧重安全与性能。 |
| Crunchy Postgres for Ansible | - | Crunchy Data | Linux 原生 | 商业 | Crunchy 的裸机/VM PG 自动化方案。 |
| EDB Postgres Advanced Server (EPAS) | - | EDB | Linux 原生 | 商业 | EDB 旗舰发行版,含 Oracle 兼容特性。 |
其他资源
- Map of GitHub: Pigsty
- DeepWiki: pgsty/pigsty
- OSS Insight:
pgsty/pigsty - OSS Insight: pgsty
