存储数据保护技术——HyperReplication远程复制技术讲解

本文主要是介绍存储数据保护技术——HyperReplication远程复制技术讲解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

基本概念

远程复制作用

远程容灾的两个标准

远程复制工作原理

Pair

基本概念

Pair在不同的远程复制阶段可能处于不同的Pair运行状态

一致性组

基本概念:

一致性组注意事项:

远程复制方式

同步远程复制

异步远程复制

问题一

问题二

问题三

注意事项

应用场景


基本概念

HyperReplication   远程复制

远程复制是容灾备份的核心技术,可以实现远程数据备份和灾难恢复

远程复制作用

远程容灾的两个标准

RTO(Recovery Time Objective)---恢复时间目标----指发生故障后多长时间进行业务切换

RPO(Recovery Point Objective)---恢复点数据------指损失的数据量(主发生故障后丢失的数据)

远程复制工作原理

远程复制分为主设备和从设备,主设备向从设备进行数据同步。(主→从)

当主设备发生故障后,需要手动将从设备切换为主设备(当之前的主设备故障恢复后,变为从设备,然后继续主向从同步数据)

其中主LUN为读写状态,从LUN为只读状态

Pair

基本概念

        Pair是指主LUN(Logical Unit Number)和从LUN之间的数据复制关系。

        在远程复制中,数据只能由主LUN经过链路复制到从LUN。

        在进行数据复制之前,必须先建立主LUN与从LUN之间的Pair关系,正如在通话之前需要通过拨号建立两台电话之间的连接一样。

        在配置远程复制时,主端存储系统的一个主LUN和从端存储系统的一个从LUN构成一个Pair。

Pair在不同的远程复制阶段可能处于不同的Pair运行状态

一致性组

基本概念:

一致性组是指多个业务相关联的Pair的集合

对于关联性强的一些业务存放在不同的LUN中,需要通过致同步来保证业务

一致性组注意事项:

远程复制一致性组和里面的成员要求属性一致

所有成员一起同步、分裂和主从切换

在一致性组中如果有一个成员复制链路故障,其它成员数据复制也将会停止

 

所有远程复制的从LUN必须位于一台远端存储系统

一致性组中的远程复制必须是同一种复制模式

一致性组中不同远程复制的LUN可位于不同的工作控制器

只支持在主端存储系统将该系统上的远程复制添加进一致性组

远程复制方式

同步远程复制

实时同步,最大限度保证数据的一致性,以减少灾难发生时的数据丢失量。

DCL作用:当故障发生时,记录主从LUN数据同步的状态

                  下次重新同步时,可以实现增量备份

                  即:写入失败后,后续再写入只用写差异部分(不用全部重新写入了)

                

异步远程复制

周期性同步,最大限度减少由于数据远程传输的时延而造成的业务性能下降。

                                                出现的问题以及解决方法

问题一

        在进行周期性同步的这段时间内,存在继续有新数据写入的情况怎么办?                                      (需要保证同步时就是那个时刻的数据,不能包含新写入的数据)

解决方法:

        使用主快照LUN来解决这个问题,在进行同步的那一刻,打快照,然后将快照LUN映射给从端进行复制(能够保证同步的时候数据没有发生变化)

问题二

        当主向从同步的过程中,主LUN损坏了怎么办?

解决方法一:

        从LUN可以利用从LUN快照回滚,回滚到本次同步前从LUN存放的数据状态,并映射给主LUN,保证业务连续性

解决方法二:

        可以等主设备起来之后,根据DCL中的差异化信息进行增量同步同步

注意:

        以上两种方法都会存在丢失数据的情况,是不可避免的。由于丢失的数据与同步周期有关(周期为3s~1440分钟--24小时),所以一般会根据需要来调节同步周期

        当调节的周期时间太短时,即快照还没落盘的情况下,可以使用内存数据直接远程复制的操作: Cache→Cache

问题三

        那如何保证Cache数据中的一致性?

解决方法:

        采用时间片缓存技术-----时间片即为在Cache中管理一段时间内写入数据的逻辑空间

注意事项

分裂是指暂停由主LUN向从LUN同步数据

针对的是LUN和文件系统

需要多个阵列------每一个阵列购买一个独立的License

多个阵列要求是同一厂商的(同一厂商的阵列之间不是都可以进行远程复制的,要看具体的型号)

创建远程复制时--主从LUN的空间需要一致(因为远程复制可以双向同步)

在进行主从切换时,要注意:

同步远程复制可以直接主从切换(实时同步的)

异步远程复制在切换时可能会造成数据丢失的情况(不是实时同步,数据不一致) ,需要特别注意  

主从切换步骤:

进行Pair分裂操作,并将原先主LUN改为只读操作,从LUN改为读写操作,再进行主从切换

数据同步时,再把主从切换后的从LUN改为只读操作

应用场景

这篇关于存储数据保护技术——HyperReplication远程复制技术讲解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/396792

相关文章

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二

MySQL之InnoDB存储页的独立表空间解读

《MySQL之InnoDB存储页的独立表空间解读》:本文主要介绍MySQL之InnoDB存储页的独立表空间,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、独立表空间【1】表空间大小【2】区【3】组【4】段【5】区的类型【6】XDES Entry区结构【

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

Qt如何实现文本编辑器光标高亮技术

《Qt如何实现文本编辑器光标高亮技术》这篇文章主要为大家详细介绍了Qt如何实现文本编辑器光标高亮技术,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录实现代码函数作用概述代码详解 + 注释使用 QTextEdit 的高亮技术(重点)总结用到的关键技术点应用场景举例示例优化建议

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.