Load Balancing SQL with NetScaler
Native support and intelligence of SQL transactions is the key to extending the scalability, availability, and security benefits that the ADC brings to the web tier to the data tier, as noted in Sunil Potti’s blog. Similar to the benefits of HTTP load balancing, a data tier load balancer should provide these key benefits:
- A native SQL proxy like solution to perform SQL connection management and offload for database scale up scenarios to increase SQL connection limit.
- A TDS protocol and SQL transaction intelligent load balancer that can accurately monitor backend server status including slave replication backlog to
optimally distribute load in database scale out setups.
- High Availability that can address both Master/Master and Master/Slave replication deployments to complete the database scaling solution. Both scaling approaches also need advanced, clustering-like automated IP failover for lower cost high availability with commodity hardware.
- Database security encompassing transaction activity logging tied to user logins for compliance purposes to be generated from a central location to
simplify record management.
Leveraging its expertise in web applications, NetScaler with DataStream technology is the first ADC that justifiably addresses data tier challenges.
With DataStream technology, NetScaler introduces the industry’s first “true” load balancer for data that offers native SQL protocol, data format and
transaction support for scaling database infrastructures. Structured Query Language (SQL) which is the de-facto data format, TDS (Tabular Data Stream) and Oracle MySQL, protocols that are widely deployed, are natively parsed and interpreted in NetScaler’s high speed processing engine, providing all of the
advance policy framework available to act on data connections and transactions. Applying all of the same HTTP acceleration technologies to SQL, NetScaler is able to provide the same benefits to the data tier, such as SQL Connection Multiplexing, SQL Load Balancing, SQL Content Switching, SQL Health Monitoring, Automated Failover and Security.
SQL connection multiplexing: NetScaler’s SQL transaction intelligence enables NetScaler to act as a SQL proxy and terminate SQL connections from both
client and server. Client to server connection multiplexing ratios of 50:1 or more is achievable depending on the application, number of unique database user
logins and character sets in use. SQL Load balancing: Armed with SQL transaction awareness, NetScaler can switch one client’s many SQL transactions in a single TCP connection to several different servers. This delivers more optimal load balancing of SQL traffic since the load distribution is more granular when compared to a TCP load balancer.
- SQL Content switching (read/write split): NetScaler can interpret SQL transactions and decipher between “select”, “drop”, “insert”, “update” and other SQL statements and perform a split between read and write transactions. Splitting the reads and writes simplifies application server deployments by offloading the decision making and policy enforcement to NetScaler.
- SQL Health monitoring: NetScaler intelligently load balances SQL requests, by selecting the database server that will return up-to-date data the fastest at the time of the request and sending the read request to only that server.
- Automated IP failover: NetScaler’s Virtual IP address solution is based on automated IP failover implementation where the virtual IP is assigned to the master node is switched over to the secondary node upon detection of heartbeat/monitor failure.
- Security: NetScaler can apply granular user access policies to each database user. It also provides a consolidated log of all SQL transactions and user
accesses for complete visibility, without taxing the database server. SQL protocol validation is also available with advanced Policy Infrastructure (PI)
As the industry’s first SQL aware load balancing solution, NetScaler addresses the scaling and availability needs of the data tier, leveraging its
HTTP ADC technology for the web tier. NetScaler’s SQL connection multiplexing scales connection limits for database scale up, native SQL load balancing
optimizes database scale-out, SQL transaction logs simplifies database security and replication aware monitors with Virtual IP based failover enables
Combine SQL with Netscaler and you have a perfect match =o)