Improve SQL scale and reduce RDS costs up to 50%: No code changes.
How is the Heimdall Proxy Unique?
- Read/Write splitting with for ACID Compliance
- Automated Query Caching and Splitting for queries in transactions.
- Two-tier Connection Pooling: Per-user and Per-database instance; with Active Directory integration
- X Other proxies do not guarantee data consistency, nor support multiple proxies as a cohesive unit.
- Check out our webinar.
Read/Write Split with Strong Consistency
The Heimdall proxy intelligently routes queries to the appropriate database instances without code changes. We load balance across replicas for better utilization, without DNS. We manage the RDS endpoints for you. Users receive the most up-to-date data with our replication lag detection. Check out our AWS blog.
Automated Query Caching: Removes latency to the database. Result sets are cached to the storage of your choice (e.g. Local memory, Amazon ElastiCache). Automated invalidation is also automated. Deployment requires zero code changes.
The Heimdall proxy supports true multi-user pooling. Operators can safely scale without overwhelming database resources. Techniques that reduce connection overhead include:
- Connection Pooling: Multiple client connections are associated to a database connection. Users can limit
- connections to the backend in 2-tiers: per user and per database.
- Connection Multiplexing: An extension of pooling, the proxy dispatches individual queries or transactions from the connection pool. As client connections are often idle, multiplexing creates a backend connection for “active” queries. The net result is lower total memory, and reduced database costs. Check out our AWS blog.
Heimdall Data improves performance over 1000x! We batch singleton INSERT’s under a single transaction.
- Ideal use case: INSERT a large amount of data at once on a thread. Heimdall processes at once much faster than if individual queries outside of a transaction were completed. See below demo video.
- Not so ideal use case: Concurrent writes and reads against the same table, on the same thread will not be beneficial with this solution, as everything will just block until the DML operation is completed anyway.
Active Directory / LDAP Integraion
1) Authentication and Authorization with Active Directory
2) Synchronization of users/groups to roles with the database
This removes the need for multiple places of authentication management. As a database firewall, our proxy identifies unknown and rogue queries to guarantee data integrity.
Automated Persistent Connection Failover
Our proxy detects database health and performs a failover to the standby. But doesn’t Amazon RDS already support failover?
The Heimdall proxy failover takes an application-centric approach: Upon a failure, we queue up the connection and transparently creates a new connection at the backend to the standby instance. This greatly reduces and/or eliminates application errors and reconnections; and exceptions. Failover is transparent to the application; not so, with a TCP/IP based failover solution.
AWS Case Studies