Well, Part 7 has completed and we're on the home stretch… focusing on part of the new Always On technologies of SQL Server 2005. We've made our way through quite a few discussions and my main point for the sequence – as defined – was to make clear that keeping a system available takes a myriad of choices, features, configurations – and more. In fact, even once you think you've done it you still need to monitor, manage and re-evaluate your configuration if unexpected events occur and bring your system offline and/or unavailable in any way. And – well, that's also a big part of my focus… what does "availability" mean to you? Do you believe that only unplanned downtime counts or that *any* impact to the system's availability counts as "downtime"? (btw – I'd really like to know!)

Regardless, that's been our primary focus for the series… I believe that the Enterprise Edition of SQL Server 2005 can keep your system available through a very wide number of system hiccups, damage and even more catastrophic disasters. In the previosu sessions we looked at migration and installation (ensuring a proper configuration – right from the start), we covered creating a secure environment (which also impacts availability), we looked at "finding the right tool for the job" and then we started looking into alternative designs that may help to improve availability by scaling out our design. If you missed any of the sessions you might want to go back and see what's what! Here's the list of sessions at a quick glance:

Session 1: A Fast-Paced Feature Overview and Series Introduction (Level 200)
   Presenter: Kimberly L. Tripp, SQLskills.com, 
   Session's corresponding blog entry, here

Session 2: Security (Level 200)
   Presenter: Bob Beauchemin, SQLskills.com, 
   Session's corresponding blog entry, here

Session 3: Understanding Installation Options and Initial Configuration (Level 200)
   Presenter: Kimberly L. Tripp, SQLskills.com, 
   Session's corresponding blog entry, here

Session 4: Upgrade Considerations and Migration Paths (Level 200)
   Presenter: Kimberly L. Tripp, SQLskills.com, 
   Session's corresponding blog entry, here

Session 5: Effective Use of the New Management Tools (Level 200)
   Presenter: Kimberly L. Tripp, SQLskills.com, 
   Session's corresponding blog entry, here

Session 6: New Application Design Patterns for Scalability and Availability and the Operational Implications of Service Broker (Level 200)   
   Presenter: Bob Beauchemin, SQLskills.com, 
   Session's corresponding blog entry, here

Session 7: Technologies and Features to Improve Availability (Level 200)

Session 7 was a great deal of fun – we covered 11 different technologies (12 if you count partitioning) and discussed the architectural reasons to choose each teachnology – as well as the barriers it provides protection against. We talked about a lot of technologies and a lot of resources:

  • Remote Mirroring - Always consult your hardware vendor and make sure they support block size preservation and write-order preservation. Ideally, RM should be combined with Failover Clustering – when that's the case you have a "Geographically dispersed failover cluster" which removes the single point of failure in Failover Clustering. See the Windows Server Catalog, specifically for the Geographically Dispersed Cluster Solution category.
  • Failover Clustering – A combination of hardware and software to provide protection against server failure. Only solutions from the Windows Server Catalog, specifically for the Cluster Solution category for supported solutions in failover technologies.
  • Database Mirroring - See the homework references below as well as come back for the next two upcoming sessions where we cover DBM for two weeks.
  • Log Shipping – While this is still supported *and* while there are still some excellent uses for Log Shipping, this is not a "favorite" solely for failover. If you're looking for a "warm" failover solution (warm = no automatic detection, no automatic failover) with less potential for data loss – you should consider the "High Performance" configuration of Database Mirroring. If you would like to continue using Log Shipping for a more latent secondary (a log load delay) for managing disasters (either investigation or recovery) of data from an older "version" of the database then LS is an option but Database Snapshots can also help in *some* cases. This technology is well documented as well as written about.
  • Peer to Peer Replication – I demo'ed and discussed this in session 1 as well as referenced a few helpful links for TechNet sessions, etc. See the session and "blog" links as listed above.
  • RAID – Redundant Array of Independant Disk
  • Partial Database Availability, Online Piecemeal Restore and Database Snapshots - come back for Session 10 where I'll cover these and demo these!
  • Raid.edu – a short – but interesting overview of all the different raid types.
  • MSPress title: Microsoft SQL Server 2000 High Availability, Chapter 9: Database Environment Basics for Recovery
  • SQL Server 2000 and SQL Server 2005 support for mounted volumes
  • MSDN "Developer/Design" Webcast Series: Blog entry with all of the links
    • Online Index Operations, Part 5
    • Snapshot Isolation, Part 6
    • Partitioning, Part 8
  • Scalable shared databases are supported by SQL Server 2005
  • Oracle Real Application Clusters and Industry Trends in Cluster Parallelism and Availability

Finally, be ready to watch Mark's session on Friday, April 28. Here's your homework for Session 7:

  1. Review: Release notes and information for SQL Server 2005 Service Pack 1 
  2. Watch: TechNet Webcast: How to Increase Availability Using Database Mirroring in SQL Server 2005 (Level 200) 
  3. Read: Database Mirroring in SQL Server 2005 

And the details for Session 8:

TechNet Webcast: SQL Server 2005 for the IT Professional (Part 8 of 11): Implementing Database Mirroring in SQL Server 2005 (Part 1 of 2) (Level 200)
Presenter: Mark Wistrom, Program Manager, Microsoft Corporation

Database mirroring was released for testing when Microsoft SQL Server 2005 shipped in November. As the first service pack has shipped, it's time to get prepared for database mirroring in production! In this session, understand the barriers of what database mirroring will protect against, what constitutes a "failover", what the performance criteria are and how the monitoring has been brought together for release. Attend this first part of two – as the eighth webcast in the SQL Server 2005 for the IT Professional series to obtain better insight for when database mirroring should be implemented as well as what to expect moving forward in service pack 1 (SP1). Part 9 will cover implementation from start to finish – as an end to end demo.

Start Time:   Friday, April 28, 2006 9:30 AM (GMT-08:00) Pacific Time (US & Canada) 
End Time:   Friday, April 28, 2006 11:00 AM (GMT-08:00) Pacific Time (US & Canada) 

See you in Part 9: TechNet Webcast: SQL Server 2005 for the IT Professional (Part 9 of 11): Implementing Database Mirroring in SQL Server 2005 (Part 2 of 2) (Level 200) on May 5th.
kt