求大批量数据更新的高效方法


8千多万的数据需要更具业务场景调整下用户的所属学校,已经一天了没有更新完,大佬们有啥高效方法吗?

先看看这个join有没有正常走索引吧,如果走索引不应该这么慢啊

1 个赞

分步骤处理:

  1. 找到你要更新的记录的主键
  2. batch update 这些主键就可以了

需要考虑大事务处理的问题~ 最好是分批次

如果采用 join 的方式,很有可能查询就需要很久…
你可以explain sql 看看这个 查询的执行计划…

看着是走索引的

换了个写法,效率稍微高点了,官方是否在下个版本考虑这个优化

你用的什么版本?

换个思路,把sql拆分一下试试

试试:https://docs.pingcap.com/zh/tidb/dev/dev-guide-paginate-results

只是实现了另外一种分批方式,还是无法自动化批量