Tuesday, August 9, 2011

What's High Availability?

My topic of study these last weeks has been about implementing database replication and high availability. I've made several advances into the former and read about the later. I'll be reviewing some of my findings on the later in this post.

Let's define what we mean by "High Availability"

  • Is a system design approach and associated service implementation that ensures a prearranged level of operational performance will be met during a contractual measurement period.

From this definition stands out the keywords "to ensure", "prearranged or contractual" and "operational performance" "period",

  • In information technology, high availability refers to a system or component that is continuously operational for a desirably long length of time.


From this one: "continuously operational for a desirably long length of time"

This definition from symantec is very interesting:

  • High availability, as a general rule, is a configuration of hardware and software that allows for monitoring of services provided by a system and for the transfer of those services to another system in the case of a failure - including catastrophic, complete system failures.




Symantec detracts the common belief that high availability is necessarily "always available", and advocates for defining it as a set of monitoring techniques, and some sort of the overlapping between fault tolerance and disaster recovery.

Having compared these concepts I could embrace the following hybrid:

High availability is the contractual responsibility of ensuring a prearranged and continuous level of performance of a system within a defined period, by monitoring it and using redundancy and failover techniques transparent to the user.

Now, walking on more solid grounds lets explore some other concepts from the oracle docs:

  • Types of  high availability solutions:

Local: provide high availability in a single data center deployment

Disaster recovery solutions. Are usually geographically distributed deployments that protect your applications from disasters such as floods or regional network outages.

  • The most important mechanism for high availability is redundancy. Redundancy determines the categorization of local high availability solutions.

  • Categorization or levels of redundancy:

+ active-active solutions.Deployment of two or more active system instances and ca be used to improve scalability as well provide high availability. All instances handle requests concurrently.

+ active-passive solutions. Deployment of an active instance that handles requests and a passive instance that is on standby. In addition, a heartbeat mechanism is set up between these two instances. The monitoring tool (heartbeat mechanism) takes care of performing a failover procedure when appropriate. Active-passive solutions are also generally referred to as cold failover clusters.


There's a sea of terminology regarding this interesting topic, but there will be more in the following days =-D.





No comments:

Post a Comment