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

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

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

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

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

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

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

主键:1 - 10 毫秒

唯一索引:10 - 100 毫秒

非唯一索引:100 - 1000 毫秒

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

相关推荐
FREEDOM_X9 分钟前
Linux 多线程编程——总结
java·linux·运维·ubuntu
tmlx3I08118 分钟前
Tomcat的架构设计和启动过程详解
java·tomcat
weixin_4223293126 分钟前
AgentScope Java 项目入门 & Builder 深度解读
java·开发语言·人工智能
shepherd12630 分钟前
一次把 Spring MVC 文件上传参数“查没了”的排查:multipart、Filter 与 request body 的连环坑
java·后端·spring·mvc
宠友信息40 分钟前
Spring Boot与异步审核构建仿小红书源码内容发布全流程
java·数据库·spring boot·redis·mysql·oracle·uni-app
Listen·Rain1 小时前
Springboot整合RedisStack
java·spring boot·redis
杨运交1 小时前
[046][Crypto模块]Spring Boot 自动配置进阶:按需装配加解密处理器
spring boot
花和满楼1 小时前
K8s 1.36 ImageVolume GA:OCI 镜像不再只能跑容器
java·容器·kubernetes
头茬韭菜1 小时前
3.9 成本预警 — 退出钩子、$5 阈值对话框与多通道成本通知
java·大数据·jvm·ai
重庆小透明1 小时前
今日收获(一些个人思考)
java·spring·大模型·springai·prompt注入