在spring的hibernate中批量插入百万条数据

caiterry 2009-07-02 12:06:27
现在有这个需求,批量插入上百万数据,有没有好的性能的方法。请大家帮帮忙,网上有些事可以解决问题的,但是我觉得效率不会很高。期待!!!!
...全文
1210 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
淡定的峰哥 2009-07-11
  • 打赏
  • 举报
回复
数百万的数据是存在于数据库中吧
如果是同一个数据库,用存储过程跑批,insert into **** select *** from ***
如果不是同一数据库,先把源数据导出成文件,再导入到目标数据库,还是跑批
都是在数据库端实现,java只是开启这个线程而已,一般在闲时跑批,如零点
New_Mao_Er 2009-07-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yys79 的回复:]
这种东西实际上应该用存储过程来做,hibernate实际上不是干这个用的,它的作用是把数据操作对象化,百万条数据一次性处理,对于hibernate额外开销实在太大。
[/Quote]

是的。百W 的数据,你有没有想过它的效率啊,
有一个以前别人用过的方法,就是用C+java来做。这样行得通效率提高也明显。前提是把他们处理好
joe_zhjiang 2009-07-11
  • 打赏
  • 举报
回复
要效率就是最基本的jdbc
bolink5 2009-07-11
  • 打赏
  • 举报
回复
我也碰到LZ这样的问题啊
高人回答下啊
samkuang 2009-07-03
  • 打赏
  • 举报
回复
在系统不繁忙时分批处理。
qq707472 2009-07-03
  • 打赏
  • 举报
回复
要效率 直接用jdbc 的
haowang21 2009-07-03
  • 打赏
  • 举报
回复
插入上百万跳数据用Hibernate就要创建上百万个对象.想想这性能能上去吗,做这种操作还是直接用JDBC好了
wind_rosebush 2009-07-03
  • 打赏
  • 举报
回复
hibernate就是开销太大,不建议lz用
liupete 2009-07-03
  • 打赏
  • 举报
回复
直接在程序中写数据库脚本。
nike911 2009-07-03
  • 打赏
  • 举报
回复
这样的操作肯定不行,别说你用程序了,就算你在数据库一端,插入上万条记录,数据库都扛不住,建议你写个JOB,压力小的时候自动执行插入,可以分批插入!我的建议就是在数据库端执行这样的操作,这样负载才可以小点,具体你的情况我就不清楚了!
anhy 2009-07-03
  • 打赏
  • 举报
回复
我觉得如此大量操作,还不如用Spring自带JdbcTemplate的
doweb 2009-07-03
  • 打赏
  • 举报
回复
做小批量处理,比如一百条一百条的请求再处理,否则这么大数据量内存难以承受了会溢出~
loveunittesting 2009-07-03
  • 打赏
  • 举报
回复
这种东西实际上应该用存储过程来做,hibernate实际上不是干这个用的,它的作用是把数据操作对象化,百万条数据一次性处理,对于hibernate额外开销实在太大。
bdceo 2009-07-02
  • 打赏
  • 举报
回复
在spring的hibernate中??
不理解你的意思,最终还是用的hibernate的API吧?
大数据量的批处理,最好采用flush。
不过说真的,hibernate最不适合你这样的操作了!
caiterry 2009-07-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdceo 的回复:]
在spring的hibernate中??
不理解你的意思,最终还是用的hibernate的API吧?
大数据量的批处理,最好采用flush。
不过说真的,hibernate最不适合你这样的操作了!
[/Quote]

就是使用的是spring中的HibernateDaoSupport,不知你是否有好的方法给介绍一下,谢谢了!

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧