Microsoft SQL Server is a critical database server for software developers, helping to store and retrieve data that other software applications request. That’s why SQL Server developers are in such high demand – and command average salaries close to six figures.
Yet while SQL Server remains a go-to relational database management system, it has some significant challenges that include ensuring database high availability (HA) and disaster recovery (DR). Resilience, security, and scalability are specific obstacles, since it must scale across not only on-premises locations, but also across remote sites and clouds.
Our connected world brings us together virtually, but it’s also extremely fragile. In addition to constant concerns about data security, developers must consider that enterprises need database resiliency between and within availability zones. As data migrates between isolated networks, businesses must prioritize the data’s integrity while managing the number of database instances, with an eye to scalability.
Pick Your “Poison”
When leveraging the new class of cloud-based Microsoft SQL Server, developers know that enterprises need optimal remote data protection. This means determining how to maximize SQL’s HA for local HA, and its DR functionality. But to use SQL Server on Linux for HA and DR in tandem, you previously needed to pick your “poison,” so to speak. The first option was a Pacemaker-based solution, which meant relying on virtual private networks (VPNs) for DR, with separate clusters for availability groups (AGs) and HA instances.
The second option was to use VPNs for DR, bringing together HA SQL Server instances with a second solution to manage data replication. This was needed regardless of whether you were replicating the full virtual machine, storage, block level, and so forth.
Neither of these “poisons” is ideal – more like “Frankenstein” efforts that create a suboptimal result from cobbling together SQL Server clustering for SQL Server AGs, Pacemaker, and VPNs. The resulting problems were that the implementation:
- Lacked scalability
- Failed RTO and RPO requirements
- Lacked data security
- Was expensive and thus unrealistic for many organizations
Pairing for Perfection
Fortunately, there’s a better alternative to the Frankenstein method that pairs software and server effectively: it involves running smart high availability software on top of SQL Server. Developers should consider the following use case for a large fintech firm:
The fintech at first thought about going with a Frankenstein – SQL Server AG, Pacemaker clusters, and direct network connections. But the organization discovered upon closer examination that there would be several problems with this approach, starting with the fact that the local HA and DR architecture would be complex and unreliable, and cluster management would be clunky because of several incompatible clustering technologies. There would additionally be RTO challenges: Manual failover management between clusters and data centers would potentially cause long system outages. Last but far from least, the costly infrastructure would need ongoing maintenance.
So instead, the fintech decided to opt for multi-platform smart high availability SQL Server clustering software and was not disappointed by their choice. The company eliminated all of the projected pain points and instead enjoyed:
- Better uptime
- Quicker transaction processing
- Increased performance of SQL Server AGs
- Simplified SQL Server workload management
- Better database resilience from SQL Server, which addressed channel partners’ and end users’ needs
- Maximum data security
- Scalability across clouds (public/private), and between locations (remote/on-premises)
The multi-platform smart high availability SQL Server clustering software also helped chop the company’s SQL Server costs in half by combining remote data protection, SQL Server AG with local HA, SQL Server Failover Cluster Instances (FCI). In short, smart high availability SQL Server clustering software succeeded in negating the performance problems of VPNs, emerging as the clear winner against traditional solutions. By offering simple system management, evergreen infrastructure compatibility, and standardized local HA and DR architecture, this single cluster setup offers the cyber-resiliency that enterprises need, and that software developers should keep top of mind.