Enhancing Database Availability: A Combined Approach Using SQL Always on Failover Cluster Instance and Availability Groups
- 1 Department of Computer Science, Bina Nusantara University, Jakarta, Indonesia
Abstract
Database availability is a critical factor in supporting business processes to ensure uninterrupted operations. When the production server experiences failures, data may become inaccessible, disrupting business operations. To mitigate this risk, separating the production server from the reporting server is essential. However, this approach introduces challenges related to data synchronization and automatic failover during system failures. Existing High Availability (HA) solutions have significant trade-offs: FCI enables fast instance-level failover but lacks database replication, making it vulnerable to shared storage failures. Meanwhile, AG ensures continuous database synchronization but has higher failover latency due to log shipping overhead. While FCI provides automatic failover at the instance level, AG offers database-level synchronization and protection, including a read-only access option. To overcome these limitations, this study integrates SQL Always on Failover Cluster Instance (FCI) and Availability Groups (AG), combining FCI's rapid failover capabilities with AG's robust database replication. This hybrid approach enhances availability beyond standalone FCI or AG. Testing over 30 days demonstrated a 99.97%availability rate with an average downtime of 12.3 minutes, offering a practical solution for improving operational efficiency and minimizing system failures.
DOI: https://doi.org/10.3844/jcssp.2025.1332.1342
Copyright: © 2025 Faisal Rahman and Benfano Soewito. This is an open access article distributed under the terms of the
Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
- 25 Views
- 12 Downloads
- 0 Citations
Download
Keywords
- Database Availability
- Failover Cluster Instance
- Availability Groups
- Downtime