架构设计 - MySQL 插入数据性能优化策略

mysql 数据库提高数据插入效率主要可以考虑以下方面:

  • 使用批量插入数据的 SQL 语句,避免使用 for 循环逐条记录插入。

  • 所有插入语句共用一个事务,避免1条SQL语句开1个事务,所有操作都完成后再提交事务。

  • 尽量按照索引递增顺序插入记录,以避免频繁的调整索引。

  • 控制事务大小。插入的数据量不要超过 innodb_log_buffer_size 配置属性的值,超过这个值会导致 InnoDB 把数据刷到磁盘中,进而影响插入效率。如果数据量太大,可以将大数据插入操作拆分成多个较小的事务。

MySQL 的数据 CRUD 操作性能指标:(以千万级别数据为例)

主键:1 - 10 毫秒

唯一索引:10 - 100 毫秒

非唯一索引:100 - 1000 毫秒

无索引:百万条数据 1000+ 毫秒

相关推荐
香吧香15 分钟前
Spring boot 中 CommandLineRunner 在服务启动完成后自定义执行
java·spring boot·spring cloud
一 乐15 分钟前
美食推荐|基于springboot+vue的美食分享系统设计与实现(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·美食
浓墨染彩霞20 分钟前
Java-----多线路
java·经验分享·笔记
清晓粼溪21 分钟前
SpringMVC02:扩展知识
java·后端·spring
曹牧22 分钟前
Java String[] 数组的 contains
java·开发语言·windows
星环处相逢25 分钟前
MySQL MHA 全解析与实战部署指南
数据库·mysql
qq_124987075327 分钟前
基于springboot+vue+mysql的校园博客系统(源码+论文+部署+安装)
java·vue.js·spring boot·mysql·毕业设计
魂梦翩跹如雨29 分钟前
P8752 [蓝桥杯 2021 省 B2] 特殊年份——Java解答
java·蓝桥杯
谷哥的小弟32 分钟前
Spring Framework源码解析——Ordere
java·后端·spring·源码
浩瀚地学36 分钟前
【Java】String
java·开发语言·经验分享·笔记·学习