设计背景:不管是公有云还是私有云,为了提供服务的持续性(Business Continuity,BC)和数据的灾难恢复(Disaster Recovery,DR)都不可能只有一个数据中心(Data Center ,DC)。问题 是采用多个DC站点后,每个站点DC的数据要同步,以及为终端用户传输数据提供负载均衡,这些跨城域或广域的DC间该怎样进行数据复制和组织呢?
1.数据恢复衡量指标:恢复点目标(Recovery point objective,RPO)、恢复时间目标(Recovery time objective,RTO)
RPO是指DC损失的数据比例,RPO越小效果当然越好,但是恢复代价也越高。通常减小RPO的方法:开启连续的数据保护以及同步复制
RTO是DC恢复的时间,RTO越小效果也当然越好,但是恢复代价也越高。通常减小RTO的方法:具备聚簇或热备份系统

2.建立镜像和快照
镜像:就是对DC元数据的100%拷贝,备份数据卷和原始数据卷大小一样,数据块位置也一样。一旦完成镜像,就将镜像卷读取到远程DC存放。
在整个复制过程中,不影响应用程序对元数据的使用。
快照:快照是对DC元数据的暂态的拷贝存储。只复制从上次做快照起有更新的数据块,而且所有的更新都记录在日志中,因此存储需要的空间少,支持回滚到最近一次快照。持续数据保护就是做许多快照,使DC能在任意的时间段内回滚。
 
3.数据的同步和异步复制
复制通常就是基于数组完成的,通常的方法有:
EMC Symmetric 远程数据设备、Hitachi True 备份、IBM端到端远程复制。
同步复制:当服务器发出SCSI写命令时,就向A地和B地的磁盘阵列写入数据,当服务器都收到了A和B的SCSI写完成的回复命令时才开始发出下一条SCSI写命令。这样的好处在于能保证两地的磁盘阵列数据永远同步,缺点是如果某一路发生链路故障或者延时,造成服务器一直处于写等待状态,严重影响效率。
异步复制:当服务器发出SCSI写命令是,就向A和B地的磁盘阵列写入数据,服务器不用等到A和B都回复了才继续写,如果A回复了而B没回复就向A继续写入数据,对B的写入数据暂时写入缓存,B从缓存中不断读取数据写入远端B的磁盘阵列中。
至于企业运用中到底采用哪种方案,要考虑A、B的地理位置,带宽延迟、以及谁是主DC,谁是备用DC等。 

浅谈云计算之SAN扩展系统设计的更多相关文章

  1. 浅谈Manacher算法与扩展KMP之间的联系

    首先,在谈到Manacher算法之前,我们先来看一个小问题:给定一个字符串S,求该字符串的最长回文子串的长度.对于该问题的求解.网上解法颇多.时间复杂度也不尽同样,这里列述几种常见的解法. 解法一   ...

  2. 浅谈云计算SPI(SaaS、PaaS、IaaS)

    The other day, I arrived at the SAP LABS CHINA for interview with my pleasure. That gave me a chance ...

  3. 浅谈Activiti Modeler 的扩展

    为什么要扩展         最近项目打算用activiti工作流中activiti modeler来做模块的可视化订阅,但是原生的activiti任务节点,有一些不符合业务需要,比如 配置项多,属性 ...

  4. 【ASP.NET MVC系列】浅谈ASP.NET MVC八大类扩展(上篇)

    lASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操 ...

  5. 【转】.NET(C#):浅谈程序集清单资源和RESX资源 关于单元测试的思考--Asp.Net Core单元测试最佳实践 封装自己的dapper lambda扩展-设计篇 编写自己的dapper lambda扩展-使用篇 正确理解CAP定理 Quartz.NET的使用(附源码) 整理自己的.net工具库 GC的前世与今生 Visual Studio Package 插件开发之自动生

    [转].NET(C#):浅谈程序集清单资源和RESX资源   目录 程序集清单资源 RESX资源文件 使用ResourceReader和ResourceSet解析二进制资源文件 使用ResourceM ...

  6. Abp vNext 番外篇-疑难杂症丨浅谈扩展属性与多用户设计

    说明 Abp vNext基础篇的文章还差一个单元测试模块就基本上完成了我争取10.1放假之前给大家赶稿出来,后面我们会开始进阶篇,开始拆一些东西,具体要做的事我会单独开一个文章来讲 缘起 本篇文章缘起 ...

  7. 浅谈PHP代码设计结构

    浅谈PHP代码设计结构 您的评价:       还行  收藏该经验       coding多年,各种代码日夜相伴,如何跟代码友好的相处,不光成为职业生涯的一种回应,也是编写者功力的直接显露. 如何看 ...

  8. 浅谈PHP技术应用

    序号:1210-41 黑龙江省高等教育自学考试 本科毕业论文 题    目    浅谈PHP技术 学员姓名    夏滟 专    业    计算机及应用 准考证号    010311192585 指导 ...

  9. 浅谈千万级PV/IP规模高性能高并发网站架构(转自老男孩)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/736710 如果把来 ...

随机推荐

  1. Unexpected CFBundleExecutable Key

    昨天晚上打包上传的时候报错: ERROR ITMS-90535: "Unexpected CFBundleExecutable Key. The bundle at 'Payload/xxx ...

  2. 学习微信小程序之css14浮动的特性

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. SAMBA用户访问指定的目录

    指定某个用户访问一个特定的共享文件夹sfx 用户可以访问abc目录 别的用户不可以访问abc目录 先创建一个用户命令useradd sfx 创建一个smbpasswd用户 在创建这个用户时要先创建一个 ...

  4. Java-Android 之出滚动条和卷轴页面

    <?xml version="1.0" encoding="utf-8"?> <HorizontalScrollView xmlns:andr ...

  5. Oracle常用几种Sql用法

    前几天客户提出一个月报,经过了解需求及公式等过程长达20小时,总算基本模型出来了,贴出来啥晒,对于我这种菜鸟来说也算小有提高,虽然Sql语句不是很庞大,但是里面涉及到了几种算法,个人觉得还是经常能用到 ...

  6. NHibernate动态加载资源文件

    最近做项目,又用到了以前做过的ORM框架--NHibernate. 此次想要实现的目标: 1.简单SQL用NHibernate的Session的CRUD方法实现 2.复杂SQL用Native SQL实 ...

  7. [功能帮助类] C#取汉字拼音的首字母PinYin帮助类 (转载)

    点击下载 PinYin.rar 主要功能就是取汉字拼音的首字母,只要你输入一个汉字,或者是多个汉字就会取出相应的道字母,主要是方便查询使用的 /// <summary> /// 编 码 人 ...

  8. JAVA 相关资料

    在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样我们清楚的知道我们大概处于那个阶段和水平. Java程序员 高级特性 反射.泛型. ...

  9. T-SQL切割字符串方法小结 2

    有表tb, 如下: id value ----------- ----------- 1 aa,bb 2 aaa,bbb,ccc 欲按id,分拆value列, 分拆后结果如下: id value -- ...

  10. 写一个最简单的 Server

    import java.net.*;import java.io.*;public class Server{ public static void main(String[] args) throw ...