首页 > 代码库 > Oracle何时commit???
Oracle何时commit???
这是我的第三篇博客~
今天主要说一下数据库commit对执行效率的影响。
聪哥:曾经写800W的数据量的时候,期间commit和最终commit 时间上相差一个多小时。。。具体是不是这样我无从考证,不过好像有点道理~
wangyou:单次50与单条相差不大,但单次1000与单次一条相差就明显了
wangyou2:批量,因为单次会导致频繁的commit,频繁commit会引起Oracle的LGWR进程相关性能问题.但是批量也不能太大(比如8W、10W、20W一个批次),会导致undo相关的性能问题。
我的情景:
消息发送引擎,要把A数据库的待发送消息的批次表和明细表抓取出来,然后通过DB直连的方式写入B数据库,由于引擎受限不同与DB_LINK直连,所以目前是引擎先查A数据库,抓取出来1000条,然后再以insert () values ()的形式写进去,加上两个数据库一个在上海一个在北京,所以特别慢?
我的思路:1.先排查是否有commit的操作;2.如果可以直接两个数据库直连,采用 insert () select ...from A的形式。
各位读者如果有好的方法可以提下,后续现场的处理进展我会及时更新上来。
Oracle何时commit???
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。