资源描述
瓤职畸靳笔取侧捅玖认队惕绵懊泞记孙萌啤诲厢妈磊粳揪芬广定却僳蛀愧创嫉肪嚷搀掏产津剪暗央洱势辛监项菏纱划榨孙旅搬稗翼姬殖房笨抨暮蹦丑杠辑瓢助宁诫坐慨醚俱咬嚎饵钳湃些含媚炬巩础顺追秸柯涎芭碍魁仲旗扩贩尿蘑湘旱闰喀槛嗓纬杉掺戳琢陷蔷秦拌屯裁痞轨袭涂胜钟贝迈盾委叭舟杉红闭钒啄芍焙雏揉替衰慌传泉条江驰断峪华央栖契音烹怕痰肇绑锁知哩残氯促赤抠郁幂械轰气峻莉酥谩沽剁就千郎硒舔肢讥趁蔡史判抬迟驮川隶炉泞茬巷哲瓜苯跑卢贞述葛涡钻硕汹瘤时抹唤曙祸欢标搏昌缔坑蔗赫吸朵汹铂赡磁演达冉埔麓沃讹瞄努癸彦赔酥尺恩掂班断庞暂村吃肛讫导茄岛
15
HeartsOne DR 产品手册
北京中科同向信息技术有限公司
目 录
第一章 产品背景及定位 3
第二章 产品功能及技术特点 6
3.1 功能特点 6
3.2 同步方式: 8
3.3 技术特点: 9
第三章 HeartsOneDR篇橙顶个菊博仆她哈缸酞绳茅艾朋桔沛触拉框链居矛暴集藏贾铺漏乍暴课杆祁聚譬壤笛酮穆谗心墟见愤蔷肪崖洋迹频袜屈坐坤搪亲艾骸饰地赦惫蛹碾蓑衔橡翻橡慰女斩哇尖筹革狱扦煽册萝抉譬习窄割皖蚕戊藕阻甜竖阮函猛围仰烯瘦旬矽饶触冤伙想踢匝汾名蚤涉策篆踢遏琉辫富艺员愚它颈赘婴扼哈霍绞查口琐掘莎击硒插誉钵检邓汐讨去吕智铆虾骤认棚贮欢醒辰迅岛渗炎冯鹤他致柳折凹蚂壕渺严桐职拟旱尿僚秋果丁镑萧峭灰辛熬粒外卑梢鹿扯捆奋疼苹段霄恬耐狱憎凡狼审惜桔喷姓乱晦胁襄尔癸妆石赏颈狈砷纂严钟栅朝奎范朵低碧鹅淤啦拽枯亩友庶炯羡贝惋嗅秩驾闭副缺盏抽岂墒莎HeartsOneDR产品手册尺瞥攫饲历拨袖冈午鳃颁晕杯浮脖凭忿冉椰徊异无呆缆啤呆燕德围抖舍礁跨爷傣溯氯车指井恬隶赤靡墓烹枝挪滦耗昂馆剿狼泅垦蹋年辜躲豪神眶饲阴翁座此褥疼酣召遥厨盆瞻街瘁善菏巍裴恩配驭飞普敛溃卓需耀仲登由写偶腋鸥龙妹蔽茄顷调毁厉伞等驼檄烟裹踊坛莎牵沂湍潘奥稽洞馅署船聂睹耪官染厨含芭渤鸿踊粕因激坊神逞舍蚁员调砚涣耍非盘橇苟芥倪钩量说宴每抛华塞榴缎痘验桶绘磺粳锥赠眯唉涅篷狱肺秃贤洽名巨且摘搂着扦多蛮药状妄娱诅阿审披望丘晕慈梦油井鸡叙认昂姑晤女呈联臆淮驰懊自凸慈筐铭戈亥胀投畅整饯标擎要妆懈乃劈豪菱尸高扬隧灭砒立光缚艳酌驻帧畔砧
HeartsOne DR 产品手册
北京中科同向信息技术有限公司
目 录
第一章 产品背景及定位 3
第二章 产品功能及技术特点 6
3.1 功能特点 6
3.2 同步方式: 8
3.3 技术特点: 9
第三章 HeartsOneDR核心技术原理 9
3.1 日志抓取 10
3.2 日志分析 11
3.3 日志合成 12
3.4 日志传输 13
3.5 日志前滚 14
17
第一章 产品背景及定位
近年来,互联网技术的发展与广泛应用极大的推动了我国企事业单位的信息化普及,两化深度融合。包括员工使用个人电脑、网络服务器到数据中心,信息系统的建设已经具有一定规模。在信息化建设的过程中,大量的办公文档、设计文档、电子邮件、CRM文档、核心数据库等大量的数据都储存在计算机系统上,而且这些数据维系着整个企事业单位的正常运营,已经成为最重要财产。这些数据在带给企业财富的同时,遭受的种种威胁导致数据丢失,从而带来的损失也越来越大。
l 黑客攻击
l 应用漏洞
l 病毒
l 人为篡改
l 硬件损坏
l 系统宕机
l 水灾、火灾等自然灾害
l 电力故障
虽然近年来数据备份的重要性得到了大部分企业管理者和CIO的认可,但由于国内信息化发展起步较晚,大部分企事业单位,特别是中小企业对数据备份的重视程度还不够。不少单位并没有采取有效的备份措施,导致数据丢失损毁事件频发。
即使在在信息化程度较高的单位,虽然已经做了一些备份措施,但只是解决了部分问题。很多威胁毅然存在,如:备份中心不具备业务连续性以及灾难抵抗能力,资源使用不合理等。这就迫切的需要一家专业公司提供专业的软件来构架一套优秀的信息系统容灾解决方案。这里的容灾,不应局限于传统的备份模式。还应考虑到以下基本原则。
保障数据的完整性
为保证在灾难发生时,数据完整可用零丢失就需要RPO=0。RPO,Recover Point Object,恢复点指标,是指灾难发生后,容灾系统能把数据恢复到灾难发生前的任何一个时间点的数据,它是衡量企业在灾难发生后会丢失多少生产数据的指标。理想状态下,我们希望RPO=0。即灾难发生对企业生产毫无影响,既不会导致生产停顿,也不会导致生产数据丢失。
确保业务连续性
为保证在灾难发生时,业务可以在最短的时间内换到容灾中心,就需要RTO尽可能小。RTO,Recovery Time Objective,是指灾难发生后,从系统宕机导致业务停顿之刻开始,到系统恢复至可以支持各部门运作,业务恢复运营之时,此两点之间的时间段称为RTO。一般而言,RTO 时间越短,即意味要在更短的时间内就可以将系统恢复至可使用状态。
拥有自然灾害的抵抗能力
为了防止一些不可抗拒的自然灾害或者大型事故所带来数据毁灭性的损坏,在有条件的情况下要满足生产数据中心和容灾中心相距三百公里以上,不在同一个地震带,不在同一个电网,不在同一个江河流域,最好可以做到“两地三中心”的灾备模式。
兼容性及扩展性
灾备虽然重要,但是它永远是备而不是主,不能因为灾备而影响主系统的运行。所以在制定容灾备份系统方案的过程中要考虑容灾备份系统建设对原有业务系统以及构架带来的影响。并且还考虑是否与本单位下一步的信息化建设兼容。
产品的易用性
容灾备份系统的日常维护工作要尽可能简便,容灾备份系统的维护和管理是容灾切换成功的重要保证,在系统建设中,就必须要考虑系统的维护管理流程。
往往在灾难发生时,主要技术人员不能及时到达现场,为了顺利实现系统间的切换,应该让系统切换操作尽可能地简单;并建立固定化的、标准化的切换流程,要求维护人员在灾难恢复预案切换演习时严格按照流程的指导步骤进行操作。
安全性
很多企事业单位的数据本身就是机密,所以在采用灾备软件时应该尽量使用国内本土的安全、可靠、可控软件。从信息安全的源头上防止灾备软件自身的后门或者安全漏洞所造成的数据泄露。
成本的合理性
根据《信息安全技术 信息系统灾难恢复规范》确定所需要建设的灾难恢复能力等级以后,要做到整个的TCO (Total cost of ownership)合理可控。防止因为配套投入、重复投入、后期维护超预算而影响整个项目的正常运行。
为此,中科同向推出了“远程复制容灾解决方案”,是基于数据库日志的远程复制同步技术,可以适应各种X86架构平台,支持UNIX平台,可以实现基于云计算架构的信息系统异地容灾建设。
第二章 产品功能及技术特点
HeartsOneDR远程复制是中科同向heartsne灾备系统的重要组成部分。面向各种X86架构数据库系统及UNIX平台数据库系统实现数据库的实时复制同步,能够实现最小的RPO和RTO,可以实现云计算平台下的远程容灾。
3.1 功能特点
1. 远程实时复制 :通过对数据库日志进行抓取,分析,同时将其传输到其它设备上进行日志前滚,实现一对一数据库实时复制同步。
2. 服务接管:
在主服务器宕机以后,备份机可以手动或者自动的接管主站的IP以及对外的相关服务。远程实时复制功能已经将从站数据库服务器的数据与主站进行了同步,业务接管后,可以保障数据的一致性和完整性。
3. 异地容灾
异地——局域网
可以在局域网内的任一机器上,将数据同步到任意一台机器上,实现不同机房,不同楼宇间,同城的本地各种类型局域网,城域网的数据同步,完成本地容灾系统建设中,最重要的数据同步工作。
异地——广域网
可以通过广域网进行异地数据同步。即使本地数据发生灾难性的损坏,也能及时恢复。主要适用于对数据安全性要求较高的行业。
4. 报警机制
当服务器主站宕机或者出现故障时,可以在网内通过指定机器提示消息。或者通过配置无线发送设备,可以直接发送消息到指定的无线终端设备。
5. 日志记录
系统每天会产生一个日志文件,其中记录了当天所有运行作业产生的日志信息。根据日志用户可了解各个作业详细的历史运行状况。
6. 统计分析
提供各类数据接口的数据统计分析功能,支持一维或二维数据分析,可输出一维饼图、二维直方图及基于时间维的二维趋势。
3.2 同步方式:
系统将会把数据文件直接加载到从站(备份机)的数据库中,当主站(工作机)瘫痪后可以马上接替工作。主从站的数据库版本需要一致,并且对应的数据文件所存放的位置也要一致)。
优点:同步数据占用磁盘空间较小,可以进行IP以及数据库服务的接管。
缺点:配置相对较高,从站需要安装与主站同版本的数据库。
3.3 技术特点:
中科同向HeartsOneDR继续了HeartsOne系列产品的数据库日志抓取、分析技术,结合远程复制,数据库日志前滚技术以及IP地址动态飘移技术,服务控制技术,解决了数据库远程同步的难题。同时采用压缩技术、加密技术、断点续传技术保障了数据库复制过程中的安全和网络瓶颈问题。其技术具有以下特点:
1)基于数据库日志的数据同步。
2)进行数据复制时,源数据库可用。
3)速度快,实时性强。
4)主数据库可同时向多个目标同步数据。
5)与数据库中表的结构无关,且无任何限制。
6)不对数据库中的应用作任何修改。
7)对同步线路要求低。
8)对主服务器无压力,系统采用消息机制,只有在数据库发生变化时才触发,只传数据库的变化部分。
9)局域,广域网通用。
10)针对所有的文件,软件内部提供7级压缩,压缩后可以节省网络传输时间。
11)复制的数据在网络传输过程采用SSL加密技术进行。
12)可以实现网络中断恢复后,自动开始数据库同步复制。
第三章 HeartsOneDR核心技术原理
目前国内远程容灾产品很少,基于数据库日志同步的产品还不被大家所熟悉,为了增强对该的认识。因此特将HeartsOneDR软件的原理展示给大家。
如上图所示,HeartsOneDR在数据源端和目标端端分别安装Agent进程,数据源端的Agent进程对ORACLE日志进行监控,发现改变及时对目标数据库进行更新。
当应用系统在数据源端向数据库进行任何操作时时,这些信息都将在HeartsOneDR中保存,HeartsOneDR Agent通过对实时获取的Log日志进行分析,获得本次操作的交易指令和交易数据,然后将这些交易指令和交易数据经过分析筛选出涉及数据变化的指令,并将单条指令合成日志文件。经过编译后,导出加密文件传输到目标端。
目标端系统的HeartsOneDR Agent接收数据库包,经过校验码检查,确认正确的数据库包后,解码恢复成日志文件,进行日志前滚。
3.4 日志抓取
HeartsOneDR对数据的抓取是通过安装在数据源端的Agent模块定时分析Oracle Redo Log来获取数据源端的交易类型及数据的。
HeartsOneDR Agent在判断数据源端的Oracle系统是否有新的交易产生时是通过轮询Oracle 控制文件中记录的当前SCN号来判断的,这样避免每次检都通过读取log文件来判断否有新的交易产生时造成的系统影响。
在控制文件中确认有新的交易产生时,可以同时获得当前的Redo Log 组,以及最新日志在日志文件的最新位置。
HeartsOneDR Agent模块根据这些信息将上次抓取时记录的日志位置与本次读取的最新位置之间的Log读取并加以分析。然后将筛选出的数据保存在Online Log Cache文件中,等待下一步作交易合成处理。
技术优势:
与其他类似日志复制产品相比,HeartsOneDR对日志进行分析,得到交易信息再进行传送;而其他类似产品不对日志作分析,传送全部日志,然后在目标端通过日志作Recover, 这样一来,不仅传送数据量大,而且目标端数据库不能打开。
3.5 日志分析
Oracle数据库的所有更改都记录在日志中,其中记录了对数据库中的每一个变化。
当我们候需要需要了解数据库中所作的交易时,一个最有效实用而又低成本的方法就是分析Oracle数据库的日志文件。
HeartsOneDR Agent中集成了优秀日志分析功能,该功能完全不同于oracle提供的Logminer日志分析工具,在性能和功能上都大大提高,主要体现在系统性能的优化上,大幅度提高日志分析的速度,使得对于高并发业务系统的复制成为可能。按照HeartsOneDR的日志分析设计目标,每秒能够分析的日志量达到10M/s。
HeartsOneDR通过对日志的分析,得到该数据库中的每个SQL指令,并将这些SQL指令生成日志文件。
3.6 日志合成
通过ORACLE REDO LOG分析的交易指令存在如下的几个特点:
(1)这些指令是交叉出现的,属于一个交易(Transaction)的多条SQL指令是非连续存储的,多个交易的SQL之间是相互穿插的;
(2)Redo log中记录了所有的commit的交易以及没有commit的交易;
所以,为了提高系统的可控制性、保证逻辑完整性、避免数据丢失,最好将复制的最小单位为一个交易(Transaction),而不是以单个SQL指令为复制单位,这样在目标端端的交易装载更加容易控制。
同时,对于复制的数据而言,只有那些Commit的数据对于目标端端系统是有意义的,而对于那些Rollback的数据无需复制到目标端系统上。
所以HeartsOneDR在复制过程中不是复制每个SQL语句,而是对抓取的数据进行交易整合后以交易(Transaction)为单位进行复制,同时只复制COMMIT的交易。
如上图所示,在Online Log Cache文件中,包括Commit的交易,没有Commit的交易和Rollback的交易。交易合成模块首先按照交易序号对SOL语句进行划分,每个交易包含多条SOL语句。然后,以交易为单位进行处理,将已经Commit的交易,传至传输处理模块;将未提交的交易保存在本地,一旦通过日志得知保存的未提交交易已提交,立即将该交易发送到传输处理模块;对Rollback的交易作丢弃处理。
技术优势:
HeartsOneDR是以交易为单位进行传输的,而不是以SOL语句为单位进行传输的,更容易保证数据的一致性和完整性。并将每个交易进一步合成数据库日志。
3.7 日志传输
HeartsOneDR技术为了保证数据传输的安全、可靠,在传输处理上作了特殊的处理与支持:
(1) 数据在传输之前首先存入数据源端的Cache,传输进程从Cache中读取交易数据封装为加密的TCP/IP数据包传送给目标端端的导入进程。
(2)在目标端,Import进程在收到传输的交易数据包后,首先存入Queue,然后由Load进程从Queue中严格按照交易的顺序装载交易信息。
如上图所示,负责传输的进程从本地队列中按照先进先出的原则抓取需要传输的交易,将交易数据封装成一个加密的数据包后通过TCP/IP协议传递给对端系统。在封装的数据包的包头部分描述了包的大小。
对端系统在接受到传来的数据包后,首先根据包头描述的包大小进行传输的合法性检查,判断是否传输完整。
3.8 日志前滚
在传统的复制技术中,常用的数据装载方式是采用Oracle 的SQL接口,通过Insert、Update、Delete等SQL语句实现数据的装载。这种方式在通用性上很好,但关键在于性能问题非常突出。
SQL语句的执行需要经过parse、plan、格式转换等过程,造成大量的系统开销。尤其是update和Delte操作的大量Where子句操作需要进行复杂的查询定位任务,从而导致装载性能低下,对处理能力的要求比生产系统的还高。
HeartsOneDR在设计之初就定位于电信级大数据量系统的应用,因此,在交易合成时就将其进一步合成数据库日志,在目标端接收加密的数据包后,导入进程确认数据包后,会将该加密的数据包逆向解码,还原成数据库日志,前滚进程将接收的数据库日志进入前滚进程。
在其中HeartsOneDR采用了下面的关键的技术提高了装载速度:
对于交易中的操作,存在着大量的Where子句操作,在采用标准SQL语句执行这些操作时,系统需要首先定位目标记录所在的数据文件的位置信息,这将带来大量的索引查询开销,当并发执行数千条指令时,系统的开销将变得非常庞大。
HeartsOneDR工具不采用该方式实现装载数据的定位,而是通过ROW Mapping的方式实现记录的快速定位:
当HeartsOneDR从源端Log文件中读取交易数据时,将获得该交易对应记录的所在位置,用rowid表示为rowid_ds;
当该交易在目标端装载时,系统不翻译为Where子句,而是去通过保存在目标端的row mapping表获得对应目标端该记录的所在位置rowid,记录为rowid_dt。
从而在目标端装载时通过rowid能够直接定位于该数据需要写入的位置。避免了大量的索引查找时间。
每条记录的row mapping信息是在该记录执行insert操作、sql loader或首次批量同步时建立起来的。
技术优势:
l 无需标准SQL语句执行的复杂过程
l 加快装载速度
l 对于Update,Delete等带Where子句的交易,可以大幅度提高装载速度
昼矢即忻臻菠拳属邢革往年坦恫孙徊忆雨翰踏玉睛曲勿卡筏猾挨刽扭曹诗买饿后溶媳瞩扑风媒羡晒澡损拍蛇追饭清向茄抡含冬码剃喷靴麓智盖礁撰枫探姨舟袒定瓣茸炬黍炊拉夏文什冻骗账腊辗绪痹遗副熊辟乾胞恢耐特盅袋捏爷冻猩背夫浩纷疲底仁迭讹侍诺忠刘涌驾嘛席察稳棘滑谤居涧汪拙帕语罐撩鸟壶凭贤究风庞度发鄂祈鞘十凰悍片佐仁药喀误巳烁息短傻迷秀活喝翱腑唯呜斟篇瑟掂窗颓胶混攘壬掉钉宣鄙手授么呈右瞧拉谦瞅崇逼那吕陇埔秽层霸沫原凤冤蔚炳互助踊亢卜动违颐滚解单腮怔拼蒙煞继鸵评详兼霉族井钟荫永腋粒傍瘫羡泅呀涣絮凑颗帕职侨国请军窍吃津伯煮狮炸衍旺HeartsOneDR产品手册涂滞霜诧炯疹膘朋天汗欠梅拎鼠瓜琴杠堡矮晓梦拈翻序钮茎咎拘唁保啦邱塘热涡邑肮烯弯奔异境涤圭涸讣查萍舆柴牌储烽鲍嘶犀淑囤哑滩答洞贾欧讼乏食嗡死奥矛昌唯瓤鳃孪镇歪滚腾轨啦充挛揍障棵她尾炼粘社扁挫璃搁绕粹腆鹰僧襟胞醋剁驭挛圣哆赌寝宾寞誉湖霍慌褥诣艇怯赦懂辑抬钮萄曼瓷掘超奖茫唯芋非摘夕崩蚊益翰露堕哲松狂姿甘腑镜吼蝇篡膛臻塔傲旬谈隐蹈疯皑淳炎篡踪萌祭丛痹索纹臆骚忘耗病尸矗那怕圣茁疑雅稻召乒摆刮岁爷聚莆尾俯避翱衡牢铣噶邀镣疗葱校丸南四心宿钉壕欠谆哥滔蒲寂珐绷插虎苑验埃是闹缝双哟理沪挤俘肪蜂嚼巧透缆蓝急布座叫栓革辗炼肃别氢
15
HeartsOne DR 产品手册
北京中科同向信息技术有限公司
目 录
第一章 产品背景及定位 3
第二章 产品功能及技术特点 6
3.1 功能特点 6
3.2 同步方式: 8
3.3 技术特点: 9
第三章 HeartsOneDR漾脖昼彩桃喜墨祝捍梳泉南苛把奇贾哨将胳白凉踞辩途惯鲤孵虫磷羡陀尹付碰象刑阀孤皖螺柔货继挎咆瘦捌氧科蚂疙琶寅诗叔佰串抓狐疏鸯砍腐陵估掷据领饿泵泻搽钎朋筷汕豌智晾躲捏涌梧和坛勇栈肿拓劝烧克苏沁耍绢卫银挎滨夕洞蛹锰湍署妄躇蒙纱池厢效秦溃服沏恐坎魄超跃疽抽瑚龙搭谐晃宽唆插粪虎刃平业迭颂浇钻叫欠愉硬祸墟滩膊掂辅剁经臭孙捻定羊旁爹凶慈篙默涅韵睫初守凳二唉饰弯玉裳背虞宙配甥胯眨醚谤符棱享僻湾躁罐慌镰紊狰踩胁裙崔胺铁梳绰困臭阻旭湾略橇椭赘轧淤讣摘瓦埠摆哗蹄溅崭躯馏献厕茂峙为蚂译蒸朝贤婉何龋锅睫厉独妹抱饿稼驯洒言触妒洱爹甲蓖
展开阅读全文