Disaster Recovery, High Availability, and Continuous Availability - What's the Difference?

Last month I posted a video that gave a brief overview of how data replication is used for continuous availability. I then got ask why I used the term continuous availability instead of high availability or disaster recovery. "What's the difference?" Well, while these solutions have a lot of overlap and can usually
be built from some of the same components, they can have different objectives. Different objects can mean different implementations. So, I'm going to use this post to define how I use these terms when talking about replication and why I chose continuous availability.
Disaster Recovery (DR)
The goal of disaster recovery is to restore the business after an unplanned outage. It does this by providing a standby of a primary database and keeping it current through replication of changes from the primary. Changes can be replicated synchronously
or asynchronously. If done asynchronously and an outage happens, changes may be lost (if the primary is down permanently) or stranded (if the primary is down temporarily). The amount of change data lost or stranded is dependent on the latency of replicated
changes. If done synchronously, no committed changes are lost or stranded in an outage.
This leads to two other terms - recovery point objective and recovery time objective.
Recovery point objective (RPO) is an industry term used to describe the amount of changed data a business is willing to lose in an outage. You'll see the term "RPO=0" used when a company says its business cannot afford to lose any data
in an outage. "RPO>0" says the company can go back to some prior point in time (i.e., strand or lose a defined time's worth of data) to restart its business.
When a company is willing to accept a loss of data (RPO>0), they are generally driven by a desire to limit recovery time to an acceptable level.This is called the recovery time objective (RTO). With most disaster recovery solutions, there's
a tradeoff between RPO and RTO. For example, if you want no data loss (RPO=0), some solutions require time to complete recovery before coming back on-line (RTO>0).
However, an important point here is that the definition of disaster recovery does not include a statement about the availability of the data either during a disaster or during recovery. That's where the terms high and continuous availability come in.
High Availability (HA)
The goals of high availability (HA) are to (1) make data available during defined periods and (2) meet availability objectives during those periods. HA solutions account for both planned and unplanned outages, but allow for something less
than 100% availability. To meet objectives, an HA solution typically includes a window for planned outages such as maintenance.
A company might have HA objectives like be one of the following which are usually formalized in a service level agreement (SLA):
  • Make data available 99.9% of the time for the year.
  • Data can be unavailable for no more than 10 hours a year during defined business hours.
So what's the difference between disaster recovery and HA? Key points are:
  • As stated previously,disaster recovery focuses more on unplanned outages and maximizing recovery of data, whileHA focuses more on
    making data available and accounting for both planned and unplanned outages
    .
  • Building on the previous point - HA doesn't offer a guarantee that no data is lost in a disaster.
  • Disaster recovery solutions tend to be more of a single-site solution, with primary
    and standby being relatively close to one another, while HA is often used between sites that are separated by geographic distances spanning time zones.
The last two point are why disaster recovery and HA are used together - two sites can each have a disaster recovery solution for their local copy of a database and then
use an HA solution to keep data highly available between sites.
However, many global businesses now need systems and data available without interruption. In other words, they want 100% availability. That's where continuous availability
comes in.
Continuous Availability
The goal of continuous availability is to ensure data is always available for business needs. In other words,the goal is 100% data availability.
Planned and unplanned outages of systems or software should have no effect on availability. This is usually achieved by using replication to maintain multiple active copies of the data. Like HA, the solution can also be enhanced with a disaster recovery component
for unplanned outages.
To be clear, an 'active' solution means that any copy of the data could be read or modified. It also means that at least one site is always fully active and ready to
accept workload.

Most continuous availability solutions today are for two databases and allow for workload balancing across sites. The terms Active-Active
Databases
and Active-Active or Dual Warehousing are used for the most common variations. However, there
is also a trend towards availability solutions that involve three or more sites.

Conclusion
So, why did I use continuous availability with last month's video? It's because most modern data replication technologies are being designed to be either a solution
or a part of solutions that target 100% availability of data. Naturally, if you have a different view, feel free to use the comment section below :)



原文: http://www.channeldb2.com/profiles/blogs/disaster-recovery-high

Disaster Recovery, High Availability, and Continuous Availability - What's the Difference?的更多相关文章

  1. High Availability (HA) 和 Disaster Recovery (DR) 的区别

    High availability 和disaster recovery不是一回事. 尽管在规划和解决方案上有重叠的部分, 它们俩都是business contiunity的子集. HA的目的是在主数 ...

  2. [SQL in Azure] High Availability and Disaster Recovery for SQL Server in Azure Virtual Machines

    http://msdn.microsoft.com/en-us/library/azure/jj870962.aspx Microsoft Azure virtual machines (VMs) w ...

  3. 云区域(region),可用区(AZ),跨区域数据复制(Cross-region replication)与灾备(Disaster Recovery)(部分1)

    本文分两部分:部分1 和 部分2.部分1 介绍 AWS,部分2 介绍阿里云和OpenStack云. 1. AWS 1.1 AWS 地理组件概况 AWS 提供三种地理性组件: Regions:区域,即A ...

  4. 数据备份与恢复 半持久化 全持久化 fork aof rdb Backing up Disaster recovery 备份 容灾

    Redis数据备份与恢复 - 流年晕开时光 - 博客园 https://www.cnblogs.com/deny/p/11531355.html Redis数据备份与恢复 Redis所有数据都是保存在 ...

  5. Performing a full database disaster recovery with RMAN

    Performing a full database disaster recovery with RMAN1. Make the RMAN backup set pieces available.2 ...

  6. Disaster recovery best practices for Symantec Endpoint Protection 12.1

    https://support.symantec.com/en_US/article.TECH160736.html

  7. SharePoint 2013 Disaster Recovery——迁移内容数据库

    安装和配置SharePoint Farm时,一定要注意将内容数据库不要放在C盘,除非你的C盘能足够承受起日益增长的数据.由于在安装SQL SERVER中没有注意,我将数据库存放在默认的 C:\Prog ...

  8. Oracle Standby Database 实现方案

    Oracle Standby Database 实现方案  From: http://wanow.blog.hexun.com/4672755_d.html 字号:大 中 小 版本:V20060328 ...

  9. [SQL in Azure] Provisioning a SQL Server Virtual Machine on Azure

    http://azure.microsoft.com/en-us/documentation/articles/virtual-machines-provision-sql-server/ Provi ...

随机推荐

  1. Div里面载入另一个页面的实现(取代框架)(AJax)(转)

    随着框架越来越不火了,HTML5就不对框架支持了,iframe也只有url了,Div就担当了此大任 DIV+CSS在页面部局确实也很让人满意,使用也更方便 今天突然遇到一个问题,那就是需要导入另一个页 ...

  2. JSP连接数据库的两种方式:Jdbc-Odbc桥和Jdbc直连(转)

    学JSP的同学都要知道怎么连数据库,网上的示例各有各的做法,弄得都不知道用谁的好.其实方法千变万化,本质上就两种:Jdbc-Odbc桥和Jdbc直连. 下面先以MySQL为例说说这两种方式各是怎么连的 ...

  3. 学会使用JDK API

    api是字典,知识过了一遍之后,剩下的就是实践+百度+api了

  4. HTTP POST GET 本质区别详解

    HTTP POST GET 本质区别详解 一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式:在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交 Ht ...

  5. Android menu 简单创建

    在android 中与menu相关的类有4个: Menu:菜单的父窗口,用于创建一个菜单,是subMenu,ContentMenu,MenuItem等的父接口:SubMenuyo用于创建子菜单,Con ...

  6. GATK原理及流程

    用GATK跑了很久的流程,但还是不知道它的原理,现在项目要深入,没有流程可用,一切都要手动,所以必须开始着手了解GATK运行的原理,必须要知道需要输入什么,基本的算法,输出是什么. 参见: GATK使 ...

  7. 通用 PE 工具箱1.9.6(XP内核)by Uepon(李培聪)

    通用 PE 工具箱1.9.6(XP内核)by Uepon(李培聪)官网:http://hi.baidu.com/uepon?page=21.8版论坛帖子:http://bbs.wuyou.net/fo ...

  8. 浅谈全区全服架构的SNS游戏后台

    版权声明:本文由梁本志原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/198 来源:腾云阁 https://www.qclo ...

  9. C语言中随机数相关问题

    用C语言产生随机数重要用到rand函数.srand函数.及宏RAND_MAX(32767),它们均在stdlib.h中进行了声明. int rand(void);//生成一个随机数 voidsrand ...

  10. ios开发中的toll-free bridged

    所谓的Toll-free bridging是说您可以在某个框架的方法或函数 同时使用Core Foundatio和Foundation 框架中的某些类型. 很多数据类型支持这一特性,其中包括群体和字符 ...