HDS Truecopy实现原理及项目的选择-诸多案例
copy from:http://www.eygle.com/archives/2009/05/hds_truecopy_dataguard.html
诸多案例:http://wenku.baidu.com/view/d9815f07e87101f69e3195c0.html
这几天因为一个项目的需要,粗略研究了一下HDS Truecopy同步机制的实现。
TrueCopy是HDS基于硬件的同步解决方案,其实现与IBM公司的PPRC和EMC公司的SRDF类似,基于存储的同步复制没什么好说的,大家的实现都是几乎相同的,不过同步复制对于带宽、网络的要求都很高,在实践中的风险过高,所以采用有限,HDS的相应解决方案有三数据中心的中转解决机制,类似Oracle DataGuard的Cascade Redo传输机制,通过中转消除网络不稳定性可能带来的影响。
至于异步同步机制,如何保证数据的写顺序,如何保证数据库复制后能够被一致的打开成了一个问题。
下面一段文字说明了TrueCopy的实现原理,也就是通过时间戳和标志位来保证写顺序:
TrueCopy异步使用可靠的时间戳以及主系统生成的其他信息来使Freedom Storage能够把更新信息直接传送到次级系统(不需要主机的任何干预)。然后,次级系统在其缓冲区内缓冲、排队和按照时间戳对这些写内容排序,再以相同的序列将其写到相应的卷上。这些重写内容是由主系统通过记录内嵌的远程链路检查序列号发布的,以保证没有丢失任何记录,这样就保持了I/O的一致性。
下图是实现的原理图:
按照这个原理结构,如果存储级别能够很好的解决写序列的问题,复制环境的数据库是能够保证其一致性,顺利在灾难时完成打开恢复的。
在网上看到,湖南省公民身份认证查询系统(汇集湖南省6500万人口信息,并向社会提供身份认证、查询、挂失服务),是此系统的HDS 9200 True Copy数据同步方案为亚洲第一个成功的HDS 9200 TrueCopy数据同步方案,该项目是2002年左右实施的。
下图是该系统的架构图:
按照我们现在的审视,如果只着眼于数据库层面的同步,那么在短距离有光纤链路情况下,还是有多种低成本的方案可选的。
不知道有哪些朋友有用过TrueCopy同步的经验?
HDS Truecopy实现原理及项目的选择-诸多案例的更多相关文章
- pycharm新建项目时选择virtualenv的说明
虚拟环境及venv和virtualenv介绍:https://www.cnblogs.com/mind18/p/13877170.html pip介绍:https://www.cnblogs.com/ ...
- 阿基米德项目ALS矩阵分解算法应用案例
转自:https://github.com/ceys/jdml/wiki/ALS 阿基米德项目ALS矩阵分解算法应用案例 编写人:ceys/youyis 最后更新时间:2014.5.12 一.算法描述 ...
- 小账本APP——软件项目风险管理及解决办法案例
小账本APP——软件项目风险管理及解决办法案例 摘要 软件项目风险是指在软件开发过程中遇到的预算和进度等方面的问题以及这些问题对软件项目的影响.软件项目风险会影响项目计划的实现,如果项目风险变成现实, ...
- (转).Net有哪些大型项目、大型网站的案例?
[分享].Net有哪些大型项目.大型网站的案例? .Net开发的部分知名网站案例:http://www.godaddy.com 全球最大域名注册商http://www.ips.com 环迅支付 ...
- 038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结
038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结 本文知识点:案例演示switch结构并对sw ...
- 广告行业中那些趣事系列6:BERT线上化ALBERT优化原理及项目实践(附github)
摘要:BERT因为效果好和适用范围广两大优点,所以在NLP领域具有里程碑意义.实际项目中主要使用BERT来做文本分类任务,其实就是给文本打标签.因为原生态BERT预训练模型动辄几百兆甚至上千兆的大小, ...
- LCN解决分布式事务原理解析+项目实战(原创精华版)
写在前面: 原创不易,如果觉得不错推荐一下,谢谢! 由于工作需要,公司的微服务项目需解决分布式事务的问题,且由我进行分布式事务框架搭建和整合工作. 那么借此机会好好的将解决分布式事务的内容进行整理一下 ...
- Web自动化必会知识:「Web基础、元素定位、元素操作、Selenium运行原理、项目实战+框架」
1.web 基础-html.dom 对象.js 基本语法 Dom 对象里面涉及元素定位以及对元素的修改.因为对元素操作当中涉及的一些 js 操作,js 基本语法要会用.得要掌握前端的基本用法.为什么要 ...
- 对于大型公司项目平台选择j2ee的几层认识
我是一个从野路子上一路走来的程序员,现在主要用.net做方案.选.net不选jave并没有什么特别的原因,只不过是因为我自己从c,java学起,后来被vs这个工具所吸引, 很熟悉这个平台罢了,从业15 ...
随机推荐
- 为 JIRA 6.x 安装中文语言包
20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送) 国内私募机构九鼎控股打造,九鼎投资是在全国股 ...
- iOS 7.1 系统可以设置 button shapes,此功能可让按钮多一条下滑线
IniOS 7, Apple completely revamped the user interface to give it a fresh and modern look. One of the ...
- 【CentOS】centos7上查看服务开机启动列表
centos7上查看服务开机启动列表 命令: systemctl list-unit-files; 点击回车,可以向下翻页查询
- 【GitLab】gitlab上配置webhook后,点击测试报错:Requests to the local network are not allowed
gitlab上配置webhook后,点击测试报错: Requests to the local network are not allowed 操作如下: 报错: 错误原因: gitlab 10.6 ...
- SPClaimsUtility.AuthenticateFormsUser 方法的一个小问题
前言 最近,开启了Form认证,发现Form账号前面加空格,或者后面加空格都可以登录站点,但是提示未共享. 解决方法 后来bing了很多帖子,发现大家都遇到过类似的问题,问题是由于SPClaimsUt ...
- 让java从Mysql返回多个ResultSet
首先,JDBC对于SQLSERVER来说默认是支持返回,但对于MySql来说,只默认支持存储过程返回多个ResultSet,那对于手写SQL怎么办. 其实很简单,只要一个在连接字符串中加一个参数:al ...
- Java泛型之类型擦除
类型擦除 学过C++模板的,在使用Java泛型的时候,会感觉到有点不疑问,例如:(1)无法定义一个泛型数组.无法调用泛型参数对象中对应的方法(当然,通过extends关键字是可以做到,只是比较麻烦): ...
- java操作mongodb(连接池)(转)
原文链接: java操作mongodb(连接池) Mongo的实例其实就是一个数据库连接池,这个连接池里默认有10个链接.我们没有必要重新实现这个链接池,但是我们可以更改这个连接池的配置.因为Mong ...
- 【FTP资源】发现一个ArcGIS相关的FTP。
用谷歌 在搜索 ArcGISEngineRT的时候,发现了一个站点: ftp://ftp.geobc.gov.bc.ca/pub/outgoing/GeoBC_software_distributio ...
- SpringBoot学习:整合shiro(身份认证和权限认证),使用EhCache缓存
项目下载地址:http://download.csdn.NET/detail/aqsunkai/9805821 (一)在pom.xml中添加依赖: <properties> <shi ...