At Tessell, we want to be the most performant database service available out there, and hence we thought to give Aurora RDS for PostgreSQL a shot to see what it has to offer. The true way of evaluating the performance of the database is by running performance benchmarks for the databases running on the cloud.
Aurora PostgreSQL is Amazon’s enterprise-class PostgreSQL-compatible database and offers Up to three times the throughput of standard PostgreSQL.
In this article, we run performance benchmarks to evaluate, analyze, and compare the performance of PostgreSQL database engines running on AWS for Tessell and compare that against Aurora RDS for PostgreSQL. We have used the PGIO benchmarking tool for the benchmarking process.
Tessell for PostgreSQL is offered in the following variations:
High-Performance Compute (HPC): Run your databases on high-performance cloud infrastructure with locally attached NVMe storage. Achieve up to 2 million IOPS. Take cloud-native snapshots the same way you do for standard cloud storage. Stop/start the service at any time without any loss of data. Enjoy utility consumption.
Standard Compute: Elastic cloud storage for your standard workloads. Take cloud-native snapshots. Stop/start the service on demand for utility consumption.
For the purpose of this benchmarking exercise, we will use the Tessell HPC shapes.
Before starting the benchmarking process, you need to get your environment ready. You can refer to this article to set up your environment.
Set up Aurora PostgreSQL
To set up Aurora PostgreSQL, choose the required version of PostgreSQL.
For the purpose of this benchmark, we are choosing PostgreSQL 14.6 with a configuration of db.r5.2xlarge [8 vCPU, 64 GB Memory]. As we are going to run some heavy benchmark here, make sure to provision storage of the order of more than 500 GB.
Set up Slob client Instance for Benchmark
For running the slob benchmark, let's provision an EC2 instance in the same VPC as the provisioned Aurora PostgreSQL.
For a step-by-step guide for setting up a client, please refer to our earlier PostgreSQL benchmark blog.
Verify connectivity to Aurora PostgreSQL instance from the client EC2 instance using psql.
Now that we have both the client EC2 and Aurora PostgreSQL provisioned and ready, let's run the SLOB benchmark.
Run the benchmark
Before you run the benchmark, configure the PGIO configuration file, and start the Setup (load schemas), and
- Open the /home/ec2-user/pgio/pgio.conf file and replace the default parameter values with the following values:
For more information about the PGIO configuration parameter, see the README.
- Start setting up PGIO and load schemas by running the following command:
This loads approximately 320 GB of slob database.
- Run the performance test with the following command:
After 2 hours of running the benchmark, here are the results:
We also ran the benchmark on a smaller shape of Aurora PostgreSQL, db.r5.xlarge [4 vCPUs, 32 GB Memory]. Following are the results.
Now, let's use the same steps to run the benchmark against the Tessell HPC database service. Provision a Tessell database of the same size [8 vCPUs, 64 GB Memory] as Aurora PostgreSQL.
Select tesl_8h_a Tessell shape for provisioning database and choose the amount of storage required.
After provisioning the Tessell database, run the benchmark with the same slob parameters.
We also ran the benchmark on a smaller shape of Tessell HPC, tesl_4h_c [4 vCPUs, 32 GB Memory]. Following are the results.
Here is the comparison between Aurora PostgreSQL and Tessell HPC benchmark numbers, and we clearly see Tessell HPC performs much better than Aurora PostgreSQL.
As you can see from the results, Tessell HPC PostgreSQL produced 70% higher IOPS as compared to Aurora PostgreSQL for the identical SLOB workload at a much lower cost.
For lower shapes, the IOPS produced by Tessell HPC outperformed Aurora PostgreSQL by more than 100%.
With Tessell HPC there is no IOPS metering so you always get price predictability alongside massive performance uplift.
Your demanding workloads can significantly benefit from Tessell HPC database service.
To get started, you can sign up for a free trial here.