关于批量插入数据之我见(100万级别的数据,mysql)
来源:互联网 发布:三狼三羊过河 算法 编辑:程序博客网 时间:2024/05/16 19:22
转自:http://blog.csdn.net/frinder/article/details/38830723
因前段时间去面试,问到如何高效向数据库插入10万条记录,之前没处理过类似问题,也没看过相关资料,结果没答上来,今天就查了些资料,总结出三种方法:
测试数据库为MySQL!!!
方法一:
输出时间:cast : 23 ms
该方法目前测试是效率最高的方法!
方法二:
注:注释就没有了,和上面类同,下面会有分析!
控制台输出:cast : 111 ms
执行时间是上面方法的5倍!
方法三:
该方法采用的是spring batchUpdate执行,因效率问题,数据量只有1万条!
执行时间:cast : 387 ms
总结:方法一和方法二很类同,唯一不同的是方法一采用的是“insert into tb (...) values(...),(...)...;”的方式执行插入操作,
方法二则是“insert into tb (...) values (...);insert into tb (...) values (...);...”的方式,要不是测试,我也不知道两者差别是如此之大!
当然,这个只是目前的测试,具体执行时间和步长也有很大关系!如过把步长改为100,可能方法就要几分钟了吧,这个可以自己测试哈。。。
方法三网上很推崇,不过,效率大家也都看到了,1万条记录,耗时6分钟,可见其效率并不理想!而且方法三需要配置spring applicationContext环境才能应用!
不过,方法三在ssh/spring-mvc中可用性还是很高的!
刚才开始研究大数据方面的问题,以上也只是真实测试的结果,并不一定就是事实,有好的建议,大家请指正,谢谢!
相互学习,才能进步更快!
晚点会把源码发上来,大家可以直接去下载测试!
- 关于批量插入数据之我见(100万级别的数据,mysql)
- 关于批量插入数据之我见(100万级别的数据,mysql)
- 关于批量插入数据之我见(100万级别的数据,mysql)
- 关于批量插入数据之我见(100万级别的数据,mysql)
- 关于批量插入数据之我见(100万级别的数据,mysql)
- 关于批量插入数据(100万级别的数据,mysql)
- mysql100万级别的数据批量插入
- 关于批量插入数据
- 插入千万级别的Mysql数据
- mysql批量插入数据
- mysql批量插入数据
- mysql--批量插入数据
- mysql 批量插入数据
- MySQL批量插入数据
- MYSQL批量插入数据
- mysql批量插入数据
- mysql批量插入数据
- JDBC 批量插入Mysql 字段值采用随机字符 100万条数据
- Opencv的异常处理方式
- 关于 wamp 里面的那些坑
- android 微信、支付宝支付踩坑之旅
- Unity NGUI UISprite
- 将中缀表达式转化为后缀表达式
- 关于批量插入数据之我见(100万级别的数据,mysql)
- 第一次写博客
- NOIP2016普及组第三题——海港
- BZOJ 2783: [JLOI2012]树
- JavaScript高级程序设计11--事件
- 敏捷其实很简单(11)从站会开始
- Unity NGUI UIPanel和DrawCall
- scala 学习(三)——Array和ArrayBuffer
- 大数相乘