Tag Archives: HA

‘High Availability’ 101 – Replication

On Friday we discussed redundancy as a universal attribute of highly available (HA) components. See “’High Availability’ 101 – Redundancy.” This time we’ll explore data replication, an application of redundancy that is common in many HA systems.

Often, the first hurdle in creating an HA component involves accessing data in a highly available fashion. Unfortunately, it is also one of the most complicated and expensive problems to solve. Applying the principle of redundancy introduced on Friday, highly available data means redundant data. Redundant data requires the act of copying it to redundant locations. This copying is sometimes referred to as ‘replication’. Highly available data requires some form of replication. Complications may result from the potential overhead of this operation, and maintaining consistency between the disparate copies. Consistency is especially troublesome if the data is capable of being read and modified concurrently. Continue reading

‘High Availability’ 101 – Redundancy

High Availability (HA) is just one of those topics. Ask five people to define HA, and you’ll probably receive five different answers. I’m not immune to this myself, but I’d like to explore two universal attributes I believe all highly available systems share. The topics will be split across two blogs. This time we’ll talk about redundancy, and in the next installment, replication.

Availability is the probability a system can fulfill its function on behalf of the user (be it human or another component) at any given point in time.  For example, if your system is 90% available, the user should expect to receive service nine times out of ten.  The quantification of ‘high’ in ‘high availability’ is arbitrary depending on the context, but we are usually talking high 90s, and even counting the number of trailing decimal 9s on 99% for certain applications. Continue reading