oracle 临时表的 效率

转载网上搜的总结 有点启发
问题总结:
临时表 物理表 以及内存表 三个表我都做了10W 次的数据 查询 增加 删除 修改的工作 结论如下:

临时表在各项指标中 均超过内存表以及物理表 无疑是效率最快的! 查询效率 内存表和临时表效率接近,物理表查询效率微慢,增删改 效率 (所耗时间)物理表 > 内存表 > 临时表,
结论为 物理表有详细的日志记录,但效率不高,内存表提高了效率,同样日志也很全,但是要分配KEEP池空间(太大占内存),临时表 效率最高,日志记录较少,可以用作存储过程缓存数据使用,缺点就是,还是要占用大量的IO读写操作,效率并没有什么质的飞跃(时间缩短较物理表缩短1半),慎用!无论是事务还是会话型 都要清空数据 所以生命周期有限,使用时需特别注意!

补充一点,临时表比普通表好的重点不在于不产生redo log,而是可以避免在大数据量操作的时候,不用临时表的单个查询会将大量数据直接读进内存,往往造成内存不够用,此时系统会将数据部分存储在磁盘上,这样会不停的在内存和磁盘上进行数据交换,这个操作会极大的影响效率,比单纯的读I/O更加浪费时间。
所以在进行大数据量操作的时候,一般建议用临时表,如果数据量比较小,在保证正确执行计划的前提下临时表的确没什么大作用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值