首页 > 其他 > 详细

分库分表

时间:2019-05-06 01:06:38      阅读:121      评论:0      收藏:0      [点我收藏+]

数据库分库分表思路

精尽【分库分表】面试题

迁移到分库分表方式

一般来说,会有三种方式:

  • 1、停止部署法。
  • 2、双写部署法,基于业务层。
  • 3、双写部署法,基于 binlog 。

具体的详细方案,可以看看如下两篇文章:

分库分表后数据迁移问题

  1. 双写 以老库为主。读操作还是读老库老表,写操作是双写到新老表。
  2. 历史数据迁移 dts + 新数据对账校验(job) + 历史数据校验。
  3. 切读:读写以新表为主,新表成功就成功了。
  4. 观察几天 下掉写老库操作。

分布式事务解决

目前市面上,分布式事务的解决方案还是蛮多的,但是都是基于一个前提,需要保证本地事务。那么,就对我们在分库分表时,就有相应的要求:数据在分库分表时,需要保证一个逻辑中,能够形成本地事务。举个例子,创建订单时,我们会插入订单表和订单明细表,那么:

  • 如果我们基于这两个表的 id 进行分库分表,将会导致插入的记录被分到不同的库表中,因为创建下单可以购买 n 个商品,那么就会有 1 条订单记录和 n 条 订单明细记录。而这 n 条订单明细记录无法和 1 条订单记录分到一个库表中。
  • 如果我们基于这两个表的 user_id 进行分库分表,那么插入的记录被分到相同的库表中。

 

分库分表

原文:https://www.cnblogs.com/fanguangdexiaoyuer/p/10817067.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!