一个跨平台数据迁移的方案优化

简介:    如果有一套环境,业务优先级很高,服务器的服役时间比我工作时间都长,现在需要迁移到X86平台,而且经过评估,如果能够升级数据库的软件版本,可以使用到更多的特性和功能。

   如果有一套环境,业务优先级很高,服务器的服役时间比我工作时间都长,现在需要迁移到X86平台,而且经过评估,如果能够升级数据库的软件版本,可以使用到更多的特性和功能。这套环境的数据量大概是800G,停机维护时间在2个小时的样子,对于很多公司来说,尽可能缩短维护窗口时间,提前起服就意味着有更多的收入,所以2个小时如果能够再缩短一些的话,就太好了,这样一个需求该怎么办?

  这里我刻意可以弱化了数据库类型,其实这个需求具有一定的普适性,都可以参考借鉴。

   而另一方面,我暂且按照Oracle为例来说明,过于笼统,可操作性,实践性不强,实际意义会打折扣。

   这个需求是一个硬骨头,前前后后几代DBA也是前仆后继,总算到了非迁不可的地步了。而且因为环境的限制,有一些硬伤,比如主库承担不了太大的压力,网络条件不佳等。所以事儿真不好做,方案也不好来定。

    这里我建议大家先熟悉一下整个数据库的情况,数据的分布情况之后再结合一些可行方案来得到一个最合适的方案。

    在梳理了初步的方案之后,在这个基础上再细化了数据的分布情况,我想到了一种相对可控的方案。

   这个库磁盘空间占用有800G,但是不是800G的纯数据,还有相当一部分是索引的消耗,经过分析,这个环境90%的数据在属主用户上,而索引占据了近40%的空间,这样一来实际的数据空间也就在50%左右,最后的10%的数据是一些数据字典信息,补充辅助的一些数据信息。





所以这样一来我们可以把数据分为三类,然后给出相应的解决方案:

  1. 索引段数据,索引段的数据其实可以提前进行准备,能够大大减少迁移过程中的资源消耗,整个过程中不需要同步,自适应即可。

  2. 数据字典和其它信息,这部分数据都是数据字典,权限信息,少量的辅助数据等,经过评估这部分数据一次同步后,就不需要反复同步了。

  3. 数据段,这部分数据占用空间400G左右,这个是迁移的关键所在。这个数据显然是需要持续同步的。

这样一来800G的迁移我们可以先简化到400G的规格,听起来难度降低了一半。

     我们再来看看这400G数据的情况,大部分的数据都集中在了20个大表里面,占用的空间远超95%以上。而一些基础的表数据大概只占用了5%的比例。




   通过这些信息,我们可以设想400G的数据迁移,大部分数据在20个表里面,那这个事情可不可以这么做:

   20个大表的数据通过持续的同步来满足,而其他表的数据则不需要持续同步,在迁移的时候直接导出导入即可。

   而且更关键的是20个表里面,70%的数据集中在了3个表上,剩下的30%的信息集中在了17个表上。


   我们可以做成弹性的方案,比如使用Oracle的物化视图prebuilt属性,因为涉及的表很少,直接物化视图增量刷新即可。

   而3个大表的数据量实在太大,这部分信息就可以通过OGG来逻辑同步。

  有的同学可能会问都用物化视图增量刷新得了,这样一来3个大表的数据同步,数据库层面没有可以设定的阈值,控制措施,比如限定流量情况等。所以3个大表是不建议物化视图增量刷新来操作的。

   而那17个表相对来说数据量较大,几百MB其实还可以接受的,使用增量刷新就可以。

  或者有的同学说,干脆都使用OGG同步得了,这个在目前的考虑方案中也是可行的。无非就是基础的配置上需要提前准备调试。

   遮掩下来,整个的数据迁移其实绝大部分工作都可以提前安排好,到了迁移的时候,只是把5%的数据重新同步即可。




目录
相关文章
|
6天前
|
存储 缓存 JavaScript
性能优化:通用快照方案
本文我们将探讨快照技术如何增强页面性能和用户体验,如何在业务中集成快照方案,以及我们的通用快照解决方案的技术细节。
|
6天前
|
存储 监控 负载均衡
TiDB数据迁移工具TiCDC:高效同步的引擎
【2月更文挑战第28天】TiCDC是TiDB生态中一款强大的数据迁移工具,它专注于实现TiDB增量数据的实时同步。通过解析上游TiKV的数据变更日志,TiCDC能够将有序的行级变更数据输出到下游系统,确保数据的实时性和一致性。本文将深入探讨TiCDC的原理、架构、应用场景以及使用方式,帮助读者更好地理解和应用这一工具,实现高效的数据迁移和同步。
|
6天前
|
算法 Java 测试技术
性能工具之代码级性能测试工具ContiPerf
【2月更文挑战第23天】性能工具之代码级性能测试工具ContiPerf
277 1
性能工具之代码级性能测试工具ContiPerf
|
6天前
|
SQL 架构师 大数据
提升企业级数据处理效率!3.0 系列版本的四个集群优化点详解
为了帮助企业更好地进行大数据处理,我们在此前 TDengine 3.x 系列版本中进行了几项与集群相关的优化和新功能开发,本文将对这几项重要优化进行详细阐述。
47 0
|
10月前
|
JSON 算法 前端开发
YODA倚天应用迁移神器,让跨架构应用迁移变得简单高效
YODA(Yitian Optimal Development Assistant,倚天应用迁移工具)旨在帮助用户更加高效、便捷地实现跨平台、跨结构下的应用迁移,大幅度缩短客户在新平台上端到端性能验证所需的人力和时间,使得客户更加专注于应用本身算法的优化,协同客户实现降本增效。
|
9月前
|
SQL Cloud Native 数据管理
稳定高效!NineData x SelectDB 完成产品兼容互认证
NineData与实时数据仓库厂商SelectDB完成产品兼容互认证,实现了软件相互兼容、功能完善、运行稳定且性能优异。双方将持续助力数据管理与大数据分析业务的融合,帮助企业实现数字化转型,提高效率、降低成本,并满足客户业务需求。SelectDB成立于2022年初,团队来自知名互联网和云计算公司,核心产品是基于Apache Doris内核的实时数据仓库。NineData是新一代的云原生智能数据管理平台,提供数据复制、SQL开发、数据备份和数据对比等功能,帮助用户统一管理混合云和多云数据源。合作将提供高效、安全的数据开发和实时数据同步解决方案,推动数据产业的创新升级。
97 0
稳定高效!NineData x SelectDB 完成产品兼容互认证
|
存储 SQL JSON
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!下
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!下
|
存储 JavaScript 小程序
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!上
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!上
|
存储 SQL Oracle
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!(1)
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!
1862 0
|
存储 SQL JSON
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!(2)
阿里又开源一款数据同步工具 DataX,稳定又高效,好用到爆!
355 0