分库分表&百亿级数据迁移(3)

简介: 分库分表&百亿级数据迁移

五  总结&反思


本文介绍了菜鸟积分系统拆库&数据迁移整个过程,总结了基于菜鸟现业务下的数据迁移方案,同时介绍了迁移时遇到的问题以及解决方案,整个迁移过程从方案制定到最终的迁移完成持续约一个多月时间,最终完成迁移。无论是利用数据库工具还是利用服务对数据进行迁移,目标都是一致的那就是数据无差异,用户无感知,异常可监控,方案可回滚。下面是自己反思的几个点:

  • 敬畏生产环境,敬畏线上数据,操作数据迁移需要核对仔细校验,迁移数据库表结构以线上数据为准,切勿以日常数据库表结构为准。在迁移前尽可能进行演练,通过一些测试编写的自动化脚本能否高效发现一些潜在的问题。


  • 同时存储是有状态的,迁移难度比较大,开发者需要具备前瞻性,尽量在选型的时候慎重,选择合适的数据库,避免进行数据库迁移。发现数据库选型有潜在的问题时,需要当机立断,尽早迁移。不要以为出现问题的概率不大,就拖延了。否则一旦出现问题,就是重大故障,造成的损失难以估量。


  • 在业务高速发展的同时更应该注重系统的稳定性建设,在对积分系统拆库完成之后在也不用担心积分系统在大促期间性能瓶颈问题了,只有将系统稳定性筑基好,业务才能跑的更健康更快。但是拆库仅仅是使系统变健壮的某一小步,后续系统稳定性建设可能还有更长的路要走。以此为鉴,砥砺前行。


  • 没有过程的结果叫垃圾,没有结果的过程叫放屁,有意义的目标,并且拿到结果,个人认为这才是一个人、一个团队之所以努力工作的根本原因。整体上切库任务重,时间紧,风险高,在与时间赛跑的过程中,虽然难题层出不穷,路途磕磕绊绊,但最终菜鸟积分系统分库分表迁移项目顺利完成,为后续大促服务提供健壮的技术支持。


六  参考资料


[1] TDDL开源Github地址 https://github.com/alibaba/tb_tddl

[2] 阿里愚公开源Github地址 https://github.com/alibaba/yugong

[3] 阿里云DTS产品官网 https://www.aliyun.com/product/dts

相关文章
|
8月前
|
存储 关系型数据库 MySQL
携程面试:100 亿分库分表 如何设计? 核弹级 16字真经, 让面试官彻底 “沦陷”,当场发offer!
携程面试:100 亿分库分表 如何设计? 核弹级 16字真经, 让面试官彻底 “沦陷”,当场发offer!
携程面试:100 亿分库分表 如何设计?  核弹级 16字真经, 让面试官彻底 “沦陷”,当场发offer!
|
9月前
|
存储 SQL 算法
阿里面试:每天新增100w订单,如何的分库分表?这份答案让我当场拿了offer
例如,在一个有 10 个节点的系统中,增加一个新节点,只会影响到该新节点在哈希环上相邻的部分数据,其他大部分数据仍然可以保持在原节点,大大减少了数据迁移的工作量和对系统的影响。狠狠卷,实现 “offer自由” 很容易的, 前段时间一个武汉的跟着尼恩卷了2年的小伙伴, 在极度严寒/痛苦被裁的环境下, offer拿到手软, 实现真正的 “offer自由”。在 3 - 5 年的中期阶段,随着业务的稳定发展和市场份额的进一步扩大,订单数据的增长速度可能会有所放缓,但仍然会保持在每年 20% - 30% 的水平。
阿里面试:每天新增100w订单,如何的分库分表?这份答案让我当场拿了offer
|
11月前
|
存储 安全 数据安全/隐私保护
深入解析iOS 14隐私保护功能:用户数据安全的新里程碑
随着数字时代的到来,个人隐私保护成为全球关注的焦点。苹果公司在最新的iOS 14系统中引入了一系列创新的隐私保护功能,旨在为用户提供更透明的数据使用信息和更强的控制权。本文将深入探讨iOS 14中的几项关键隐私功能,包括App跟踪透明性、简化的隐私设置以及增强的系统安全性,分析它们如何共同作用以提升用户的隐私保护水平。
667 3
|
Java Windows
IDEA不使用lombok,如何快速生成get和set方法
【11月更文挑战第10天】在 IntelliJ IDEA 中生成 `get` 和 `set` 方法有多种方式:通过菜单操作、使用快捷键或自定义模板。菜单操作包括选择“Code”菜单中的“Generate...”,快捷键为“Alt + Insert”。自定义模板可在“File”->“Settings”->“Editor”->“Code Style”->“Java”中设置。批量生成时,可多选变量一次性生成。
2673 2
|
Java C语言
Java微信语音amr格式转mp3格式
Java微信语音amr格式转mp3格式
|
SQL 监控 大数据
分库分表&百亿级数据迁移(1)
分库分表&百亿级数据迁移
441 0
QGS
|
前端开发 Java easyexcel
Springboot3+EasyExcel由浅入深
Springboot3+EasyExcel由浅入深
QGS
606 1
|
JSON 数据挖掘 API
1688API接口推荐:1688商品列表数据接口
1688API接口推荐:1688商品列表数据接口
|
关系型数据库 MySQL 测试技术
软件测试|MySQL LIKE:深入了解模糊查询
软件测试|MySQL LIKE:深入了解模糊查询
|
缓存 分布式计算 监控
分库分表&百亿级数据迁移(2)
分库分表&百亿级数据迁移
739 0