none
Failover cluster vs Availability Groups

    Question

  • I am trying to understand the advantages of FCI over AG and vice versa. I have read several articles but none talks about when one should use FCI over AG or AG over FCI.

    Basically I am going to make a SharePoint farm and for that I need to decide whether I should go for FCI or AG. Any help is appreciated.

    Sunday, March 02, 2014 6:36 AM

Answers

  • Start reading here

    https://www.microsoftvirtualacademy.com/tracks/mission-critical-confidence-using-microsoft-sql-server-2012

    http://www.sqlservercentral.com/articles/FCI/92196/


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    Sunday, March 02, 2014 7:57 AM
  • >>>So isn't instance level protection better than database level protection because >>>>in instance level, databases are automatically protected?

    It depends.. For example you can query the read only database on the secondary replica... It is also possible that you have 100 databases but only one of them is critical  and needs HA.

    There is RAID 5 (parity) , RAID 0, RAID 1, RAID 10 ,.... I think  you need to talk to the SAN admin to understand your disk configuration.


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    Sunday, March 02, 2014 10:53 AM
  • FCI is simpler to adminstrate, as there is only one instance  - as Uri Dimant says - FCI is protecting your server at the instance level. This means that you do not have to worry about logins, jobs etc. on the secondary instance. But you have only one set of data, so you rely much more on your backup.

    AG is truly 2 different SQL servers that works together on selected databases. This is protection at the database level. This means that you have two sets of data and that corrupted pages will be restore automatically from the secondary replica. On the down side you have to administrate 2 sets of logins, jobs etc. and patch two different servers.

    Beware that AG introduces a penalty on writing if you decide to use synchronous replicas. The penalty can be as big as x2 for writing, compared to your single SAN solution on the FCI setup. The penalty for asynchrohous replicas is not significant.

    For many the best/most secure solution would be to create a local FCI with AG asynchronus replica to a third server. Then you get the best of both worlds.

    Regards

    Rasmus Glibstrup
    http://blog.sqlguy.dk


    Sunday, March 02, 2014 8:23 PM

All replies

  • Start reading here

    https://www.microsoftvirtualacademy.com/tracks/mission-critical-confidence-using-microsoft-sql-server-2012

    http://www.sqlservercentral.com/articles/FCI/92196/


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    Sunday, March 02, 2014 7:57 AM
  • Start reading here

    https://www.microsoftvirtualacademy.com/tracks/mission-critical-confidence-using-microsoft-sql-server-2012

    http://www.sqlservercentral.com/articles/FCI/92196/


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    What I have gathered from this is that:

    1. In FCI, SAN is single point of failure
    2. We can overcome this problem by using RAID (correct me if I am wrong)
    3. Instead of using RAID, now SQL Server directly provides this functionality that you can have 2 copies of same database rather than just one so if one disk fails then the other takes it place

    Sunday, March 02, 2014 8:39 AM
  • Failover cluster is an instance protection level and

    Availability Groups is a database protection level.

    >>>>2. We can overcome this problem by using RAID (correct me if I am wrong)

    Can  you expand a little bit? What RAID configuration did you mean? How RAID protects you from let me say network  issue  caused failover?  


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    Sunday, March 02, 2014 8:50 AM
  • Failover cluster is an instance protection level and

    Availability Groups is a database protection level.

    >>>>2. We can overcome this problem by using RAID (correct me if I am wrong)

    Can  you expand a little bit? What RAID configuration did you mean? How RAID protects you from let me say network  issue  caused failover?  


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    So isn't instance level protection better than database level protection because in instance level, databases are automatically protected?

    My understanding of RAID is if some thing happens to primary SAN then the other secondary SAN will takes its place depending on RAID configuration!?

    Sunday, March 02, 2014 9:18 AM
  • >>>So isn't instance level protection better than database level protection because >>>>in instance level, databases are automatically protected?

    It depends.. For example you can query the read only database on the secondary replica... It is also possible that you have 100 databases but only one of them is critical  and needs HA.

    There is RAID 5 (parity) , RAID 0, RAID 1, RAID 10 ,.... I think  you need to talk to the SAN admin to understand your disk configuration.


    Best Regards,Uri Dimant SQL Server MVP, http://sqlblog.com/blogs/uri_dimant/

    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting: Large scale of database and data cleansing
    Remote DBA Services: Improves MS SQL Database Performance
    SQL Server Integration Services: Business Intelligence

    Sunday, March 02, 2014 10:53 AM
  • FCI is simpler to adminstrate, as there is only one instance  - as Uri Dimant says - FCI is protecting your server at the instance level. This means that you do not have to worry about logins, jobs etc. on the secondary instance. But you have only one set of data, so you rely much more on your backup.

    AG is truly 2 different SQL servers that works together on selected databases. This is protection at the database level. This means that you have two sets of data and that corrupted pages will be restore automatically from the secondary replica. On the down side you have to administrate 2 sets of logins, jobs etc. and patch two different servers.

    Beware that AG introduces a penalty on writing if you decide to use synchronous replicas. The penalty can be as big as x2 for writing, compared to your single SAN solution on the FCI setup. The penalty for asynchrohous replicas is not significant.

    For many the best/most secure solution would be to create a local FCI with AG asynchronus replica to a third server. Then you get the best of both worlds.

    Regards

    Rasmus Glibstrup
    http://blog.sqlguy.dk


    Sunday, March 02, 2014 8:23 PM