百万级别数据批量插入 MySQL,哪种方式最快?

Mybatis 轻量级框架插入-数据量500W

用时:9.17m

JDBC直接处理-数据量10W

JDBC开启自动提交

用时:13.18m 平均:41s/w

JDBC关闭自动提交

用时:8.955s 平均:0.4s/w

采用JDBC批处理-数据量100W

自动提交

用时:6.981s 平均:0.7s/w

关闭自动提交

用时:6.880s 平均:0.7s/w

JDBC批处理-数据量100W

自动提交

用时:34.329s 平均:2~6s/w

关闭自动提交

用时:33.672s 平均:2~4s/w

总结:

撇去是否开启自动提交事务: 用时: Mybatis>JDBC直接处理>JDBC批处理 同等策略中: JDBC直接处理自动提交>JDBC直接处理关闭自动提交 JDBC批处理-100w级别数据自动提交≈JDBC批处理-100w级别数据关闭自动提交,但是随着数据量的提升: JDBC批处理-500w级别数据自动提交>JDBC批处理-500w级别数据关闭自动提交
经验分享 程序员 微信小程序 职场和发展