设为首页 加入收藏

TOP

关于批量写入数据库的问题
2014-11-24 00:44:31 来源: 作者: 【 】 浏览:9
Tags:关于 批量 写入 数据库 问题
关于批量写入 数据库的问题
今天上午写个程序要将几张表内的数据读出写入一张表(2w多数据),开始没有使用批处理(每条写入都自动commit),写入速度在分钟级(太慢了后来就没计时),后来添加了批处理(不自动commit),全部用时20多秒。可见批处理写入数据库要快很多。程序大致结构如下:
Java代码 www.2cto.com
EntityManager em = JPA.em();
em.setFlushMode(FlushModeType.COMMIT);
for(int i=0;i<20000;i++){
MaterialInfo mi = new MaterialInfo();
//set...
em.persist(mi);
if(i%BATCH_SIZE==0){
em.flush();
}
}
上面的BATCH_SIZE我设置的是100,即每100条数据提交一次。
作者 shensy
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇TIME_WAIT引起Cannot assign requ.. 下一篇sqlite3简单命令操作

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: