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

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

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

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

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

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

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

主键:1 - 10 毫秒

唯一索引:10 - 100 毫秒

非唯一索引:100 - 1000 毫秒

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

相关推荐
kkk哥12 小时前
weixin121作品集展示微信小程序
java·mysql·微信小程序·ssm·b/s架构·作品集展示微信小程序
We Just Keep growing12 小时前
【MySQL进阶篇】—— 视图、存储过程、存储函数、触发器
数据库·mysql
码界索隆13 小时前
Python转Java系列:前言
java·开发语言·python
蓦然回首却已人去楼空13 小时前
【分词:中文分词】BPE字节级分词算法实现汉字表达!
java·算法·中文分词
asdfg125896313 小时前
一文理解Java中的泛型
java·开发语言
飞翔中文网13 小时前
Java学习笔记之反射
java·笔记·学习
河阿里13 小时前
Spring Boot:整合Quartz集群部署指南
java·spring boot·后端
小肥君13 小时前
gpu安装milvus问题解决
java·eureka·milvus
梦想的颜色13 小时前
MySQL 数据存储结构与查询执行生命周期深度解析
运维·数据结构·数据库·mysql·线程·优化
砍材农夫13 小时前
物联网实战:Spring Boot MQTT | 模拟器Paho客户端拆解高性能
java·javascript·spring boot·后端·物联网·struts