This is the multi-page printable view of this section. .
Comparison
Comparison with RDS
Pigsty is a local-first RDS alternative under Apache-2.0. You can deploy it on your physical machines, virtual machines, or cloud servers.
This comparison uses two benchmarks: Amazon AWS RDS for PostgreSQL and Alibaba Cloud RDS for PostgreSQL. AWS is the global market leader. Alibaba Cloud is the market leader in China.
Aliyun RDS and AWS RDS are closed-source cloud database services. You can only rent them on public clouds. The cloud-vendor information below is a February 2024 archive based on PostgreSQL 16. The Pigsty column in Feature Comparison follows the current release. The Key Extensions version table remains a historical snapshot.
Feature Comparison
| Feature | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|
| Major Version Support | 14 - 18 | 13 - 18 | 13 - 18 |
| Read Replicas | Supports unlimited read replicas | Standby instances not exposed to users | Standby instances not exposed to users |
| Read/Write Splitting | Port-based traffic separation | Separate paid component | Separate paid component |
| Fast/Slow Separation | Supports offline ETL instances | Not available | Not available |
| Cross-Region DR | Supports standby clusters | Multi-AZ deployment supported | Multi-AZ deployment supported |
| Delayed Replicas | Supports delayed instances | Not available | Not available |
| Load Balancing | HAProxy / LVS | Separate paid component | Separate paid component |
| Connection Pool | Pgbouncer | Separate paid component: RDS | Separate paid component: RDS Proxy |
| High Availability | Patroni / etcd | Requires HA edition | Requires HA edition |
| Point-in-Time Recovery | pgBackRest / Silo | Backup supported | Backup supported |
| Metrics Monitoring | VictoriaMetrics / Exporter | Free basic / Paid advanced | Free basic / Paid advanced |
| Log Collection | VictoriaLogs / Vector | Basic support | Basic support |
| Visualization | Grafana / Echarts | Basic monitoring | Basic monitoring |
| Alert Aggregation | AlertManager | Basic support | Basic support |
Key Extensions
This PostgreSQL 16 extension-support snapshot uses information available on 2024-02-28. It includes pg_analytics, which was later archived and removed from the catalog. These versions and projects do not describe current Pigsty v4.5.0 or cloud-provider support. For current Pigsty support, use the extension catalog. Check each provider’s documentation for its current service capabilities.
| Extension | Pigsty RDS / PGDG Official Repo | Aliyun RDS | AWS RDS |
|---|---|---|---|
| Install Extensions | Free to install | Not allowed | Not allowed |
| Geospatial | PostGIS 3.4.2 | PostGIS 3.3.4 / Ganos 6.1 | PostGIS 3.4.1 |
| Point Cloud | PG PointCloud 1.2.5 | Ganos PointCloud 6.1 | |
| Vector Embedding | PGVector 0.6.1 / Svector 0.5.6 | pase 0.0.1 | PGVector 0.6 |
| Machine Learning | PostgresML 2.8.1 | ||
| Time Series | TimescaleDB 2.14.2 | ||
| Horizontal Scaling | Citus 12.1 | ||
| Columnar Storage | Hydra 1.1.1 | ||
| Full Text Search | pg_bm25 0.5.6 | ||
| Graph Database | Apache AGE 1.5.0 | ||
| GraphQL | PG GraphQL 1.5.0 | ||
| OLAP | pg_analytics 0.5.6 | ||
| Message Queue | pgq 3.5.0 | ||
| DuckDB | duckdb_fdw 1.1 | ||
| Fuzzy Tokenization | zhparser 1.1 / pg_bigm 1.2 | zhparser 1.0 / pg_jieba | pg_bigm 1.2 |
| CDC Extraction | wal2json 2.5.3 | wal2json 2.5 | |
| Bloat Management | pg_repack 1.5.0 | pg_repack 1.4.8 | pg_repack 1.5.0 |
AWS RDS for PostgreSQL 16 available extensions (excluding PG built-in extensions)
| 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 |
Aliyun RDS for PostgreSQL 16 available extensions (excluding PG built-in extensions)
| name | pg16 | pg15 | pg14 | pg13 | pg12 | pg11 | pg10 | description |
|---|---|---|---|---|---|---|---|---|
| bloom | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Provides a bloom filter-based index access method. |
| btree_gin | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.2 | Provides GIN operator class examples that implement B-tree equivalent behavior for multiple data types and all enum types. |
| btree_gist | 1.7 | 1.7 | 1.6 | 1.5 | 1.5 | 1.5 | 1.5 | Provides GiST operator class examples that implement B-tree equivalent behavior for multiple data types and all enum types. |
| citext | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 | 1.5 | 1.4 | Provides a case-insensitive string type. |
| cube | 1.5 | 1.5 | 1.5 | 1.4 | 1.4 | 1.4 | 1.2 | Provides a data type for representing multi-dimensional cubes. |
| dblink | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | Cross-database table operations. |
| dict_int | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Additional full-text search dictionary template example. |
| earthdistance | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | Provides two different methods to calculate great circle distances on the Earth’s surface. |
| fuzzystrmatch | 1.2 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | Determines similarities and distances between strings. |
| hstore | 1.8 | 1.8 | 1.8 | 1.7 | 1.6 | 1.5 | 1.4 | Stores key-value pairs in a single PostgreSQL value. |
| intagg | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | Provides an integer aggregator and an enumerator. |
| intarray | 1.5 | 1.5 | 1.5 | 1.3 | 1.2 | 1.2 | 1.2 | Provides some useful functions and operators for manipulating null-free integer arrays. |
| isn | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | Validates input according to a hard-coded prefix list, also used for concatenating numbers during output. |
| ltree | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | 1.1 | 1.1 | For representing labels of data stored in a hierarchical tree structure. |
| pg_buffercache | 1.4 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | Provides a way to examine the shared buffer cache in real time. |
| pg_freespacemap | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | Examines the free space map (FSM). |
| pg_prewarm | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.1 | Provides a convenient way to load data into the OS buffer or PostgreSQL buffer. |
| pg_stat_statements | 1.1 | 1.1 | 1.9 | 1.8 | 1.7 | 1.6 | 1.6 | Provides a means of tracking execution statistics of all SQL statements executed by a server. |
| pg_trgm | 1.6 | 1.6 | 1.6 | 1.5 | 1.4 | 1.4 | 1.3 | Provides functions and operators for alphanumeric text similarity, and index operator classes that support fast searching of similar strings. |
| pgcrypto | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | Provides cryptographic functions for PostgreSQL. |
| pgrowlocks | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | Provides a function to show row locking information for a specified table. |
| pgstattuple | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | Provides multiple functions to obtain tuple-level statistics. |
| plperl | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Provides Perl procedural language. |
| plpgsql | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Provides SQL procedural language. |
| pltcl | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Provides Tcl procedural language. |
| postgres_fdw | 1.1 | 1.1 | 1.1 | 1 | 1 | 1 | 1 | Cross-database table operations. |
| sslinfo | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | Provides information about the SSL certificate provided by the current client. |
| tablefunc | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Contains multiple table-returning functions. |
| tsm_system_rows | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Provides the table sampling method SYSTEM_ROWS. |
| tsm_system_time | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Provides the table sampling method SYSTEM_TIME. |
| unaccent | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | A text search dictionary that can remove accents (diacritics) from lexemes. |
| uuid-ossp | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | Provides functions to generate universally unique identifiers (UUIDs) using several standard algorithms. |
| xml2 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | Provides XPath queries and XSLT functionality. |
Performance Comparison
| Metric | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|
| Peak Performance | PGTPC on NVME SSD Benchmark sysbench oltp_rw | RDS PG Performance Whitepaper sysbench oltp scenario QPS 4000 ~ 8000 per core | |
| Storage Spec: Max Capacity | 32TB / NVME SSD | 32 TB / ESSD PL3 | 64 TB / io2 EBS Block Express |
| Storage Spec: Max IOPS | 4K Random Read: Max 3M, Random Write 2000~350K | 4K Random Read: Max 1M | 16K Random IOPS: 256K |
| Storage Spec: Max Latency | 4K Random Read: 75µs, Random Write: 15µs | 4K Random Read: 200µs | 500µs / Inferred as 16K random IO |
| Storage Spec: Max Reliability | UBER < 1e-18, equivalent to 18 nines MTBF: 2M hours 5DWPD, 3 years continuous | Reliability 9 nines, equivalent to UBER 1e-9 Storage and Data Reliability | Durability: 99.999%, 5 nines (0.001% annual failure rate) io2 specification |
| Storage Spec: Max Cost | ¥31.5/TB·month (5-year warranty amortized / 3.2T / Enterprise-grade / MLC) | ¥3200/TB·month (original ¥6400, monthly ¥4000) 50% off with 3-year prepaid | ¥1900/TB·month using max spec 65536GB / 256K IOPS best discount |
Observability
Pigsty provides nearly 3000 monitoring metrics and 50+ dashboards. These cover databases, hosts, connection pools, load balancers, and other components.

Pigsty provides 638 PostgreSQL monitoring metrics. AWS RDS has 99. Aliyun RDS has a single-digit number of metrics:

The following projects provide more basic PostgreSQL monitoring capabilities:
- pgwatch: 123 metric types
- pgmonitor: 156 metric types
- datadog: 69 metric types
- pgDash
- ClusterControl
- pganalyze
- Aliyun RDS: 8 metric types
- AWS RDS: 99 metric types
- Azure RDS
Maintainability
| Metric | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|
| System Usability | Simple | Simple | Simple |
| Configuration Management | Config files / CMDB based on Ansible Inventory | Can use Terraform | Can use Terraform |
| Change Method | Idempotent Playbooks based on Ansible Playbook | Console click operations | Console click operations |
| Parameter Tuning | Auto-adapts to node specs, Four preset templates: OLTP, OLAP, TINY, CRIT | ||
| Infra as Code | Natively supported | Can use Terraform | Can use Terraform |
| Customizable Parameters | Pigsty Parameters 283 parameters | ||
| Service & Support | Commercial subscription support available | After-sales ticket support | After-sales ticket support |
| Air-gapped Deployment | Offline installation supported | N/A | N/A |
| Database Migration | Playbooks for zero-downtime migration from existing v10+ PG instances to Pigsty managed instances via logical replication | Cloud migration assistance Aliyun RDS Data Sync |
Cost
Based on experience, RDS software and hardware resources cost 5-15 times as much per unit as self-hosted resources. The rent-to-own ratio is typically around one month. For details, see Cost Analysis.
| Factor | Metric | Pigsty | Aliyun RDS | AWS RDS |
|---|---|---|---|---|
| Cost | Software License/Service Fee | Free, hardware ~¥20-40/core·month | ¥200-400/core·month | ¥400-1300/core·month |
| Support Service Fee | Service ~¥100/core·month | Included in RDS cost |
Other On-Premises Database Management Software
The following software and vendors provide PostgreSQL management capabilities:
- Aiven: Closed-source commercial cloud-hosted solution
- Percona: Commercial consulting, simple PG distribution
- ClusterControl: Commercial database management software
Other Kubernetes Operators
Pigsty does not use Kubernetes to manage production databases. Its architecture differs from these Kubernetes operators:
- PGO
- StackGres
- CloudNativePG
- TemboOperator
- PostgresOperator
- PerconaOperator
- Kubegres
- KubeDB
- KubeBlocks
For more information, see:
1 - Cost Reference
Overview
The following data shows approximate differences in cost. Cloud prices and discounts vary with time, region, instance size, and purchase model.
| EC2 | Core·Month | RDS | Core·Month |
|---|---|---|---|
| DHH Self-Hosted Core-Month Price (192C 384G) | 25.32 | Junior Open Source DB DBA Reference Salary | ¥15K/person·month |
| IDC Self-Hosted (Dedicated Physical: 64C384G) | 19.53 | Mid-Level Open Source DB DBA Reference Salary | ¥30K/person·month |
| IDC Self-Hosted (Container, 500% Oversold) | 7 | Senior Open Source DB DBA Reference Salary | ¥60K/person·month |
| UCloud Elastic VM (8C16G, Oversold) | 25 | ORACLE Database License | 10000 |
| Aliyun ECS 2x Memory (Dedicated, No Oversold) | 107 | Aliyun RDS PG 2x Memory (Dedicated) | 260 |
| Aliyun ECS 4x Memory (Dedicated, No Oversold) | 138 | Aliyun RDS PG 4x Memory (Dedicated) | 320 |
| Aliyun ECS 8x Memory (Dedicated, No Oversold) | 180 | Aliyun RDS PG 8x Memory (Dedicated) | 410 |
| AWS C5D.METAL 96C 200G (Monthly No Prepaid) | 100 | AWS RDS PostgreSQL db.T2 (2x) | 440 |
| AWS C5D.METAL 96C 200G (3-Year Prepaid) | 80 | AWS RDS PostgreSQL db.M5 (4x) | 611 |
| AWS C7A.METAL 192C 384G (3-Year Prepaid) | 104.8 | AWS RDS PostgreSQL db.R6G (8x) | 786 |
RDS Cost Reference
| Payment Model | Price | Annualized (¥10K) |
|---|---|---|
| IDC Self-Hosted (Single Physical Machine) | ¥75K / 5 years | 1.5 |
| IDC Self-Hosted (2-3 Machines for HA) | ¥150K / 5 years | 3.0 ~ 4.5 |
| Aliyun RDS On-Demand | ¥87.36/hour | 76.5 |
| Aliyun RDS Monthly (Baseline) | ¥42K / month | 50 |
| Aliyun RDS Annual (85% off) | ¥425,095 / year | 42.5 |
| Aliyun RDS 3-Year Prepaid (50% off) | ¥750,168 / 3 years | 25 |
| AWS On-Demand | $25,817 / month | 217 |
| AWS 1-Year No Prepaid | $22,827 / month | 191.7 |
| AWS 3-Year Full Prepaid | $120K + $17.5K/month | 175 |
| AWS China/Ningxia On-Demand | ¥197,489 / month | 237 |
| AWS China/Ningxia 1-Year No Prepaid | ¥143,176 / month | 171 |
| AWS China/Ningxia 3-Year Full Prepaid | ¥647K + ¥116K/month | 160.6 |
The following table compares self-hosted and cloud database costs:
| Method | Annualized (¥10K) |
|---|---|
| IDC Hosted Server 64C / 384G / 3.2TB NVME SSD 660K IOPS (2-3 Machines) | 3.0 ~ 4.5 |
| Aliyun RDS PG HA Edition pg.x4m.8xlarge.2c, 64C / 256GB / 3.2TB ESSD PL3 | 25 ~ 50 |
| AWS RDS PG HA Edition db.m5.16xlarge, 64C / 256GB / 3.2TB io1 x 80k IOPS | 160 ~ 217 |
ECS Cost Reference
Pure Compute Price Comparison (Excluding NVMe SSD / ESSD PL3)
For Aliyun, the monthly price for compute alone is 5-7x the self-hosted baseline. The 5-year prepaid price is 2x the self-hosted baseline.
| Payment Model | Unit Price (¥/Core·Month) | Relative to Standard | Self-Hosted Premium Multiple |
|---|---|---|---|
| On-Demand (1.5x) | ¥ 202 | 160 % | 9.2 ~ 11.2 |
| Monthly (Standard) | ¥ 126 | 100 % | 5.7 ~ 7.0 |
| 1-Year Prepaid (65% off) | ¥ 83.7 | 66 % | 3.8 ~ 4.7 |
| 2-Year Prepaid (55% off) | ¥ 70.6 | 56 % | 3.2 ~ 3.9 |
| 3-Year Prepaid (44% off) | ¥ 55.1 | 44 % | 2.5 ~ 3.1 |
| 4-Year Prepaid (35% off) | ¥ 45 | 35 % | 2.0 ~ 2.5 |
| 5-Year Prepaid (30% off) | ¥ 38.5 | 30 % | 1.8 ~ 2.1 |
| DHH @ 2023 | ¥ 22.0 | ||
| Tantan IDC Self-Hosted | ¥ 18.0 |
Equivalent Price Comparison Including NVMe SSD / ESSD PL3
With common NVMe SSD specifications included, the monthly price is 11-14x the self-hosted baseline. The 5-year prepaid price is about 9x.
| Payment Model | Unit Price (¥/Core·Month) | + 40GB ESSD PL3 | Self-Hosted Premium Multiple |
|---|---|---|---|
| On-Demand (1.5x) | ¥ 202 | ¥ 362 | 14.3 ~ 18.6 |
| Monthly (Standard) | ¥ 126 | ¥ 286 | 11.3 ~ 14.7 |
| 1-Year Prepaid (65% off) | ¥ 83.7 | ¥ 244 | 9.6 ~ 12.5 |
| 2-Year Prepaid (55% off) | ¥ 70.6 | ¥ 230 | 9.1 ~ 11.8 |
| 3-Year Prepaid (44% off) | ¥ 55.1 | ¥ 215 | 8.5 ~ 11.0 |
| 4-Year Prepaid (35% off) | ¥ 45 | ¥ 205 | 8.1 ~ 10.5 |
| 5-Year Prepaid (30% off) | ¥ 38.5 | ¥ 199 | 7.9 ~ 10.2 |
| DHH @ 2023 | ¥ 25.3 | ||
| Tantan IDC Self-Hosted | ¥ 19.5 |
DHH Case: 192 cores with 12.8TB Gen4 SSD (1c:66); Tantan Case: 64 cores with 3.2T Gen3 MLC SSD (1c:50).
Cloud prices calculated at 40GB ESSD PL3 per core (1 core:4x RAM:40x disk).
EBS Cost Reference
| Evaluation Factor | Local PCI-E NVME SSD | Aliyun ESSD PL3 | AWS io2 Block Express |
|---|---|---|---|
| Capacity | 32TB | 32 TB | 64 TB |
| IOPS | 4K Random Read: 600K ~ 1.1M, 4K Random Write: 200K ~ 350K | 4K Random Read: Max 1M | 16K Random IOPS: 256K |
| Latency | 4K Random Read: 75µs, 4K Random Write: 15µs | 4K Random Read: 200µs | Random IO: ~500µs (contextually inferred as 16K) |
| Reliability | UBER < 1e-18, equivalent to 18 nines, MTBF: 2M hours, 5DWPD for 3 years | Data Reliability 9 nines Storage and Data Reliability | Durability: 99.999%, 5 nines (0.001% annual failure rate) io2 Specification |
| Cost | ¥16/TB·month (5-year amortized / 3.2T MLC), 5-year warranty, ¥3000 retail | ¥3200/TB·month (original ¥6400, monthly ¥4000), 50% off with 3-year full prepaid | ¥1900/TB·month using max spec 65536GB 256K IOPS best discount |
| SLA | 5-year warranty, replacement on failure | Aliyun RDS SLA Availability 99.99%: 15% monthly fee, 99%: 30% monthly fee, 95%: 100% monthly fee | Amazon RDS SLA Availability 99.95%: 15% monthly fee, 99%: 25% monthly fee, 95%: 100% monthly fee |
S3 Cost Reference
| Date | $/GB·Month | ¥/TB·5Years | 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 |
| Other References | High-Perf Storage | Top-Tier Discounted | vs Purchased NVMe SSD | Price Ref |
| S3 Express | 0.160 | 67200 | DHH 12T | 1400 |
| EBS io2 | 0.125 + IOPS | 114000 | Shannon 3.2T | 900 |
Cloud Exit Collection
Developers once widely accepted “moving to the cloud” and often overlooked alternatives. This collection uses data analysis and firsthand experience to explain the benefits and risks of public cloud rental. Use it as a reference for cost control and efficiency: Cloud Computing Mudslide: Collection.
Cloud Infrastructure Basics
Exposing Object Storage: From Cost Reduction to Price Gouging
Garbage Tencent Cloud CDN: From Getting Started to Giving Up
Cloud Business Model
Cloud Exit Odyssey
Cloud Failure Post-Mortems
RDS Failures
Cloud Vendor Profiles
2 - Open-Source Impact
China PostgreSQL Ecosystem Projects
Sorted by GitHub stars in descending order. Last updated: 2026-09-20 (Beijing time).
| Project | Star | Author | Type | Summary |
|---|---|---|---|---|
pgsty/pigsty | 5660 | Ruohang Feng @ PGSTY | Distribution | Out-of-the-box PostgreSQL distribution |
polardb/PolarDB-for-PostgreSQL | 3203 | Alibaba Cloud | Kernel | Open-source PolarDB for PostgreSQL kernel |
tensorchord/pgvecto.rs | 2187 | TensorChord | Extension | Vector search extension written in Rust |
supervc-stack/VectorChord | 1797 | TensorChord | Extension | Next-generation vector search extension |
Tencent/TBase | 1443 | Tencent Cloud | Kernel | Tencent distributed HTAP database kernel |
apache/cloudberry | 1407 | HashData | Kernel | Open-source MPP data warehouse kernel |
IvorySQL/IvorySQL | 1061 | HighGo | Kernel | Oracle-compatible PostgreSQL fork |
pgplex/pgschema | 1046 | Chen Tianzhou | Tool | Declarative Postgres schema migration CLI |
amutu/zhparser | 870 | Jov | Extension | Chinese full-text parser based on SCWS |
opengauss-mirror/openGauss-server | 789 | Huawei | Kernel | Early PostgreSQL 9.2 kernel fork |
HaloTech-Co-Ltd/openHalo | 422 | HaloTech | Kernel | PostgreSQL kernel compatible with MySQL wire protocol |
jaiminpan/pg_jieba | 421 | Pan Jiamin | Extension | Chinese full-text search extension based on Jieba |
alitrack/duckdb_fdw | 411 | Li Hongyan | Extension | DuckDB foreign data wrapper |
supervc-stack/VectorChord-bm25 | 378 | TensorChord | Extension | Native BM25 ranking index for PostgreSQL |
pgsty/pg_exporter | 363 | Ruohang Feng @ PGSTY | Tool | Metrics exporter for PostgreSQL and Pgbouncer |
ChenHuajun/pg_roaringbitmap | 288 | Chen Huajun @ Suning | Extension | PostgreSQL RoaringBitmap bitmap extension |
pgsty/pig | 206 | Ruohang Feng @ PGSTY | Tool | PostgreSQL extension package manager |
wublabdubdub/PDU-PostgreSQLDataUnloader | 115 | Zhang Chen | Tool | PostgreSQL database rescue and unloading tool |
tensorchord/pg_bestmatch.rs | 100 | TensorChord | Extension | BM25 sparse-vector generation in PostgreSQL |
supervc-stack/pg_tokenizer.rs | 45 | TensorChord | Extension | Full-text search tokenizer extension |
jaiminpan/pg_scws | 41 | Pan Jiamin | Extension | Chinese tokenizer extension based on SCWS |
pgsty/pgext | 34 | Ruohang Feng @ PGSTY | Tool | PostgreSQL extension catalog and metadata tool |
tooltip:
trigger: axis
axisPointer: { type: shadow }
formatter: $fn:tipfmt
grid: { left: 320, right: 72, top: 20, bottom: 26 }
xAxis:
type: value
max: 6000
name: GitHub Stars
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'
- 'supervc-stack/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'
- 'supervc-stack/VectorChord-bm25'
- 'pgsty/pg_exporter'
- 'ChenHuajun/pg_roaringbitmap'
- 'pgsty/pig'
- 'wublabdubdub/PDU-PostgreSQLDataUnloader'
- 'tensorchord/pg_bestmatch.rs'
- 'supervc-stack/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: [5660, 3203, 2187, 1797, 1443, 1407, 1061, 1046, 870, 789, 422, 421, 411, 378, 363, 288, 206, 115, 100, 45, 41, 34]
media:
- query: { maxWidth: 600 }
option:
grid: { left: 160, right: 48 }
xAxis:
splitNumber: 2
axisLabel: { fontSize: 10, hideOverlap: true }
yAxis:
axisLabel: { width: 144, fontSize: 9 }
series:
- label: { fontSize: 10 }
- option:
grid: { left: 320, right: 72 }
xAxis:
splitNumber: 5
axisLabel: { fontSize: 12 }
yAxis:
axisLabel: { width: 300, fontSize: 11 }
series:
- label: { fontSize: 12 }PostgreSQL Distribution Impact Metrics
Projects appear in descending order of GitHub stars. Commercial products that do not publish stars appear last. Last updated: 2026-09-20 (Beijing time).
| Project | Star | Vendor | Type | License | Summary |
|---|---|---|---|---|---|
| CloudNativePG | 9329 | EDB | K8S Native | Apache-2.0 | Mainstream PG Operator without Patroni dependency |
| Pigsty | 5660 | PGSTY | Linux Native | Apache-2.0 | Ansible-driven integrated PostgreSQL distribution |
| Zalando Postgres Operator | 5245 | Zalando | K8S Native | MIT | Long-standing Patroni/Spilo architecture operator |
| PGO | 4453 | Crunchy Data | K8S Native | Apache-2.0 | Production-grade operator with backup and monitoring |
| Autobase | 4390 | vitabaks | Linux Native | MIT | Automated deployment for Patroni/etcd/Consul |
| KubeBlocks | 3136 | ApeCloud | K8S Native | AGPL-3.0 | Unified multi-database operator platform |
| StackGres | 1427 | OnGres | K8S Native | AGPL-3.0 | Integrated PG operator with CRD/CLI/Web UI |
| Kubegres | 1351 | Reactive Tech | K8S Native | Apache-2.0 | Minimal operator built on native streaming replication |
| Tembo Operator | 1266 | Tembo | K8S Native | Unspecified | Scenario-based stacks for PostgreSQL |
| pgEdge | 751 | pgEdge | Linux Native | PostgreSQL | Distributed PG distribution focused on Spock multi-master replication |
| KubeDB | 733 | AppsCode | K8S Native | ACL-1.0 | Multi-database operator with kubectl plugin |
| Percona Operator for PostgreSQL | 385 | Percona | K8S Native | Apache-2.0 | PostgreSQL operator in Percona ecosystem |
| EDB TPA | 88 | EDB | Linux Native | GPL-3.0 | EDB official Ansible delivery toolkit |
| Percona Distribution for PostgreSQL | - | Percona | Linux Native | Multi | Integrated PostgreSQL distribution bundle |
| ClusterControl | - | ServerNines | Linux Native | Commercial | Multi-database deploy, monitoring, backup, and failover platform |
| CYBERTEC PGEE | - | CYBERTEC | Linux Native | Commercial | Enterprise PostgreSQL distribution focused on security and performance |
| Crunchy Postgres for Ansible | - | Crunchy Data | Linux Native | Commercial | Crunchy bare-metal/VM automation solution |
| EDB Postgres Advanced Server (EPAS) | - | EDB | Linux Native | Commercial | EDB flagship distribution with Oracle-compatibility features |
Star History and Growth
The Star History chart below was exported on 2026-09-20. It covers eight PostgreSQL distribution and high-availability projects. The chart uses the former repository name vitabaks/autobase. This repository has moved to autobase-tech/autobase.

The table compares star growth from the 2026-07-01 baseline through 2026-09-20 (Beijing time). Both snapshots use exact GitHub repository stargazers_count totals.
| Project | 2026-07-01 | 2026-09-20 | Growth | Growth (%) |
|---|---|---|---|---|
cloudnative-pg/cloudnative-pg | 8899 | 9329 | +430 | +4.83% |
pgsty/pigsty | 5195 | 5660 | +465 | +8.95% |
zalando/postgres-operator | 5192 | 5245 | +53 | +1.02% |
sorintlab/stolon | 4821 | 4829 | +8 | +0.17% |
CrunchyData/postgres-operator | 4428 | 4453 | +25 | +0.56% |
autobase-tech/autobase | 4282 | 4390 | +108 | +2.52% |
apecloud/kubeblocks | 3069 | 3136 | +67 | +2.18% |
ongres/stackgres | 1411 | 1427 | +16 | +1.13% |
Other Resources
- Map of GitHub: Pigsty
- DeepWiki: pgsty/pigsty
- OSS Insight:
pgsty/pigsty - OSS Insight: pgsty
- GitHub API: List stargazers
- Star History: GitHub Stargazer API restrictions