Select Page
FacebooktwitterlinkedinyoutubeFacebooktwitterlinkedinyoutube

Antony Prasad Thevaraj, AWS Solutions Architect

One of the primary causes of slow application performance is the inefficient interaction with the database. This can be caused by duplicate queries or an overwhelming number of queries accessing the database resulting in: 

  • Increased database costs
  • Slow user experience
  • Lower user productivity

To solve SQL performance bottlenecks, development teams make large investments in time and cost to modify the application for performance tuning. Database proxies are deployed to better handle SQL connections. Proxies are also referred as a SQL “load balancer”, “connection pooler”, or “listener”. For the purposes of this blog, we will use the term “proxy”.

The Heimdall Proxy is a fully-featured, database proxy that provides visibility and control for AWS services including Amazon RDS, Redshift, ElastiCache, and Cloudwatch. How are we unique?

  • Automated Query Caching
  • Read/Write Splitting with ACID Compliance
  • Database vendor-neutral

 

Automated Query Caching

 

 

Figure 1 – Heimdall Data Architecture Diagram

 

The SQL query caching solution is our most notable feature as it provides three benefits: 1) Improved response times, 2) Improved RDS scale, and 3) lower RDS costs. These benefits are the result of the Heimdall Proxy offloading SQL traffic from Amazon RDS to ElastiCache.

Our proxy provides the caching/eviction logic for Amazon ElastiCache as a SQL results cache. Whenever the proxy sees the exact same query, it will serve it out from cache. When there is an update to the database table, the proxy will automatically invalidate the cache. This caching solution is transparent to the application and to the database. So, installing and installing the proxy is simple.

 

Read/Write Splitting with ACID Compliance

 

Horizontally scaling out Amazon RDS with read replicas is simple with AWS configuration. Programming the application to split the queries is the burdensome task. Most applications also require whatever data is retrieved, it is the most up-to-date information. With the RDS write and read replicas configured, the Heimdall Proxy route the queries to the appropriate RDS instance while ensuring fresh data retrieval.

 

Database support

Our proxy supports all the flavors of Amazon RDS: Postgres, MySQL, MariaDB, SQL Server, Oracle, and Aurora. With Heimdall, customers can standardize on a single proxy platform for the company. With our consolidated dashboard, operators can apply the same features and have visibility of query performance for all databases. 

 

Summary

Heimdall’s database proxy offers a flexible and cost-effective alternative to rewriting your application for backend performance and scale. We provide various techniques, based on the application traffic pattern, to improve the response time of applications connecting to Amazon RDS and Redshift.

To get started with Heimdall Data, download a free trial from AWS Marketplace.

 

Resources

 

About the author

 

FacebooktwitterlinkedinyoutubeFacebooktwitterlinkedinyoutube