设计网站公司开发,东莞长城开发科技有限公司,cms做网站容易不,沈阳网站开发公司电话二、迁移类测试策略1、概述随着业务需求或数据量增长到一定程度#xff0c;往往需要进行数据库切换#xff0c;这里就伴随这数据迁移。关键字#xff1a; 全量数据迁移#xff0c;增量数据迁移#xff0c;分库分表#xff0c;数据双写#xff0c;oracle、mysql、hbase……二、迁移类测试策略1、概述随着业务需求或数据量增长到一定程度往往需要进行数据库切换这里就伴随这数据迁移。关键字 全量数据迁移增量数据迁移分库分表数据双写oracle、mysql、hbase…新老数据兼容数据订正2、发布方案(迁移方案)两大类正常发布、停机发布正常发布可以实现线上业务无缝切换不影响用户使用需要保证新老数据兼容发布过程中的数据写入等。停机发布 : 优点在于可以避免发布过程中的新数据写入缺点是发布过程中不能正常提供服务。发布方案的制定是根据具体业务情况制定发布方案对业务无影响的情况下较常采用停机发布方便简单。介绍一种无缝对接的正常发布方案A库历史库 mysql分库分表 到 B库新库hbase步骤1、全量dump1A库数据全量迁移至B库步骤2、打开双写同时写入到A库历史库和B库新库步骤3、全量dump2开启双写前的所有差集将差集灌回B数据库这里是补充全量dump1期间和开启双写前只写入到A的数据。保证了A、B数据库数据的完全一致同时已经开启了双写。步骤3’、测试介入可对A、B库取某一时间段前所有数据进行数据验证。步骤4、停止对A库的写入发布前端应用切换至B库新库注意点1、双写时B库不存在被写源数据或B库数据状态异常等情况需要从业务上考虑是否直接从A库中获取数据并覆盖至B库2、以上步骤中的多次dump和双写有多个写入B库的场景需要以保证B库和A库一致为原则如B库的重复写入等情况的处理。3、测试策略在进行数据迁移测试前需确认的CheckListCheckList1、 哪些表需要迁、哪些表不需要迁需要迁移的表老库和新库的对应关系是怎样的2、 明确表的关联关系关联表是否需要迁移不迁移怎么处理3、 迁移的表中哪些字段要迁移哪些不迁移对应关系是怎样的4、 新表中的字段老表是不是一定有如果不一定怎么处理可能为空的情况尤其是必填字段的处理5、 迁移前新表是否为空不为空是否可能存在数据重复的情况怎么处理6、 新老表中的字段类型、长度的定义是否一致可否正确转换7、 需迁移的表数据量为多少8、 开发做了哪些数据迁移正确性的保障针对不同的业务场景需要测试人员设计不同的测试方案主要都是两个层面的验证数据层面的数据验证和功能层面的功能验证1、数据验证使用工具或设计对账程序全量验证a、全量数据验证b、增量数据验证c、抽样数据验证根据业务情况判断需要进行哪一项或几项数据验证工具使用可以选用目前较成熟的迁移工具愚公移山 兼全量数据验证和增量数据验证功能验证方式若迁移场景不在愚公的适用范围内全量验证和增量数据验证需要另外设计适用于该场景下的数据验证方案可采用的一些验证方式考虑根据不同数据的存储方式数据量的大小a、关系数据库直接新老数据库中jdbc方式获取数据一条条进行对比新老数据存在规则转换的情况需要在对账程序中同时进行规则判断。b、全量或抽样dump历史库和新库两份文件进行对比数据库非常大的时候推荐使用hadoop32/3123