请教:10万次处理,一个事务和十万个事务,在数据库端有什区别?

net_morning 2017-01-25 08:12:54
为了数据完整性,一个事务可以回滚。如果不理会这个要求,提交十万次和提交一次,对于数据库在说,有什么明显的优势区别?
...全文
433 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdsnhan 2017-02-07
  • 打赏
  • 举报
回复
为保证事务的一致性,选择一次提交或一次回滚,当然这要基于业务考虑。 很多人说,中间提交可以加快效率,这是没有理论依据。 提交与回滚只是更改数据的逻辑状态,而非物理状态。数据量稍大一些,本身已经写入磁盘了。 楼主可以建立一个空的表空间,插入10万条数据,别提交,查看数据文件的占用,你会发现,没有提交时,数据已经写进去了。
saidsia 2017-02-06
  • 打赏
  • 举报
回复
会影响sql执行效率,跟redo有关,commit一次就进行一次写日志操作,频繁的进行i/o肯定会影响数据库
小灰狼W 2017-01-26
  • 打赏
  • 举报
回复
数据库层面来说,如果这十万次dml操作涉及的blocks不是特别多(超过buffer cache的1/10),两者的区别并不大 事务的控制主要还是看业务的需求
卖水果的net 2017-01-25
  • 打赏
  • 举报
回复
假定张三要还欠李四的一万元。用现金 一次一条就是每次还一元,李四记录着:还欠我9999,9998,9997…10,…5,4,3,2,1,好的,不欠了。 一次一万条,就是这是一万,好的不欠了。

17,377

社区成员

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

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