White Paper: Heimdall Proxy for Greenplum Databases

Heimdall Proxy

Companies that have deployed Greenplum databases may experience challenges from inefficient application interaction. They include:

  • High connection counts
  • Duplicate queries
  • Ensuring business continuity for your database

The Heimdall Database Proxy addresses these issues by improving performance, reliability, and security operations. Deployment of the proxy does not require application changes. Below is a table describing the use cases and benefits.

Use Case

Feature

Customer Benefit

Performance & Scale

  • Automated query caching
  • Connection Pooling
  • Improve application performance 20x
  • Reduce database costs by 50%

Horizontal Scale-out

  • Read/Write split
  • Replication lag detection
  • Improve scale
  • Efficient load balancing
  • Guarantees fresh data retrieval

Active Directory / LDAP Integration

  • Authentication
  • Authorization
  • Automated password reset, without additional Help Desk personnel
  • Audits who accessed what data, and when.

Business Continuity

  • Application-aware DB failover
  • Cluster-aware
  • Manages promotions
  • Maintain 100% application uptime during failures and maintenance upgrades

SQL Performance Visibility

  • Client-side and Server-side visibility
  • Query plan views
  • Developers and DBAs get access to production analytics by on role
  • Identifies performance bottlenecks
Automated Query Results Caching

The Heimdall Database Proxy is a look-aside results caching solution. You choose the storage (e.g., GemFire), and the proxy provides the cache and invalidation logic.

Connection Pooling

Each connection to the database takes valuable resources that can be better utilized for active queries.  Therefore, it is desirable to reduce the total number of connections.

There are two Heimdall proxy techniques that reduce connection overhead:

  • Supporting both per-user and global connection limits. Connection pooling allows multiple client connections to be associated with a single database
  • Backend connections are created for only “active” client connections to Greenplum. This results in 1) Lower total memory overhead, and 2) More active queries processed at one time, and 3) Reduced Greenplum costs.
Authentication, Authorization, and Auditing

Most database deployments support a limited number of users to the database. Users are typically managed manually by the DBA. The Heimdall proxy supports:

  • Single sign-on via Active Directory and LDAP
  • Group extraction and role synchronization for authorization
  • Logging of queries for auditing
Batch Processing

There are legacy applications that generate singleton DML (e.g., INSERTs). The proper method is to perform a bulk load to a table. The Heimdall proxy can transparently batch DML operations under a single transaction. Benefits include the following:

  • Improved application response times due to fewer commits
  • Improved DML scale

Ideal use case:  INSERT a large amount data sequentially one row at a time. The Heimdall Proxy aggregates INSERTs together and processes them simultaneously. See the dataflow diagram below:

Automated Greenplum Master Failover

The Heimdall Proxy transparent failover is a must-have for any Enterprise desiring Greenplum to be always-on. Our proxy detects a master failure and seamlessly fails over to the standby. How are we different? Upon a failure, Heimdall queues up the current front-end connection and transparently fails over to the backend master standby. Our proxy persists the application connection, which helps prevent application errors and exceptions during a failover.

Heimdall Data is a VMware technology partner. Our database proxy provides improved SQL performance and reliability for Greenplum, Postgres and MySQL.

The Heimdall architecture was designed for ease of deployment without the need to modify the application or database. Configuration changes are updated at runtime without restarting the application. The net result is a platform that can be updated with 100% application uptime.

For more information about how Heimdall Data can help improve your SQL environment, contact us at info@heimdalldata.com.