Friday, March 9, 2012

High Availability Choices from Mgt. Perspective

I need to make a brief presentation to upper management about High Availability options in SQL Server 2005.

Current choices being considered are:

- Failover clustering

- Log shipping

- Mirroring

Q1: Are there other choices?

Q2: How do these choices compare in terms of cost, complexity of setup, ease of deployment, recovery procedures in case of a disaster?

Ben Aminnia

What is the amount of time you can afford to be offline?
The failover time is quite different between the 3 options.

WesleyB

Visit my SQL Server weblog @. http://dis4ea.blogspot.com

|||

The obvious answer would be "The quicker the recovery, the better!"

Can you prioritize the 3 methods in terms of recovery speed? e.g. fastest, medium, slowest or 5-minutes, 30 minutes, 2-hours (or something like that)?

We can then look at them from the setup-complexity angle.

Thanks,

Ben

|||

In theory database mirroring provides failover in a matter of seconds when it is combined with .NET 2.0 which supports transparent failover.

Clustering is a matter of minutes and depends on the number of resources and how fast they start on your server.

Log shipping depends a bit on your procedures but it takes a bit more work because there is not automatic way to 'failover' to the log shipping database. You would have to get the database up and running on the destination server and redirect the application servers to the new destination server. All this is not as transparent as database mirroring but many people have more faith in log shipping because it is 'old' technology which has proven itself (just like clustering).

Hope this helps

WesleyB

Visit my SQL Server weblog @. http://dis4ea.blogspot.com

|||

Inaddition to what Wesley said, you can refer this link for the comparision features between the 3.........

http://sql-articles.com/articles/diffdbmrr.htm Database mirroring seems to be the best as there's less downtime with automatic failover if you use high availability mode.........

|||

I followed the link and the descriptions seemed a little mixed up. For example, the description under mirroring was really talking about clustering and vice versa. Nonetheless, there are good points in it.

Thanks,

Ben

|||

Well, I think each option has its place, and that's why there are options: because one size doesn't fit all.

So let me ask another question: Let's say "money is no object" then which method is most suitable in what kind of scenario? For example, if we have three types of databases:

a. OLTP databases with heavy online transactions all day long

b. Data warehouses with bulk inserts / DTS / SSIS loads overnight

c. Middle tier databases, with complex business rules and interrelationships, but infrequent updates

What high-availability protection method is most suitable for each of the above 3 categories?

Ben

No comments:

Post a Comment