Create your own social networking website

PostgreSQL: AWS RDS vs. Aurora vs. Google Cloud SQL

Basic Features

AWS RDS AWS Aurora Google Cloud SQL
Latest Version 15.x 14.x 14.x
Secure Connection (SSL,encrypted) YES YES YES
Scalable (scale storage and instance types) YES YES YES
High Available and Durable YES YES YES
Managed YES YES YES
Easy to Administer YES YES YES

Pricing

Note: the following table lists Single zone pricing. The pricing of instance and storage will simple double when using RDS with multi-AZ, using Aurora with a replica, and using Google SQL with high availability.
AWS RDS AWS Aurora Google Cloud SQL
2vcpu+15.25G instance $0.25 /hour $0.29 /hour $0.189 /hour
This price is calculated of 2vcpus+15.25G for comparison purpose. But in reality the maximum ram is 13G for 2vcpus.
Storage $0.125 /GB $0.10 /GB $0.17 /GB
Disk I/O Free 3 IOPS /GB storage $0.20 /1 million requests Free 30 IOPS /GB storage

Benchmarks

Conditions

AWS RDS AWS Aurora Google Cloud SQL
Instance type r4.large(2 vCPUs + 15.25G) r4.large(2 vCPUs + 15.25G) High memory(2 vCPUs + 13G)
Region us-west-2a us-west-2a us-west1
Client Side (running pgbench) EC2 instance in us-west-2a EC2 instance in us-west-2a Google Compute in us-west1
Installed PG version 9.6 9.6 9.6
Storage Encryption enabled enabled enabled
Multi-AZ/ Replication/ High-availability Disabled Disabled Disabled

Benchmark details

Import data:
pgbench -i -s 10 test
AWS RDS:
[email protected]:~$ pgbench -c 10 -j 10 -t 500 test -h testrds.*.us-west-2.rds.amazonaws.com -U test
Password: 
starting vacuum...end.
transaction type: 
scaling factor: 10
query mode: simple
number of clients: 10
number of threads: 10
number of transactions per client: 500
number of transactions actually processed: 5000/5000
latency average = 5.745 ms
tps = 1740.77029 (including connections establishing)
tps = 1774.006224 (excluding connections establishing)
AWS Aurora:
[email protected]:~$ pgbench -c 10 -j 10 -t 500 test -h test.*.us-west-2.rds.amazonaws.com -U test
Password: 
starting vacuum...end.
transaction type: 
scaling factor: 10
query mode: simple
number of clients: 10
number of threads: 10
number of transactions per client: 500
number of transactions actually processed: 5000/5000
latency average = 13.045 ms
tps = 766.564305 (including connections establishing)
tps = 774.188096 (excluding connections establishing)
Google Cloud SQL:
[email protected]:~$ pgbench -c 10 -j 10 -t 500 test -h 35.203.*.* -U postgres
Password: 
starting vacuum...end.
transaction type: 
scaling factor: 10
query mode: simple
number of clients: 10
number of threads: 10
number of transactions per client: 500
number of transactions actually processed: 5000/5000
latency average = 7.084 ms
tps = 1411.595534 (including connections establishing)
tps = 1422.435397 (excluding connections establishing)
Related posts
Firewall: Google Cloud Armor vs. AWS WAF vs. Cloudflare WAF
Object Storage: AWS s3 vs. Google Cloud Storage vs. Azure Blob Storage vs. DigitalOcean Spaces
Cheap VPS comparison
CDN comparison: CloudFront vs AWS CloudFront
CloudFlare CloudFront
Monthly fee $0 for Free plan<br>$20 for Pro plan<br>$200 for Business plan
Bandwidth Free
HTTP requests Free
Read more..
Cloud Computing: AWS EC2 vs. GCP Compute vs. Azure VM

AWS&Azure memory pricing were calculated from the pricing difference between General and Memory optimized instances. CPU Pricing is based on General/Memory optimized instance, not Compute optimized.

Read more..