过去,我国IT底层标准、架构、生态等多由外国公司制定,因此存在着诸多风险。自2018年以来,以美国为首的西方国家对我国实施了全方位的遏制、围堵和打压,对我国信息安全构成重大挑战。随着中美摩擦的不断加剧,在关键核心领域的缺失技术可控,使我国在信息技术上落于下风。
为了保护我国信息安全,建立自主可控的信息网络,国家从2019年提出发展信创产业,随后出台了一系列支持政策,特别是“十四五规划”重点关注信创产业的国产化程度,实现自主研发和自主可控,构建打破以美国为首封锁的自主创新技术体系。而数据库作为三大基础软件之一,是完整信创生态中最核心环节。国产数据库是助力企业实现数字化转型的关键,也是在关键核心任务中实现对国外商用数据库形成替代的关键。
GaussDB是华为自主创新研发的分布式关系型数据库,能为企业提供功能全面、稳定可靠、扩展性强、性能优越的企业级数据库服务。对比国外主流商业数据库,具有以下七个方面的优势:
自主可控
全部核心代码的100%自主研发,国内唯一获得最高安全认证(源码级)
高安全性
支持访问控制、加密认证、审计、动态数据脱敏等安全功能,提供全方位数据安全保护
高可用性
支持跨机房、同城、异地、多活高可用,支持分布式强一致,数据0丢失(RPO=0)
高性能
国内首个自研In-place Update存储引擎Ustore,实现了全天候稳定高性能低时延输出
高弹性
原生分布式架构,云化弹性伸缩、秒级在线扩容1000+分布式大规模集群
高智能
国内首个AI-Native数据库,为应用开发和运维阶段提供了智能化的支持
易迁移
高度兼容Oracle/MySQL,可通过华为云自有工具DRS+UGO一站式去O迁移
二、迁移方案概览
在数据库选型环节中,异构迁移一直是客户最为关心的话题之一,我们结合客户在迁移方面的主要关注内容,具体可以分为:语法转换、数据迁移、业务稳定三大关注点。结合客户最关注的这三个问题出发,一起了解下华为云GaussDB迁移上云的整体解决方案。
三、应用迁移
每种数据库都有自己的语言,比如Oracle语言在GaussDB上不一定能够正常运行。这就需要进行数据库的语法转换。通常来说,语法转换是异构数据库迁移的最大技术障碍。华为云官方提供了一套语法迁移工具:数据库和应用迁移 UGO(Database and Application Migration UGO,简称UGO),是专注于异构数据库结构迁移的专业云服务,通过这个工具可以进行Oracle到Gaussdb的语法迁移,具体可分为以下两个阶段:
Oracle的语法对应一个个巨大的树形结构,并由一些关键元素构成,比如一条Oracle建表语句,表名是什么,有几列,每列的名字是什么等等。UGO具有专属的语法分析器,能够顺着语法树和枚举探测出每条Oracle的语句元素构成,这样最终分析了Oracle对象的语义,读懂了Oracle的语言。
顾名思义,就是将Oracle的表定义和对象定义等信息转换成GaussDB的写法,依靠华为云丰富的数据库运维和迁移项目经验,尤其是面对Oracle业务环境的训练,截止到现在,华为云UGO已经被注入了几千万行级的代码训练量,这个是业界公布的最高记录,保障了语法转换的可靠性。
华为UGO依托华为众多数据库迁移项目的经验沉淀,在接入Oracle后,通常在很快时间内,都可以生成一份详细的评估报告,让迁移至GaussDB的可行性一目了然。在工行迁移攻坚战的最高挑战场景,千万级的存储过程迁移中,经过UGO的处理,Oracle 95%代码转化后可以在GaussDB直接运行,去O已经非常接近自动化。
四、数据在线迁移
DRS采用行级并行方式抽取数据,抽取性能最大可达100+MB/s,同时客户可以在源端资源允许情况下设置迁移速度,做到按照想要的速度迁移,想快就快,想慢就慢。
增量迁移是通过数据库日志来实现的,数据库日志,也是数据库停电不丢数据的关键技术,DRS采用技术手段可以将日志记录的事情重演一遍,这个过程就好像将Oracle数据变化录制下来,将同样的操作再在GaussDB上操作一遍,这个技术业界一般称为CDC技术(Change Data Capture)。不仅如此,DRS还采用了技术手段将一条条数据的操作优化为并行运行,让两边数据既能确保不丢失,又能大大提升同步速度,通常Oracle数据库新产生的数据在1s内就可以在GaussDB看到,即使是一个非常庞大繁忙的Oracle系统(比如一天日志量达到TB级别)也能做到秒级同步。
DRS内置了一套专利算法,可以指定每隔数分钟识别增量日志中变化的数据行,并根据数据行的主键值,查询和对比源库和目标库的数据,从而阶段性验证Oracle和GaussDB的数据一致性,如此循环操作,持续刷新一致性比对结果,得到最终一致性结论。而不用停止Oracle数据库的业务接入,进行长时间的数据校对。
结合以上三个步骤,华为云DRS使用CDC技术实现在线迁移,做到Oracle在运行过程中将数据迁移至GaussDB,数据可对比零丢失,业务可自由选择割接时间,并且搬迁过程中业务无感。总结下来就是,业务无感->安心,数据不丢失->放心,自动化数据同步->省心。
讲述了应用迁移和数据在线迁移后,那么,迁移至GaussDB后能否平稳度过业务峰值的考验?技术上有了上面UGO和DRS的基础,我们能够在Oracle数据库上自动采集数据了。业务上的一个个请求是从应用程序发送至Oracle数据库的,里面有查询请求,也有数据修改请求,这些请求的总和就是业务流量,业务高峰期采集到业务流量后通过UGO进行语法转化,结合通过DRS构建的真实生产环境数据,这样可以形成了基于GaussDB数据库的业务仿真压测环境。
通过仿真压测,客户可以直接预测GaussDB能否稳定度过业务洪峰,并提前识别是否需要做规格的调整,对于业务本身,也支持细粒度切换的迁移,DRS可以让数据进行双向传输,可并线逐步切流,观察GaussDB的业务承载能力,具备随时可回退能力。
最后,我们再总结一下华为云GaussDB的全套迁移方案, 数据库和应用迁移服务UGO解决语言不通语法转化的问题,数据复制服务DRS解决业务不停机数据迁移的问题,同时DRS工具还提供仿真压测、数据一致性对比等配套能力。通过这几项核心能力,华为云为客户提供了一套数据库上云的安心、放心、省心迁移解决方案。
如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!
加入交流群
请使用微信扫一扫!