Alternative Techniques in Support of High Availability

As you consider and evaluate all of the primary high availability options that are available to you, you often realize that you might only need one portion of an application to be highly available, or that a Microsoft solution isn't optimal. Better understanding what third-party high availability alternatives are available in the marketplace can be time well spent. In addition, understanding intermediate techniques to utilize (like using DTS packages to dynamically create redundant data) as an early step to achieving some degree of high availability may help you mitigate your current risk and exposure. And, seeing what other vendor technical architectures look like (like an IBM high availability configuration) is a good contrast and learning exercise to go through. The next few sections dive into some of these alternative ideas, and third-party offerings.

Data Transformation Service (DTS) Packages Used to Achieve HA

For those of us who have been using DTS for many years to do major data conversions, data loads, and data migrations, it is very clear that DTS packages could be used to create fail-over database environments. This was not listed as a primary solution for high availability, but is a solution nonetheless. DTS packages can be a short-term solution to start creating viable alternate sites without much effort and result in a first step in achieving some level of high availability capability. The thing to keep in mind is that the packages that are created with DTS will be issuing native insert and bulk insert calls and not using page level techniques that are present with log shipping and other methods. There is also a processing impact to the source server. For these reasons, we keep it as an idea, and not as a viable, easily managed high availability solution.

Have You Detached a Database Recently?

Another crude (buy extremely powerful) method to create a snapshot of a database (for any purpose, even for backup and recovery) is to simply detach the database and attach it in another location (pretty much anywhere). There will be some downtime during the detach time, the compressing of the database files (the .mdf and .ldf), some time during the data transfer of these files (or single zipped file) from one location to another, some uncompress time, and the final attach time (seconds). All in all it is a very reliable way to move an entire database from one place to another. What we are suggesting is that all methods of backup and recovery be considered when dealing with high availability. This is crude, but fairly fast and extremely safe. To give you an example of what this takes, a database that is about 30GB can be detached, compressed, moved to another server across a network (with a 1GB backbone), uncompressed, and attached in about 10 minutes. Make sure your administrators know they can do this in a pinch. This is probably not a good high availability solution to advertise though.

Third-party Alternatives to High Availability

Third-party alternatives to replication, mirroring, and synchronization approaches of support high availability are fairly prevalent. Companies such as Veritas, Computer Associates, and others lead the way with very viable, but often expensive solutions. However, many are bundled with their disk subsystems (which make them easy to use and manage, out-of-the-box). In a recently published survey (June 2004) of alternatives to Microsoft Clustering, several very strong solutions were identified.

Some of the better ones included

  • Veritas (www.veritas.com)— Veritas storage and clustering products for Windows. The Veritas clustering solutions provide protection against application and database downtime. These include

    • VERITAS Cluster Server

    • VERITAS Cluster Server Traffic Director

    • VERITAS CommandCentral Availability

    • VERITAS Global Cluster Manager

    The Veritas replication solutions can create duplicate copies of data across any distance for data protection. These include

    • VERITAS Storage Replicator

    • VERITAS Volume Replicator

  • SteelEye Technologies (www.steeleye.com)— The SteelEye LifeKeeper family of data replication, high availability clustering, and disaster recovery products are for Linux and Windows environments. These are all certified solutions (on a variety of other vendor products) across a wide range of applications and databases running on Windows and Linux, including mySAP, Exchange, Oracle, DB2, SQL Server.

  • LEGATO software (www.legato.com)— Co-StandbyServer and Automated Availability manager. The LEGATO Automated Availability (AA) family of products includes capabilities required to manage system's performance and to automate recovery from failures. LEGATO AA also automates data mirroring and replication, to enable data consolidation, migration, distribution, and preservation through failures and disasters.

  • Computer Associates (www.ca.com)— BrightStor High Availability. This product incorporates file-system replication, rapid fail-over replication, and process-monitoring technology from CA's Unicenter enterprise-management solution.

    • BrightStor High Availability Manager provides maximum availability for mission-critical applications. Data stored on a primary server is replicated in real-time to a secondary server, which can be located on a LAN or WAN. Whether hardware failure or natural disaster, BrightStor High Availability Manager automatically detects critical problems with the primary server and immediately switches activity to the secondary server, allowing you to continue working with virtually no interruption. BrightStor High Availability Manager lessens the risk to your vital business systems and maintains access to server-based applications such as databases and email—even if systems suffer damage or service outages.

    • BrightStor Data Availability Solutions provide complete end-to-end storage protection for all critical business storage assets from the laptop to the mainframe. CA solutions provide complete integrated support for server-less backup, snapshot technology, complete devices support and full application/database support. These solutions provide comprehensive cross-platform backup/recovery, disaster recovery, data replication, and hierarchical storage management.

Our recommendation is that if you are already a customer of one of these vendors you should look at these solutions, since they may be available with a product you already are using. This is a starter list for those interested in high availability solutions that are Microsoft compatible and offer non-Microsoft compatibility as well. This is not a comparison of high availability solutions, but rather an invitation to look at other high availability solutions that might fit your needs.

IBM/DB2 High Availability Example

Just to keep us honest, we thought it would be a good idea to share a typical high availability configuration of a competing product (and company). One of our customers has recently put a lot of time and money in building out a very good high availability solution for their most critical application (their order entry system). They churn between 6,000 and 8,000 orders per day with an average order value of about $550.00 (USD). That's $4.4 million a day. They run nationwide warehouses in all North American time zones translating into 12 hours (720 minutes) per day, 6 days per week uptime requirements. So, that's on average 11.11 orders per minute or a cost of downtime of approximately $6,111.11 dollars per minute. It adds up quickly.

In their business, all orders are either taken by phone directly or via the web. The system must be up 99.999% of the time, which would classify this as an “extreme” availability requirement.

The underlying database engine is DB2 and the overall high availability configuration is as follows:

  • Application database is highly partitioned to segregate static tables from volatile tables

  • Full database backups (with incremental log backups) are done

  • A very resilient NAS disk subsystem consisting of RAID 10 multiple stripped and mirrored volumes is in place

  • Is a “clustered” pair of high-end IBM servers on the AIX 5.1 operating system platform using HACMP capabilities in an active/active mode (see Figure 10.19)

    Figure 10.19. IBM/DB2 Clustered Server configuration supporting a 99.999% high availability requirement.

As you can also see in Figure 10.19, High Availability Cluster Multi-Processing (HACMP) is IBM's software for building highly available clusters on IBM Scalable POWERParallel systems and/or a combination of pSeries systems. It is supported by a wide range of IBM pSeries systems, including the new p690, storage systems, and network types. HACMP builds on the inherent reliability of the hardware to provide greater uptime for applications, and enables upgrades and reconfiguration without interrupting operations. This example utilizes the IBM Serial Storage Architecture (SSA) to share a network attached storage device (SAN) for all of the database and application files. In the event of a system failure (like if the P630 should fail), the HACMP automatically switches the control of the application and access to the database to the secondary server (the M80 server).

The amazing part of this story is that the front-end has been built using C# (and VS.NET). In other words, this is a .NET framework implementation that is using DB2 as the database engine on an AIX backend set of clustered servers. It is equally interesting to note that all development for this extreme availability system was done using Microsoft SQL Server followed by porting the schema, stored procedures, and functions to DB2 after user acceptance was completed. The port to DB2 was done entirely because the customer already owned the big AIX iron and the licenses to DB2 (they have been true blue for 30 years). This porting to DB2 in no way meant that SQL Server 2000 couldn't handle this type of application. In fact, the performance benchmarks we did reflect equal performance capabilities and equal high availability coverage. But, the customer demanded that it be on DB2. We, however, keep the user acceptance version (that was built on MS SQL Server 2000) alive and well on their site “just in case.”

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.191.134