MYSQL 千万数据速度以及极限测试InnoDb--INSERT 拼接极限(一)

数据结构:


测试目的:找到批量插入数据insert后面values可拼接极限

代码:


引擎:InnoDB

运行结果:

生产第1批20000条数据耗时:0.343秒
InnoDB第1批插入20000条数据耗时39.401秒

执行SQL:


通过执行SQL,可以证明数据插入的方法,确实使用的是insert 后面拼接数据内容的方法。并未报错,说明拼接20000条数据,并没有到达SQL的极限。

下面使用21000条记录:

代码:


结果:


结论:

成功得到结果数据生产第1批21000条数据耗时:0.364秒 InnoDB第1批插入21000条数据耗时42.266秒。说明依然没有到达极限;

下面使用22000条记录:

结果:

显然21000条记录已经到了极限。并且通过之前的数据分析,每条记录的插入都能保证在0.001秒钟执行完成。并且多次测试,总体时间有4秒级差距。此速度是在框架环境下调用框架函数进行的数据批量插入。

下面再看一下,原生SQL插入速度

代码:

结果:

生产第1批20000条数据耗时:0.001秒
InnoDB第1批插入20000条数据耗时0.14秒

可以看到,框架函数再转化为SQL语句的时间+数据生成的时间,极大的影响了数据插入的速度。

猜你喜欢

转载自blog.csdn.net/yuexiage1/article/details/80703338