您好,欢迎访问数据库运维|优化|安装|迁移|服务官网!
13261661949
分布式数据库迁移方法研究-数据库安装迁移-数据库运维|优化|安装|迁移|服务_uDBok.com
联系我们

分布式数据库迁移方法研究-数据库安装迁移-数据库运维|优化|安装|迁移|服务_uDBok.com

地址:北京市昌平区高新经济开发区
手机:13261661949

咨询热线13261661949

分布式数据库迁移方法研究

发布时间:2021-02-19 00:13:56人气:2040
  • [list:title]

跟着数据库技术与高速网络通信、云核算、人工智能等信息技术的不断深化融合,数据库和运用系统的存在形式益发丰盛,数据库技术生态数据库迁移上云、开源和分布式的趋势。数据库之间的相互搬迁已成为常态化,从同构到异构数据库之间的搬迁,从数据到数据及运用系统的搬迁,从本地间到上云搬迁,搬迁的体现方法不一而足。
近年来,运用对底层数据的要求越来越多样化和凌乱化,随同企业日益增长的数据处理剖析和丰盛的运用场景需求,不论是企业数字化转型,仍是IT系统上云搬迁,亦或是数据库产品改动,都或许触及从原有数据库向分布式数据库的搬迁。现在,针对此范畴指导性流程指南的展开仍在起步阶段。
2 分布式数据库搬迁的难点、痛点和典型问题
2.1 分布式数据库搬迁的难点
分布式数据库搬迁的意图是确保原有业务逻辑不变,仅改动支撑系统工作的数据库,因此原有数据无损,原有业务不变,原有的用户领会进步是数据库搬迁的最基本准则。从技术层看,数据库搬迁的实质即两个数据库系统间的比较与转化,一般情况下,运用系统越简单,运用数据库特性越少,搬迁越容易;反之,则困难得多。分布式数据库搬迁是个凌乱的系统工程,搬迁成功与否除了需求技术确保外还依靠各环节的有序组织,即多应方用的系积统极使配用合方、运用开发检验团队和数据库厂商等多方的积极合作。现在,工作缺少指导性工程方法和配套东西,一同存在搬迁本钱居高不下、搬迁风险较高级问题。
分布式数据库搬迁需求完备的规划方案和稳重的实施操作,搬迁的前中后期稍有不慎,就会导致搬迁失利,丢掉名贵数据,甚至造成系统紊乱、业务间断等灾难性结果。针对整个搬迁作业中不同阶段的实践情况,下面列举了一些应当特别注意的痛点。
2.2 分布式数据库搬迁的痛点
按照搬迁各阶段的场景,搬迁的痛点可以分为以下8类。
(1)源数据库与运用调研的痛点,如源数据库运用的特定开发接口在政策数据库是否兼容、运用系统架构和数据库系统之间的联络收拾是否困难、原运用是否绑定了某些特性。
(2)兼容性点评和风险点评的痛点,如源数据库到政策数据库搬迁有多少不兼容的语法、政策等;数据库政策兼容性问题的供认存在不同数据库之间库、表改造难度的断定;政策数据库的可用性、功用是否可以满足原运用的需求;怎么科学点评搬迁的本钱及作业量。
(3)可行性验证的痛点,如中心业务系统搬迁,怎样拟定不停机或尽或许少停机的搬迁方案;数据库、运用改造作业量巨大,怎样通过东西或产品完毕半自动化或自动化改造。
(4)全面业务改造的痛点,如运用改造和政策数据库改造的分工或许不明晰;由于考虑不周,全面业务改造或许存在遗失,只完毕部分业务改造。
(5)搬迁实行的痛点,如搬迁的时间窗口能否满足;数据量较大怎么完毕快速、精确搬迁;需求搬迁的系统较多时,能否借助自动化东西完毕搬迁。
(6)业务验证的痛点,如业务验证是否可以掩盖全面功用;业务接连性是否可以满足需求。
(7)上线割接的痛点,是否可以在时间窗口内顺利完毕搬迁割接;能否确保数据回流一段时间,以防止割接后运用失常需求回退。
(8)护航确保的痛点,搬迁完毕后假设存在多种数据库架构,是否能完毕数据库同步;数据库功用监控及确保怎么快速照应。
2.3 分布式数据库搬迁的典型问题
第一,数据库产品的不同导致实行相同业务所需资源或许存在差异,源、政策数据库支撑相同业务的资源本钱需求尽或许精准的点评,不然政策数据库或许无法承载源数据库的负载业务;第二,数据库种存在较多显、隐式转化时,不同数据库或许存在不同类型的转化规则;第三,不同数据库时间日期类型的格式或许存在差异,对于时间格式要求比较灵敏的业务,需求对时间格式进行充分检验;第四,数据库之间的数据类型默许长度或许存在差异,同名函数或许存在功用不同的现象;第五,运用开发框架运用的数据库方言包或许存在差异。搬迁进程中需求运用与政策数据库适配的方言包,运用不适配的方言包或许导致运用无法工作。此刻可通过嵌入业务模块代码的方法,绕过方言包。
3 分布式数据库搬迁要害流程
分布式数据库搬迁的工程按照发展可以划分为前期规划、中期实施和后期运维3个阶段,具体可以分为源数据库及运用系统调研、兼容性和风险点评、可行性验证、全面业务改造、全面业务检验、割接演练、搬迁实行、业务验证、正式割接和护航确保10个要害环节(见图1)。
 
图1 分布式数据库搬迁要害环节流程图
3.1 源数据库及运用系统调研
源数据库及运用系统调研有助于后续深化点评改造点和作业量,有利于定位系统搬迁进程中的难点和风险,其调研内容可以分为源数据库、运用系统、数据库和运用系统3个方面。
(1)源数据库调研:需求考虑数据库结构、数据类型、数据库功用、数据运用场景4部分根底数据。数据库结构和数据类型是静态数据,可以通过语法、语义比对完毕调研;数据库功用和数据运用场景是动态数据,与其对应的业务特色、数据库硬件资源、数据库自有才干、数据特色和运用系统特色直接相关。
(2)运用系统调研:首要是发现运用和数据库之间的调用联络和调用方法,厘清运用各个模块与数据库调用SQL的兼容特色,明晰运用在各个模块转化的改造点。通过调用SQL概况完毕改造点定位,即交互SQL点定位。
(3)数据库与运用系统调研:数据库与运用系统的相关联络一般包含但不限于数据拷贝链路、API结构调用、DBlink链路等内容,其架构联络的收拾是搬迁流程的重中之重,需求投入许多人力物力。掌握源数据库和运用的结构、架构、功用、联络拓扑,有助于后续决策。
3.2 兼容性和风险点评
调研完毕后,进入兼容性和风险点评环节。兼容性点评作业宜从结构语法剖析、结构语义剖析、上下文环境兼容剖析几方面进行;风险点评作业首要包含政策库功用风险、数据共同性风险、运用改造风险、时间窗口风险和上线误操作风险五大方面。
3.3 可行性验证
充分调研和点评后,搬迁工程进入到可行性验证环节,即POC检验。其流程可划分为4个阶段:其一,选取业务中典型的生意模块,拟定POC检验内容;其二,预备、部署POC检验环境;其三,根据POC预设,完毕检验需求;其四,POC检验总结。针对分布式数据库的特性,在可行性验证进程中需求点重视几个方面:其一,失常场景下业务是否共同;其二,失常场景下副本是否共同;其三,失常场景下大批量已提交业务回滚是否对系统有影响;其四,锁抵触较多的场景下是否对系统有影响;其五,副本数据的时延是否满足系统要求。验证完毕后,需出具可行性验证报告,说明运用系统搬迁至分布式数据库是否可行,以及相重视意事项,为后续搬迁作业打好根底。
3.4 全面业务改造
改造作业繁琐,需求对业务逻辑、运用程序、源和政策数据库相关语法规则进行深化了解,为确保改造有用进行,宜遵照3个准则:其一,业务改造进程中需求稳重地规划以及选取良好的方法,结合数据库产品本身技术特色,进行一系列数据库及运用程序的调整;其二,业务改造宜遵照从微观到微观、从整体到局部、自顶向下的方法;其三,宜遵照先完毕再调优的准则,功用调优需根据实践软硬件环境和业务场景,一次或者多次调整。
业务改造可以从几个方面顺次进行:首先是数据类型,政策数据类型规模和精度应不小于源数据类型,以确保业务数据不会丢掉,且政策数据类型规模和精度应防止超大于源数据类型,防止带来功用下降。其次是函数,改造场景或许会遇到函数同名,但在源数据库和政策数据库功用不同或不完全相同;函数同名,但参数隐式转化规则不同;函数同名,但参数个数或者参数类型不同;函数不同名,但功用相同;无对应函数,需通过其他方法完毕。终究是语法规则,除了应当遵照ANSI或ISO的SQL标准语法,数据库方言的运用难以防止,因此需求将源数据库本身支撑的语法规则调整为政策数据库的语法规则。
3.5 全面业务检验
检验环节是搬迁要害环节的重中之重,需求投入许多的时间和资源,稍有不慎,或许会导致后续的搬迁失利、数据丢掉甚至是业务间断、紊乱的灾难性结果。全面业务检验一般包含功用检验、功用检验、安稳性检验、可靠性检验、扩展才干检验、安全才干检验、回退方案验证等。检验环节的典型检验类型及检验项如表1~表4所示。
 
3.6 割接演练
割接演练是针对正式搬迁前,模拟实在上线环境下,对系统进行的压力检验和破坏性检验,首要分为割接方案拟定、压力检验和破坏性检验、检验总结、新旧系统同步互备和切换演练5部分。割接方案中应包含系统备份方案、应急预案、回退方案,明晰割接的操作进程、操作时间和操作人员,对新系统实施压力检验和破坏性检验,模拟在最极点环境下新系统功用的完好性、安稳性和高可靠性。正式割接前的备份作业必不可少,在新环境上线前必须做好旧程序包的保存和数据同步,以便在紧急情况可以快速回退。切换演练需拟定切换检查清单,演练期间紧密监控容灾数据库的系统负载、失常等待事情等内容。
3.7 搬迁实行
搬迁实行宜按照最少改动的数据库结构和运用系统SQL代码;完好、精确的数据政策及数据搬迁;最短的业务间断的准则进行,其包含的流程如图2所示。
图2 搬迁实行环节流程图
搬迁环境检测包含主机环境检测、网络环境检测和数据库环境检测。结构搬迁是指将源数据库的建表句子搬迁到政策端不同数据库中,搬迁完毕确保源、政策数据库中的建表句子功用、功用等价运用。数据搬迁分为全量数据搬迁和增量数据搬迁。搬迁完毕环境供认需求重建序列、启用触发器和收集实行方案等。构建数据回流是为确保业务搬迁后政策数据库切换为出产库出现毛病无法持续对外供应业务时,确保政策端现已改动的数据可以搬迁回流到本来的出产库,并确保业务不间断。
3.8 业务验证
业务验证分为搬迁数据验证和业务功用验证。从源数据库导入到政策数据库中的前史数据文件可以按主键次第进行组织,以文本文件的方法卸载搬迁数据,并确保导出数据可以按照主键有序输出。对导入文件和导出文件分别进行比较操作,通过比对效果是否共同,完毕搬迁数据的共同性验证。业务功用验证分为工作进程比对、工作效果比对和静态数据比对。
(1)工作进程比对:通过在原和新运用系统前端增加网络镜像分流设备,将发往原运用系统的网络数据镜像分流到新运用系统中,运用掩盖实践生意场景的许多出产数据进行接连检验。在工作进程中,解析政策、源数据库中的日志文件,根据流水号、主键、时间等唯一性标识,比对日志文件中新旧值的改动,找出失常进程,到达验证政策系统数据正确性与共同性意图。
(2)工作效果比对:在原运用系统和新运用系统前端增加网络镜像分流设备,将发往原运用系统的网络数据镜像分流到新运用系统中,将政策、源数据库回来的效果信息保存到文件或数据库中,根据流水号、主键、时间等唯一性标识,比对政策、源数据库的生意效果。
(3)静态数据比对:根据源数据库的每日备份时间,在政策数据库做相一同刻的备份操作,备份完毕后,将两份备份文件导入到比对库中,按表逐条比对两份数据共同性以及每张表的数据总量,验证政策系统数据的正确性与共同性。
3.9 正式割接
割接前一般需求至少3次割接演练,以确保割接进程中各个环节没有遗漏,并根据不同业务系统情况拟定割接流程,分配每个流程责任人,通关制完毕各个环节。正式割接环节分为出产环境预备和按照割接方案正式实行割接两部分。
3.10 护航确保
搬迁完毕后,最风险的环节是切换后出产环境的第一个业务高峰,需求装备专业的数据库专家,快速照应运用和数据库出现的突发问题。之后,需求定期跟踪必定时间,以确保业务系统的安稳工作。终究的护航时间,需求根据实践情况确定。假设遇到突发情况,在无法处理的情况下,应根据回退方案和演练细则逐渐完毕回退。
4 分布式数据库搬迁服务与东西的才干主张
4.1 搬迁服务才干主张
搬迁服务才干可以针对服务供应方的搬迁场景、 流程、东西、人员4个方面进行点评。搬迁场景方面,可以从能否供应离线搬迁、在线搬迁、同构搬迁、异构搬迁、数据搬迁和运用搬迁进行点评;搬迁流程方面,可以从服务供应方的搬迁系统是否构建,如可供应合理的数据库选型方案、搬迁方案、回流方案,是否可以结合实践搬迁环境不断优化完善搬迁方案和进程,是否可供应有用的搬迁实施处理方法和方法来进行点评;搬迁东西方面,可以从服务供应方是否具有自主知 识产权的搬迁东西、能否熟练运用第三方数据库搬迁东西、能否集成不同搬迁东西和供应统一搬迁处理渠道等视点进行点评。
4.2 搬迁东西才干主张
搬迁东西可以从在线搬迁、旁路搬迁、增量搬迁、转化搬迁、搬迁比对、搬迁回流、政策搬迁、异构搬迁的根底才干,以及一体化搬迁、高功用搬迁、特别场景搬迁和系统画像的高级才干两方面来进行点评。
5 完毕语
数据库搬迁是一项凌乱的系统工程,触及多方多部门人员的深度合作协作,一同需求搬迁需求方的稳重考量和较大的改造决计。数据库搬迁不是一蹴而就的,需求精准规划点评、稳步实施检验和专业运维确保。世界上没有任何两款数据库产品完全相同,政策数据库无法兼容适配的作业,需求由运用程序必定程度的改造完毕。
本文从分布式数据库搬迁的难点、痛点和常见问题出发,收拾了搬迁工程各个要害环节的流程和检验方法,终究从搬迁服务才干和搬迁东西才干两方面临搬迁服务供应方提出了相应要求,旨在使数据库搬迁工作标准化、标准化和专业化,进而推动数据库服务工作高质量展开。
 

推荐资讯

13261661949