Oralce表
普通堆表
缺点:
- 在无需考虑备份,允许不产生日志时普通表操作依然会产生大量的日志,无法节省开销。
- delete操作产生大量日志且无法释放空间,空块(truncate可以释放空间)
- 会有回表(执行计划里出现table access by rowid 。回表:通过索引访问得到表的ROWID,然后根据这些ROWID再去访问表中数据行,就称为回表)
提升查询速度的思路:缩放访问路径,即访问块的个数越少越好
- 索引
- 分区表
全局临时表
全局临时在update、insert、delete操作时仍然会产生日志,但是比普通表少
基于会话的全局临时表:session连接退出后,临时表自动删除记录
基于事务的全局临时表:commit或session连接退出后,临时表自动删除记录
特点:
- 针对不同会话,数据独立,不同的session访问全局临时表,看到的结果不同
- commit 或 session连接退出时 不会产生日志。
分区表
范围分区
列表分区
HASH分区
组合分区
本文探讨了Oracle表的性能瓶颈,如普通堆表的日志问题、索引的应用(包括分区表和全局临时表特性)、以及如何通过减少回表和使用索引提升查询速度。特别关注范围分区、列表分区和HASH分区等分区策略,以及会话和事务级别的全局临时表特性。
6282

被折叠的 条评论
为什么被折叠?



